如何对联邦学习进行后门攻击?

时间:2024-05-23 20:47:44

如何对联邦学习进行后门攻击?

后门攻击:针对训练进行攻击,同时其他训练正常进行。如:只将绿色的车识别为鸟,其他颜色的车预测结果都正常。可以攻击模型的同时保持高准确率。

  1. 定向攻击和模型攻击
  2. 只需控制联邦学习中几个参与者即可实现攻击

 

文中提出联邦学习中云服务器端有安全聚合协议,规定云服务器没有权利检查各个客户端的模型更新进度。

客户端:

如何对联邦学习进行后门攻击?

由于联邦学习场景中参与联合训练的客户端数量上千,且客户端异构性较大,所以一些客户端训练出的较差的模型参数也不能丢掉,所以对异常检测来说较难区分出受攻击和未受攻击的模型,且很难准确找出攻击者。

但后门攻击的模型可能随着平均聚合,效果减弱甚至抵消。且攻击者控制的节点不一定没次都被选中参与训练。造成全局模型很快就忘记后门攻击的存在。

 

模型替换:将恶意的全局模型X替代新的全局模型G^(t+1):

如何对联邦学习进行后门攻击?

本地数据与全局数据非独立同分布,本地模型可能远离目前的全局模型。全局模型收敛是,这些偏差开始抵消,因此,控制后门攻击模型的比重:

如何对联邦学习进行后门攻击?

权重缩放为γ=n/η,以确保后门在平均化中能够存活,最终导致全局模型被 X 取代。

 

改善持久性并规避异常检测:

本文提出的攻击实际上是一种双任务学习,即全局模型在正常训练时学习主任务,而后门任务只在攻击者被选中的回合中学习主任务。该双任务学习的目标是在攻击者的回合后仍然保持这两个任务学习的高准确率。

攻击者使用这种方法创建一个看起来不异常的模型,然后用其他参与者的模型平均后替换全局模型。

如何对联邦学习进行后门攻击?

通过添加异常检测项 L_ano 来修改目标(损失)函数:

攻击者的训练数据同时包括正常输入和后门输入,因此 L_class 能够同时兼顾主要任务和后门任务的准确性。L_ano 可以是任何类型的异常检测,例如权重矩阵之间的 p 范数距离或更高级的权重可塑性惩罚。超参数α控制回避异常检测的重要程度。