model posion - rhqaq/paper_reading GitHub Wiki

FLDetector: Defending Federated Learning Against Model Poisoning Attacks via Detecting Malicious Clients

背景

  • 联邦学习是多个用户参与的活动,很容易面临恶意用户的问题,本文关注的是恶意用户带来的模型中毒问题(model poisoning attack)
  • 过去的工作主要有两类,一类是拜占庭式防御,一类是找出恶意用户并删去。第一类的不足就是无法直接找出恶意用户,在恶意用户规模较大时失效。第二类方面目前还需要引入一个参考数据集,这对于联邦学习很多场景是很难做到的。

贡献

  1. We perform a systematic study on defending FL against model poisoning attacks via detecting malicious clients.
  2. We propose FLDetector, an unsupervised method, to detect malicious clients via checking the consistency between the received and predicted model updates of clients.
  3. 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

攻击方法

实验结果

  • 评价指标
  • 和其他防御方法在识别恶意用户效果上,我们提出的方法效果最好
  • 在模型学习表现上,我们的方法能达到较好的训练效果

总结

  1. 利用client更新模型的一致性情况来检验恶意用户
  2. 实验表明了方法的优越性
  3. 不足是场景缺少用户的动态加入