个人阅读笔记,如有错误欢迎指出
ICML 2019 [1811.12470] Analyzing Federated Learning through an Adversarial Lens (arxiv.org)
问题:
传统模型攻击容易被服务器通过精度检测以及权重分析检测出来,本文意在找到一种投毒方法绕过服务器的检测。
创新点:
1、提出了一个攻击的评价指标-隐蔽性。主要在于精度上以及权重分布上。
2、提出了以交替最小化公式的攻击方式,以实现攻击的同时尽可能逃过服务器的检测。
实验:
数据集为IID数据
方法:
攻击目标:主任务上尽可能减小影响,后门上实现高精度,并且能够绕过服务器检测。
隐蔽性评价指标:
1、精度检查:服务器在收到更新后,将每个模型更新获取到的新模型与其他所有模型更新得到的模型在精度上进行比较,若低于阈值则服务器判定为攻击者。攻击者为求能够绕过此种防御,必须满足如下:
2、权重更新分布:以当前模型更新与去掉当前模型的其他模型的距离最小值
以及最大值,计算其他模型的距离最小值最大值为上下界,距离最大临界为。攻击者需满足以下要求以绕过检测:
攻击方式:
1、梯度放大:
恶意的训练方首先必须克服其余正常训练方梯度更新的影响以及服务器聚合模型梯度时,对梯度更新缩放的影响,需要对更新的梯度进行放大。攻击者估计聚合器的更新为,则定义,提交的更新为,随后服务器的更新则变为了,本轮更新之后的全局模型的估计值等于恶意训练方的本地模型(模型替换)。
效果:第三轮后主任务以及后门任务的准确率都较高
攻击缺陷:易于被以下检测手段捕获
①精度检测中远低于全局模型
②恶意更新的L2距离分布更稀疏范围也更小,也更尖锐
隐形模型中毒:
1、针对精度损失问题:为了保证攻击方模型在验证集上也有较高的准确度,攻击方在进行本地模型训练的过程中,添加了基于本地正常数据的训练损失函数:
2、针对距离度量问题:限制模型与其他模型的平均模型的欧式距离
实验结果
1、使用隐形模型中毒的攻击方在精确度检测中更难被检测到
2、隐形模型中毒的攻击方的权重更新分布与正常训练方的权重更新分布较为接近
恶意攻击模型的l2距离与其他良性模型的距离较为接近
交替最小化攻击
流程:
1、从当前的模型参数,最小化攻击目标,训练得到一个梯度更新。
2、利用simple boosting的思想对梯度进行增强,与当前的模型参数相加得到中间步骤的模型参数。
3、从所得到的中间步骤的模型参数开始,最小化之前提到的两个隐形目标,最终得到一个新的模型
效果:
1、可以绕过准确性检查方法,因为恶意模型验证数据的准确性接近全局模型。
2、这种攻击的传播距离与良性更新的传播距离非常接近,甚至完全重叠,从而实现了两种属性的完全隐形
对拜占庭聚合机制的攻击效果:
Krum以及Coordinate-wise median:攻击机制对两种聚合方式都有效
使用目标后门的模型投毒使得Krum不收敛
在恶意客户端学习的本地模型也具有高验证精度的交替最小化是无效的
通过估计提高攻击性能
攻击者对其余良性客户端的更新进行估计
估计方法为:攻击者假定自从上一次被选中后所有良性更新都相同,即,当 连续被选中时,则。
1、优化后修正:计算出权重更新后减去一个,若估计值等于实际值且,则这就能抵消其余更新的贡献
2、优化前修正:攻击者从开始计算出更新的权重,而不是从。
使用效果:使用具有优化后修正的攻击在实现对抗性目标方面更有效。使用优化后校正是无效的,导致攻击成功率较低,并影响全局模型收敛。
数据投毒不进行缩放攻击效果有限,进行缩放时影响全局任务的精度,整体而言数据投毒效果比模型投毒差
在一些对模型的解释技术中观测中分不清良性模型以及具有后门的恶意后门的模型的区别。
在多攻击者的实验中会对模型的全局准确率造成影响,但是能够保证模型收敛。
当训练的客户端较多时,并不能保证每次都被选中,但整体上攻击有效,性能稍差。