【论文阅读笔记】Analyzing Federated Learning through an Adversarial Lens

news2024/11/25 0:38:16

个人阅读笔记,如有错误欢迎指出

ICML 2019        [1811.12470] Analyzing Federated Learning through an Adversarial Lens (arxiv.org)

问题:

        传统模型攻击容易被服务器通过精度检测以及权重分析检测出来,本文意在找到一种投毒方法绕过服务器的检测。

创新点:

        1、提出了一个攻击的评价指标-隐蔽性。主要在于精度上以及权重分布上。

        2、提出了以交替最小化公式的攻击方式,以实现攻击的同时尽可能逃过服务器的检测。

实验:

        数据集为IID数据

方法:

        攻击目标:主任务上尽可能减小影响,后门上实现高精度,并且能够绕过服务器检测。

        隐蔽性评价指标:

        1、精度检查:服务器在收到更新后,将每个模型更新获取到的新模型\textbf{w}_i^t = \textbf{w}_G^{t-1} + \delta_i^t​与其他所有模型更新得到的模型\textbf{w}_{G\backslash i}^t = \textbf{w}_G^{t-1} + \sum_i \delta_i^t在精度上进行比较,若低于阈值则服务器判定为攻击者。攻击者为求能够绕过此种防御,必须满足如下:

        2、权重更新分布:以当前模型更新与去掉当前模型的其他模型的距离最小值

        min_{i \in[k] \backslash m} d(\delta_m^t, \delta_i^t)以及最大值max_{i \in[k] \backslash m} d(\delta_m^t, \delta_i^t),计算其他模型的距离最小值R_{min,[k \backslash m]}^l最大值R_{max,[k \backslash m]}^l为上下界,距离最大临界为\kappa _t。攻击者需满足以下要求以绕过检测:

攻击方式:

        1、梯度放大:

        恶意的训练方首先必须克服其余正常训练方梯度更新的影响以及服务器聚合模型梯度时,对梯度更新缩放的影响,需要对更新的梯度进行放大。攻击者估计聚合器的更新为\hat{\textbf{w}}_G^t = \textbf{w}_G^{t-1}+\alpha_m \delta_m^t​,则定义\lambda = \frac{1}{\alpha_m},提交的更新为\delta_m^t = \lambda \widetilde\delta_m^t,随后服务器的更新则变为了\hat{\textbf{w}}_G^t = \textbf{w}_m^t,本轮更新之后的全局模型的估计值等于恶意训练方的本地模型(模型替换)。

        效果:第三轮后主任务以及后门任务的准确率都较高

        攻击缺陷:易于被以下检测手段捕获

        ①精度检测中远低于全局模型

        ②恶意更新的L2距离分布更稀疏范围也更小,也更尖锐

隐形模型中毒:

        1、针对精度损失问题:为了保证攻击方模型在验证集上也有较高的准确度,攻击方在进行本地模型训练的过程中,添加了基于本地正常数据的训练损失函数:

        2、针对距离度量问题:限制模型与其他模型的平均模型的欧式距离

实验结果

1、使用隐形模型中毒的攻击方在精确度检测中更难被检测到

2、隐形模型中毒的攻击方的权重更新分布与正常训练方的权重更新分布较为接近

恶意攻击模型的l2距离与其他良性模型的距离较为接近

交替最小化攻击

流程:

        1、从当前的模型参数,最小化攻击目标,训练得到一个梯度更新。

        2、利用simple boosting的思想对梯度进行增强,与当前的模型参数相加得到中间步骤的模型参数。

        3、从所得到的中间步骤的模型参数开始,最小化之前提到的两个隐形目标,最终得到一个新的模型

效果:

        1、可以绕过准确性检查方法,因为恶意模型验证数据的准确性接近全局模型。

        2、这种攻击的传播距离与良性更新的传播距离非常接近,甚至完全重叠,从而实现了两种属性的完全隐形

对拜占庭聚合机制的攻击效果:

        Krum以及Coordinate-wise median:攻击机制对两种聚合方式都有效

使用目标后门的模型投毒使得Krum不收敛

