model posion - rhqaq/paper_reading GitHub Wiki
FLDetector: Defending Federated Learning Against Model Poisoning Attacks via Detecting Malicious Clients
背景
- 联邦学习是多个用户参与的活动,很容易面临恶意用户的问题,本文关注的是恶意用户带来的模型中毒问题(model poisoning attack)
- 过去的工作主要有两类,一类是拜占庭式防御,一类是找出恶意用户并删去。第一类的不足就是无法直接找出恶意用户,在恶意用户规模较大时失效。第二类方面目前还需要引入一个参考数据集,这对于联邦学习很多场景是很难做到的。
贡献
- We perform a systematic study on defending FL against model poisoning attacks via detecting malicious clients.
- We propose FLDetector, an unsupervised method, to detect malicious clients via checking the consistency between the received and predicted model updates of clients.
- We empirically evaluate FLDetector against multiple state-of-the-art model poisoning attacks and adaptive attacks on three benchmark datasets.
问题假设
- 参与联邦学习的用户数在联邦学习过程中不会增加。
- 参与方拥有本地数据集Di
- 参与方本地训练后将参数更新梯度发送给server,得到每一轮的global model
提出的算法FLDETECTOR
- 基于 Cauchy mean value theorem 得到梯度和参数的转换关系
- 利用L-BFGS算法估算 integrated Hessian Ht
- 基于这个参数和梯度转换关系,假设Hessian在所有client中统一,预测真实的client得到的梯度
- 设计了Suspicious score这一指标,是前N次联邦学习轮次的预测真实梯度和实际梯度的欧几里得距离
- 利用Gap Statistics计算所有的Suspicious score是否能通过k-mean划分成两组,划分两组后,平均s大的组内client都是恶意用户
复杂度分析
- 额外存储复杂度
- 额外计算复杂度,主要取决于p(模型参数数量)
- 额外开销可以接受,不影响client只增加server的负担
理论证明
证明了恶意用户的s期望大于正常用户的s期望
Adaptive Attacks
攻击者可以引入梯度差来正则化他们的攻击模型
实验
数据和模型结构
- MNIST, CIFAR10, and FEMNIST
- MNIST和FEMNIST用图所示模型,CIFAR10用ResNet20
攻击方法
实验结果
- 评价指标
- 和其他防御方法在识别恶意用户效果上,我们提出的方法效果最好
- 在模型学习表现上,我们的方法能达到较好的训练效果
总结
- 利用client更新模型的一致性情况来检验恶意用户
- 实验表明了方法的优越性
- 不足是场景缺少用户的动态加入