【论文阅读笔记】DeepSight: Mitigating Backdoor Attacks in Federated Learning Through Deep Model Inspection

DeepSight是一种新方法,通过深度模型检查和过滤策略来识别和缓解联邦学习中的后门攻击。它通过分析模型输出标签的同质性、神经元更新能量和阈值超出度量来区分中毒模型和良性模型。此外,还使用聚类算法来增强过滤效果,并通过裁剪和聚合策略减少攻击影响。实验表明,DeepSight在NLP和NIDS任务上能有效抵御后门攻击,且性能优于当前SOTA方法。
摘要由CSDN通过智能技术生成

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

会议:2022 NDSS [2201.00763] DeepSight: Mitigating Backdoor Attacks in Federated Learning Through Deep Model Inspection (arxiv.org)

问题:现存的针对联邦学习后门攻击的策略是从聚合中剔除偏离模型,但是这样也会剔除掉分布差异较大的良性客户端,使得这类良性客户端在聚合中表现不佳。

创新:

  • 整体思路:识别具有高攻击性的模型并对其进行裁剪,对攻击性较低的可疑模型降低其在聚合过程中的权重
  • 提出了一种新的过滤方法,该方法进行了深度模型检查,并与剪切相结合,以识别目标中毒攻击
  • 提出了一种结合分类器和基于聚类的相似性估计的投票的模型过滤方案,单独的标签被用来识别具有恶意模型更新的集群,这样不仅使用模型的标签,还使用类似模型的标签来决定接受或拒绝模型更新,防止了具有偏离数据分布的良性客户端的模型被过滤
  • 提出了阈值超出度量,该度量分析模型输出层的参数更新,以测量其训练数据的同质性,通过这个度量来构建标记模型是良性or可疑的分类器
  • 设计聚类算法来识别具有相似训练数据的模型更新,通过相似性估计支持分类器
  • 提出了两种用于测量神经网络结构和输出细粒度差异的方法:第一种侧重于模型预测输出的变化,第二种测量神经网络输出层参数更新的变化。第一个在联邦学习中使用模型、预测和单个神经元的深度分析来减轻中毒攻击的工作

解决的挑战性问题:     

  • 如何区分中毒模型和基于不同数据训练的良性模型。
  • 如何纠缠于后门性能,使得A绕过基于这些技术的方案的唯一方法是降低后门性能。
  • 如何在不知道确切数据的情况下使技术普遍适用。例如,对于NIDS场景,无论模型是分析IP摄像头还是智能传感器的网络流量,都不应该有什么不同。
  • 如何确保高精度,防止良性模型被错误排除。
  • 如何将各个技术有地结合到动态防御方案中,它可以动态地适应攻击。因此,除非A克服了每一种技术,否则该方案不会被破坏,也不会出现误报。

思路来源:如果模型更新在所使用的训练数据中具有很强的焦点(如果很少有标签出现的频率明显高于所有其他标签),则分类器认为该更新是中毒的

方法:

        整体架构:分为三个模块,过滤、修剪、聚和

过滤:通过对每个模型输出标签的同质性分析,来检测和排除包含后门的模型。

        将分类器与聚类相结合,以便在最终决定接受或拒绝模型时也考虑类似模型的标签

        Division Differences:得到两个模型之间的差异性

        在第t轮迭代中,利用种子从20000个随机样本中提取输入到模型W_t,k和W_t,l中,将两个模型的i个神经元预测的输出结果依次与全局模型G_t相比较,因为W_t,k和W_t,l的训练数据符合类似的分布,因此他们神经元的预测输出与全局模型的比值也是类似的。(此处由于不在服务器端部署数据,因此服务器端不会产生输出预测,所以采用随机的一组向量为替代,原理是不需要得出具体的真是预测值而是希望得到两个模型之间的差异性比较)

        Normalized Update Engergy:评估模型中单个神经元的能量,能量越高表示预测该类别标签的数据更频繁

        预测标签分布较多的神经元更新的频率更高,反之更低。神经元更新幅度的变化会反应出标签的分布

        第k个客户端上第i个输出神经元的能量,H为神经元与前一层的连接数量,b为bias,w为权重

       

        标准化

        Threshold Exceedings:中毒模型的数据主要集中在后门样本上,与良性模型相比缺乏同质性,如果出现同质性非常高的模型则认为其是中毒模型。通过“阈值超出”的度量,该度量度量训练数据的同质性

        最大的神经元能量,P为神经元总量

        设定阈值为最大神经元能量的1%,为防止因输出标签较少导致所有神经元的数据都大于阈值,最终设定其为1/P与1%中的最大值

        超过阈值的神经元数量由以下给出,函数1(c>ε记1,否则记0)

        70个良性模型与30个中毒模型,良性模型中超出阈值的神经元数量更多。对于将模型更新分类为良性或中毒,定义了超过阈值中值数量的一半的分类边界。如果模型超过阈值的数量低于此阈值,则该模型被标记为中毒。

整体算法流程:

聚类算法流程:

裁剪:该层强制执行更新的最大L2范数,并在必要时缩小它们,以减轻中毒模型,以高比例因子补偿弱训练后门(以绕过第一层)。

        把模型的更新限制到S以内。S的取值为所有模型更新的中位数

聚合:使用FedAvg将所有剩余的剪切模型聚合在一起。在最后一轮中,聚合是按集群方式执行的,并且还包括筛选过的、裁剪过的模型,只有来自同一集群的模型被聚合在一起,每个客户端接收到为各自的集群聚合的模型。

实验:

主要是在NLP任务和物联网NIDS(Non IID)任务上做的,本文提出的模型无论是在NLP还是在NIDS上的MA BA都达到或超过了SOTA

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值