在恶意客户端学习的本地模型也具有高验证精度的交替最小化是无效的

        通过估计提高攻击性能

        攻击者对其余良性客户端的更新\delta_{[k]\backslash m}^t = \sum_{i \in[k] \backslash m} \alpha_i \delta_i^t进行估计

        估计方法为:攻击者假定自从上一次被选中后所有良性更新都相同,即\hat \delta_{[k] \backslash m}^t = \frac{\textbf{w}_G^t - \textbf{w}_G^{t'} -\delta_m^{t'}}{t-t'},当 连续被选中时,则\hat \delta_{[k] \backslash m}^t = \hat \delta_{[k] \backslash m}^{t-1}​。

                1、优化后修正:计算出权重更新后减去一个\lambda \hat \delta_{[k]\backslash m}^t,若估计值等于实际值\hat\delta_{[k]\backslash m}^t = \delta_{[k]\backslash m}^t\lambda = \frac{1}{\alpha_m}​,则这就能抵消其余更新的贡献

                2、优化前修正:攻击者从\textbf{w}_G^{t-1} + \hat \delta_{[k] \backslash m} ^t开始计算出更新的权重,而不是从\textbf{w}_G^{t-1}​。

        使用效果:使用具有优化后修正的攻击在实现对抗性目标方面更有效。使用优化后校正是无效的,导致攻击成功率较低,并影响全局模型收敛。

        数据投毒不进行缩放攻击效果有限,进行缩放时影响全局任务的精度,整体而言数据投毒效果比模型投毒差

        在一些对模型的解释技术中观测中分不清良性模型以及具有后门的恶意后门的模型的区别。

        在多攻击者的实验中会对模型的全局准确率造成影响,但是能够保证模型收敛。

        当训练的客户端较多时,并不能保证每次都被选中,但整体上攻击有效,性能稍差。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/714426.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Yolov8优化:最新移动端高效网络架构 CloFormer: 注意力机制与卷积的完美融合 | 清华团队2023 即插即用系列

💡💡💡本文属于原创独家改进:引入CloFormer 中的 AttnConv,上下文感知权重使得模型能够更好地适应输入内容。相比于局部自注意力机制,引入共享权重使得模型能够更好地处理高频信息,从而提高性能。 注意力机制与卷积的完美融合 AttnConv | 亲测在多个数据集能够实现…

React 编译之后修改服务地址

编写react 的项目中,我们要调用后台服务的地址,当前后台服务器的地址在是写Axios相关的js文件中, 但是项目我们在yarn build之后,变成了这样: 我们根本没有办法修改相关冯server_address,这样就产生了很大的局限性&…

24JS15——DOM

文章目录 一、DOM简介1、什么是DOM2、DOM树 二、获取元素1、如何获取页面元素2、根据id获取3、根据标签名获取4、通过HTML5新增的方法获取5、获取特殊元素body html 三、事件基础1、事件概述2、事件三要素3、执行事件的步骤 四、操作元素1、改变元素内容2、常用元素的属性操作3…

2017计算机学科夏令营上机考试

目录 A:判决素数个数【水题】 B:编码字符串(string)【水题】 C:岛屿周长(matrix)【深搜或者找规律】 D:Safecracker【深搜或者暴力不水】 E:怪盗基德的滑翔翼【动态规划】 F:Full Tank?【图论最短路/BFS优先队列】 G:实现堆结构 H:Subway(迪杰斯特拉算法&a…

理解ASEMI代理海矽美快恢复二极管SFP3012A的性能与应用

编辑-Z 在电子元件领域,快恢复二极管SFP3012A是一种重要的半导体器件,它在电路设计中扮演着至关重要的角色。本文将深入探讨SFP3012A的性能特点和应用领域,帮助读者更好地理解和使用这种二极管。 一、SFP3012A的性能特点 快恢复二极管SFP301…

4个在Pandas DataFrame中进行元素比较的函数

大家好,Pandas DataFrame是具有标记行和列的二维数据结构。 有时我们需要对两个DataFrame进行逐个元素的比较。例如: 使用另一个DataFrame的值来更新其中的值。 比较数值,并选择较大或较小的值。 本文将介绍四个不同的Pandas函数&#xf…

阿里前端常考vue面试题汇总

大厂面试题分享 面试题库 前后端面试题库 (面试必备) 推荐:★★★★★ 地址:前端面试题库 web前端面试题库 VS java后端面试题库大全 Vuex中actions和mutations有什么区别 题目分析 mutations和actions是vuex带来的两个独特…

MySQL原理探索——22 MySQL有哪些“饮鸩止渴”提高性能的方法

不知道你在实际运维过程中有没有碰到这样的情景:业务高峰期,生产环境的 MySQL 压力太大,没法正常响应,需要短期内、临时性地提升一些性能。 我做项目的时候,就偶尔会碰上这种场景。用户的开发负责人说,不管…

使用“Cocos引擎”创建的cpp工程如何在VS中调试Cocos2d-x源码

前段时间Cocos2d-x更新了一个Cocos引擎,这是一个集合源码,IDE,Studio这一家老小的整合包,我们可以使用这个Cocos引擎来创建我们的项目。 在Cocos2d-x被整合到Cocos引擎之前,我们可以不那么方便地在我们创建的工程里调…

SpringBoot 实现合并表头导出数据 - EasyExcel应用

文章目录 1. 构建实体类2. 导出3. 导入 EasyExcel是一款开源的Java处理Excel文件的工具库,它提供了简单易用的API,可以方便地读取、写入和操作Excel文件。下面是一些常见的EasyExcel应用场景: 读取Excel文件:使用EasyExcel可以轻…

阿里oss实现拖拽上传+二维码链接展示——技能提升

今天遇到一个需求,就是要实现拖拽上传文件,并调用渲染方法,将渲染后的链接通过二维码展示出来。 上一篇文章也是关于拖拽上传,但是接口是通过后端提供的上传方式来实现的,并非是直接调用阿里OSS来直接实现的。 1.拖拽…

月报总结|Moonbeam 6月份大事一览

本月,Moonbeam赢得第44轮Polkadot平行链插槽拍卖,在未来两年内都将保持活跃! 历时一个多月Moonbeam Bear Necessities Hackathon仍在如火如荼地进行着,从深入研究赛题的Workshop到解答疑惑的Office Hours,黑客松让BUI…

代码随想录算法训练营第七天 | 字符串基础系列1(反转字符串--反转字符串II--替换空格--反转字符串中的单词)

字符串基础系列1 344 反转字符串我的代码代码随想录的代码力扣的示例代码 541 反转字符串II我的代码代码随想录的代码力扣的示例代码 剑指offer-05 替换空格我的代码代码随想录的代码力扣的示例代码 151 反转字符串中的单词我的代码代码随想录的代码力扣的示例代码 一段用于复制…

电子时钟制作(瑞萨RA)(6)----配置RTC时钟及显示时间

概述 本文将详细讲解如何借助e2studio来对瑞萨微控制器进行实时时钟(RTC)的设置和配置,以便实现日历功能和一秒钟产生的中断,从而通过串口输出实时数据。 实时时钟(RTC)模块是一种时间管理外设&#xff0c…

部署深度学习APP的经历(docker,streamlit cloud,nuitka)

部署深度学习APP的经历 最近,接到一个部署深度学习APP的需求,这个APP使用torch、monai和pydicom等库构建了一个识别CT图像中皮下脂肪、内脏脂肪和骨骼肌,输入是CT图像,输出是识别的图像和相关数据。接手的时候,核心的算…

matlab将数据写入到excel中

第一种: 将数据转化为cell块,从A1单元格写起 % xlswrite(info_10*2.xls ,sheet1,B2:B4) clear; clc; a[1 2 3 4 5 6 ];%三组数据 b[11 22 33 44 55 66]; c[12 23 34 45 56 61]; data [a b c];%把数据保存到data中,其中a的表示转置 [m p]si…

PHP:提交表单之后出现本页面刷新的情况,导致路径参数消失

问题: 提交表单前 提交表单后 刷新之后,参数消失 解决办法 在提交表单的方法中写入代码携带参数的代码 样例: 实施 header(Location: table_detial.php?table_name.$table_name.);

Java Web JavaScript (2)23.7.2

5,BOM BOM:Browser Object Model 浏览器对象模型。也就是 JavaScript 将浏览器的各个组成部分封装为对象。 我们要操作浏览器的各个组成部分就可以通过操作 BOM 中的对象来实现。比如:我现在想将浏览器地址栏的地址改为 https://www.itheim…

m4a音频格式转换器:让音频轻松换装

大家有没有遇到这样的情况——你下载了一个很酷的音频文件,但是播放设备却说“不认识”这个格式?别担心!现在有个超级厉害的工具可以帮你解决这个问题,它就是m4a音频格式转换器!它能让你的音频文件变身,适应…

Java--基于Swing的登录界面

运行结果: 代码: import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener;public class ljt2 {public static void main(String[] args) {// 创建窗体JFrame frame new JFrame("学生信息管理系统");f…