ICLR 2024 | 联邦学习后门攻击的模型关键层

2024-04-07 04:20

本文主要是介绍ICLR 2024 | 联邦学习后门攻击的模型关键层,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

    ChatGPT狂飙160天,世界已经不是之前的样子。
新建了免费的人工智能中文站https://ai.weoknow.com
新建了收费的人工智能中文站https://ai.hzytsoft.cn/

更多资源欢迎关注


联邦学习使多个参与方可以在数据隐私得到保护的情况下训练机器学习模型。但是由于服务器无法监控参与者在本地进行的训练过程,参与者可以篡改本地训练模型,从而对联邦学习的全局模型构成安全序隐患,如后门攻击。

本文重点关注如何在有防御保护的训练框架下,对联邦学习发起后门攻击。本文发现后门攻击的植入与部分神经网络层的相关性更高,并将这些层称为后门攻击关键层。

基于后门关键层的发现,本文提出通过攻击后门关键层绕过防御算法检测,从而可以控制少量的参与者进行高效的后门攻击。

图片

论文题目:Backdoor Federated Learning By Poisoning Backdoor-Critical Layers

论文链接:https://openreview.net/pdf?id=AJBGSVSTT2

代码链接:https://github.com/zhmzm/Poisoning_Backdoor-critical_Layers_Attack

方法

图片

本文提出层替换方法识别后门关键层。具体方法如下:

  • 第一步,先将模型在干净数据集上训练至收敛,并保存模型参数记为良性模型

    图片

    。再将良性模型的复制在含有后门的数据集上训练,收敛后保存模型参数并记为恶意模型

    图片

  • 第二步,取良性模型中一层参数替换到包含后门的恶意模型中,并计算所得到的模型的后门攻击成功率

    图片

    。将得到的后门攻击成功率与恶意模型的后门攻击成功率 BSR 做差得到 △BSR,可得到该层对后门攻击的影响程度。对神经网络中每一层使用相同的方法,可得到一个记录所有层对后门攻击影响程度的列表。

  • 第三步,对所有层按照对后门攻击的影响程度进行排序。将列表中影响程度最大的一层取出并加入后门攻击关键层集合

    图片

    ,并将恶意模型中的后门攻击关键层(在集合

    图片

    中的层)参数植入良性模型。计算所得到模型的后门攻击成功率

    图片

    。如果后门攻击成功率大于所设阈值 τ 乘以恶意模型后门攻击成功率

    图片

    ,则停止算法。若不满足,则继续将列表所剩层中最大的一层加入后门攻击关键层

    图片

    直到满足条件。

在得到后门攻击关键层的集合之后,本文提出通过攻击后门关键层的方法来绕过防御方法的检测。除此之外,本文引入模拟聚合和良性模型中心进一步减小与其他良性模型的距离。

实验结果

本文对多个防御方法在 CIFAR-10 和 MNIST 数据集上验证了基于后门关键层攻击的有效性。实验将分别使用后门攻击成功率 BSR 和恶意模型接收率 MAR(良性模型接收率 BAR)作为衡量攻击有效性的指标。

首先,基于层的攻击 LP Attack 可以让恶意客户端获得很高的选取率。如下表所示,LP Attack 在 CIFAR-10 数据集上得到了 90% 的接收率,远高于良性用户的 34%。

图片

然后,LP Attack 可以取得很高的后门攻击成功率,即使在只有 10% 恶意客户端的设定下。如下表所示,LP Attack 在不同的数据集和不同的防御方法保护下,均能取得很高的后门攻击成功率 BSR。

图片

在消融实验中,本文分别对后门关键层和非后门关键层进行投毒并测量两种实验的后门攻击成功率。如下图所示,攻击相同层数的情况下,对非后门关键层进行投毒的成功率远低于对后门关键层进行投毒,这表明本文的算法可以选择出有效的后门攻击关键层。

图片

除此之外,我们对模型聚合模块 Model Averaging 和自适应控制模块 Adaptive Control 进行消融实验。如下表所示,这两个模块均对提升选取率和后门攻击成功率,证明了这两个模块的有效性。

图片

    ChatGPT狂飙160天,世界已经不是之前的样子。
新建了免费的人工智能中文站https://ai.weoknow.com
新建了收费的人工智能中文站https://ai.hzytsoft.cn/

更多资源欢迎关注


这篇关于ICLR 2024 | 联邦学习后门攻击的模型关键层的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/881630

相关文章

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

详解如何使用Python从零开始构建文本统计模型

《详解如何使用Python从零开始构建文本统计模型》在自然语言处理领域,词汇表构建是文本预处理的关键环节,本文通过Python代码实践,演示如何从原始文本中提取多尺度特征,并通过动态调整机制构建更精确... 目录一、项目背景与核心思想二、核心代码解析1. 数据加载与预处理2. 多尺度字符统计3. 统计结果可

SpringBoot整合Sa-Token实现RBAC权限模型的过程解析

《SpringBoot整合Sa-Token实现RBAC权限模型的过程解析》:本文主要介绍SpringBoot整合Sa-Token实现RBAC权限模型的过程解析,本文给大家介绍的非常详细,对大家的学... 目录前言一、基础概念1.1 RBAC模型核心概念1.2 Sa-Token核心功能1.3 环境准备二、表结

重新对Java的类加载器的学习方式

《重新对Java的类加载器的学习方式》:本文主要介绍重新对Java的类加载器的学习方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、介绍1.1、简介1.2、符号引用和直接引用1、符号引用2、直接引用3、符号转直接的过程2、加载流程3、类加载的分类3.1、显示

springboot实现配置文件关键信息加解密

《springboot实现配置文件关键信息加解密》在项目配置文件中常常会配置如数据库连接信息,redis连接信息等,连接密码明文配置在配置文件中会很不安全,所以本文就来聊聊如何使用springboot... 目录前言方案实践1、第一种方案2、第二种方案前言在项目配置文件中常常会配置如数据库连接信息、Red

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

Spring Security基于数据库的ABAC属性权限模型实战开发教程

《SpringSecurity基于数据库的ABAC属性权限模型实战开发教程》:本文主要介绍SpringSecurity基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大... 目录1. 前言2. 权限决策依据RBACABAC综合对比3. 数据库表结构说明4. 实战开始5. MyBA

Java的IO模型、Netty原理解析

《Java的IO模型、Netty原理解析》Java的I/O是以流的方式进行数据输入输出的,Java的类库涉及很多领域的IO内容:标准的输入输出,文件的操作、网络上的数据传输流、字符串流、对象流等,这篇... 目录1.什么是IO2.同步与异步、阻塞与非阻塞3.三种IO模型BIO(blocking I/O)NI

基于Flask框架添加多个AI模型的API并进行交互

《基于Flask框架添加多个AI模型的API并进行交互》:本文主要介绍如何基于Flask框架开发AI模型API管理系统,允许用户添加、删除不同AI模型的API密钥,感兴趣的可以了解下... 目录1. 概述2. 后端代码说明2.1 依赖库导入2.2 应用初始化2.3 API 存储字典2.4 路由函数2.5 应