首页> 中国专利> 基于神经元分布特征的联邦学习中毒检测方法

基于神经元分布特征的联邦学习中毒检测方法

摘要

本发明公开了一种基于神经元分布特征的联邦学习中毒检测方法,包括以下步骤:(1)获取在客户端训练并上传的多个边缘模型,依据每个客户端对应的相邻几次上传的边缘模型的相似度,从每次上传的多个边缘模型筛选满足筛选要求的多个边缘模型作为候选中毒模型;(2)依据模型参数的分布状态,从候选中毒模型中筛选至少1个模型作为中毒模型,并剔除中毒模型,(3)根据样本数据和标签对中毒模型进行反演以得到中毒补丁数据,依据中毒补丁数据优化服务端的聚合模型参数,得到优化后的聚合模型,将优化后的聚合模型由服务端下发到客户端作为客户端的边缘模型,用于下一轮次的边缘训练。该联邦学习中毒检测方法能够快速检测中毒模型。

著录项

  • 公开/公告号CN112365005A

    专利类型发明专利

  • 公开/公告日2021-02-12

    原文格式PDF

  • 申请/专利权人 浙江工业大学;

    申请/专利号CN202011459232.5

  • 发明设计人 陈晋音;张龙源;刘涛;吴长安;

    申请日2020-12-11

  • 分类号G06N20/00(20190101);G06K9/62(20060101);

  • 代理机构33224 杭州天勤知识产权代理有限公司;

  • 代理人曹兆霞

  • 地址 310014 浙江省杭州市下城区潮王路18号

  • 入库时间 2023-06-19 09:54:18

说明书

技术领域

本发明属于面向联邦学习和模型安全监测领域,具体涉及一种基于神经元分布特征的联邦学习中毒检测方法。

背景技术

Google提出了联邦学习来解决训练机器学习模型的问题,即无需直接访问各种训练数据,特别是对于隐私敏感的任务。利用参与者的本地训练数据,联邦学习可以训练出不断优化的全局模型。在商业模型中部署联邦学习的应用非常广泛,并且趋势不断增长,例如贷款状态预测,健康状况评估(例如潜在的癌症风险评估)以及打字时的联想预测。

每个客户的原始数据都存储在本地,不进行交换或转移;相反,权重更新是狭义的更新,以包含针对特定学习任务所需的最少信息。在数据最小化服务中,尽可能早地执行聚合。

尽管联邦学习能够汇总不同方提供的分散的(且通常是受限制的)信息来训练更好的模型,但其分布式学习方法以及非独立同分布的数据分布可能无意中提供了为攻击者提供一种新的攻击思路。特别是,由于隐私问题或法规限制而限制对参与者个人数据的访问可能会促进对使用联邦学习训练的共享模型的后门攻击。后门攻击是一种数据中毒攻击,旨在操纵训练数据的子集,以使在经过篡改的数据集上训练的机器学习模型将容易受到嵌入了类似触发器的测试集的攻击。

RFA和FoolsGold是最近提出的两种基于距离或相似性度量标准的联邦学习聚合算法。其中,RFA汇总模型参数以进行更新,并且通过用近似几何中值替换汇总步骤中的加权算术平均值,从而对异常值具有鲁棒性。FoolsGold降低了重复提供相似梯度更新的参与方的总权重,同时保留了提供不同梯度更新的参与方的权重。

但是目前提出的大多是联邦下的中毒防御方法,首先中毒防御方法依赖于观测模型之间的距离或者相似度进行判断,但是在实际生活中,参与者的数据是以数据独立同分布形式存在,模型间的差异本身就较大,因此无法正确判断。其次这种方法无法寻找到中毒的客户端,无法从源头上进行杜绝中毒攻击。最后,单机版的中毒检测方法,例如NC(NeuralCleanse、神经元清洁防御)和ABS(Artificial Brain Stimulation,人工脑刺激防御),无法部署到每个客户端,一是由于数据隐私问题,二是因为客户端的计算资源本就紧张,NC和ABS都需要较大的运算量才能进行检测。

发明内容

本发明考虑到数据异质性以及计算资源的效果,提供了一种基于神经元分布特征的联邦学习中毒检测方法,在寻找到恶意客户端后,通过更新值反向推导出中毒补丁,并借鉴对抗训练的方式,对上传的模型进行防御,以此来去除潜在的中毒补丁。

本发明提供的技术方案为:

一种基于神经元分布特征的联邦学习中毒检测方法,包括以下步骤:

(1)获取在客户端训练并上传的多个边缘模型,依据每个客户端对应的相邻几次上传的边缘模型的相似度,从每次上传的多个边缘模型筛选满足筛选要求的多个边缘模型作为候选中毒模型;

(2)依据模型参数的分布状态,从候选中毒模型中筛选至少1个模型作为中毒模型,并剔除中毒模型。

优选地,所述联邦学习中毒检测方法还包括:

(3)根据样本数据和标签对中毒模型进行反演以得到中毒补丁数据,依据中毒补丁数据优化服务端的聚合模型参数,得到优化后的聚合模型。

优选地,所述联邦学习中毒检测方法还包括:

(4)在获得优化后的聚合模型后,将优化后的聚合模型由服务端下发到客户端作为客户端的边缘模型,用于下一轮次的边缘训练。

与现有技术相比,本发明具有的有益效果至少包括:

本发明提供的联邦学习中毒检测方法中,依据边缘模型的历史模型参数的分布特征经过两次筛选以实现对中毒模型的快速和准确检测,同时根据毒模型构建中毒补丁对服务端的聚合模型去中毒补丁优化,以实现对中毒的防御。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动前提下,还可以根据这些附图获得其他附图。

图1为本发明实施例提供的基于神经元分布特征的联邦学习中毒检测方法的方框示意图。

图2为本发明实施例提供的基于神经元分布特征的联邦学习中毒检测方法的流程图。

图3为本发明实施例提供的中毒补丁数据生成示意图。

具体实施方式

为使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例对本发明进行进一步的详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不限定本发明的保护范围。

联邦学习的应用领域越来越广泛,但由于联邦学习本身的隐私性问题,没法访问客户端的数据。此外,作为服务器端,无法通过有效的方法来检测客户端的模型是否是恶意。因此,无法保证训练出来的模型的安全性,基于此种情况,本发明实施例提出了一种基于神经元检测的联邦学习中毒检测方法,以提高模型的安全性,具体构思为:首先,利用历史模型参数更新的KL散度分布进行中毒模型的初次筛选,并通过计算初步筛选的模型的标准差来计算模型的异常指数,并将超出异常指数阈值的模型认定为中毒模型并剔除;其次利用中毒模型的更新值来优化生成中毒补丁,并将添加中毒补丁的中毒数据集连同正常的标签一起训练服务端的聚合模型;最后将训练完成的聚合模型下发到各终端进行下次更新,如果存在多个需要修复模型时,则利用异常指数来指导生成优化后的聚合模型。

图1为本发明实施例提供的基于神经元分布特征的联邦学习中毒检测方法的方框示意图。图2为本发明实施例提供的基于神经元分布特征的联邦学习中毒检测方法的流程图。参见图1和图2,实施例提供的基于神经元分布特征的联邦学习中毒检测方法,包括以下步骤:

步骤1,模型初始化

模型初始化时,设定整体训练轮次E、本地良性数据集、参与联邦学习的整体客户端设备数M,每轮参与训练的客户端设备数K(K≤M),服务器端部署需要训练的模型,并将需要训练的模型结构发送给每个客户端设备。

步骤2,边缘模型训练

每个客户端设备采用本地良性数据集对接收的模型作为边缘模型进行训练,得到边缘模型。

步骤3,依据边缘模型的相似度筛选获得候选中毒模型。

本实施例中,针对客户端训练并上传的多个边缘模型,依据每个客户端对应的相邻几次上传的边缘模型的相似度,从每次上传的多个边缘模型筛选满足筛选要求的多个边缘模型作为候选中毒模型。

在一种可能实施方式中,可以依据客户端对应的相邻几次上传的边缘模型参数的KL散度值作为边缘模型的相似度,来筛选边缘模型获得候选中毒模型。KL散度值越小说明两次上传的边缘模型的目标越相似,也就是模型更新方向越相似,越有可能是中毒模型,实施例中,设置散度阈值,诗选KL散度值小于散度阈值的边缘模型作为候选中毒模型。

具体来说,可以从历史模型参数选取两次上传中模型参数残差值KL散度比较小的边缘模型,其中,KL散度值的计算公式为:

其中,KL(·)表示KL散度函数,

步骤4,根据模型参数的分布状态从候选中毒模型中筛选获得候选中毒模型。

实验探究发现,中毒模型为了防止中毒后门的丢失,即使在模型已经收敛的情况下,中毒的神经元依旧有一个较大的更新幅值,也就是针对每轮次训练,中毒模型的最大权重参数总是出现在同一个神经元上,但是针对未中毒的正常模型,每轮次训练时,最大权重参数具有随机性,不定向分布在正常模型的任意一个神经元上。基于中毒模型的最大权重分布特性,实施例依据模型参数(也就是权重参数)分布状态来计算模型的异常指数,依据异常指数筛选中毒模型。

在一个可能的实施方式中,针对每个候选中毒模型,计算模型参数的标准差,并依据标准差与所有候选中毒模型对应的模型参数的标准差均值的比例作为用于评价中毒概率的异常指数,筛选异常指数大于异常指数阈值的候选中毒模型作为中毒模型。

具体来说,采用公式(II)和公式(III)计算模型参数的标准差

其中,STD(·)表示标准差计算公式,

步骤5,根据样本数据和标签对中毒模型进行反演以得到中毒补丁数据。

实施例中,如图3所示,对中毒模型进行反演时,根据损失函数loss,以最小代价改变模型的标签值为目标,迭代优化数据集,并将优化数据与原数据的差值作为中毒补丁数据;

其中,x,y是原良性数据和对应标签,x

步骤6,依据中毒补丁数据优化服务端的聚合模型参数,得到优化后的聚合模型,并下发到客户端作为客户端的边缘模型。

实施例中,生成中毒补丁后,利用对抗训练的思想,将消去中毒补丁的特征作为服务端的聚合模型重训练的任务对聚合模型进行去补丁特征操作。

在一个可能的实施方式中,利用每个中毒模型对应的中毒补丁数据分别对服务端的聚合模型进行再训练,以消除聚合模型的中毒补丁,获得与中毒模型个数相同的修复模型;当存在一个中毒模型时,则对应的一个修复模型作为优化后的聚合模型;当存在多个中毒模型时,聚合所有修复模型得到优化后的聚合模型。

具体来说,利用中毒补丁数据分别对服务端的聚合模型进行再训练时,首先,将中毒补丁数据添加到与原良性数据上组成中毒数据,组成中毒数据集,然后,利用中毒数据集和良性数据集对服务端的聚合模型进行再训练,以此来消去聚合模型中的中毒后门补丁,再训练时,依据公式(V)更新聚合模型的模型参数Θ,获得修复模型。

其中,X

具体来说,如果存在多个中毒模型,会得到多个恢复模型,此时,可以采用(VI)聚合所有修复模型得到优化后的聚合模型。

其中,n表示中毒模型的索引,取值范围为1~N,N为中毒模型个数,AI

在获得优化后的聚合模型后,将优化后的聚合模型由服务端下发到客户端作为客户端的边缘模型,用于下一轮次的边缘训练。

步骤7,重复步骤2~6,直到达到总轮数E,获得的优化后的聚合模型作为最终优化后的联邦学习模型。

实施例中的联邦学习中毒检测方法,适用于图像分类、人脸检测应用领域,在图像分类应用中,原良性数据集为MNIST、CIFAR10,边缘模型可以为Lenet-5、VGG16等,在人脸检测应用中,原良性数据集为LFW、CASIA,边缘模型可以为FaceNet等人脸检测模型,当图像分类和人脸检测应用中出现中毒攻击时,可以采用上述方法实现中毒检测和防御。

本发明提供的联邦学习中毒检测方法中,利用上传的边缘模型的模型参数进行中毒模型的判断,不需要像NC(Neural Cleanse、神经元清洁防御)和ABS(Artificial BrainStimulation,人工脑刺激防御)那样需要神经网络的激活值,因此不需要数据集的加入,其次计算量较小,对模型更新的过程没有太大的影响,此外这样可以最好的利用联邦学习的特点,也就是可以通过上传的大量边缘模型的模型参数来找到中毒模型;

本发明提供的联邦学习中毒检测方法中,利用中毒模型来生成中毒补丁,因为从中毒模型的模型参数可以看出中毒模型的特征分布映射到哪些像素点最多,中毒模型的模型参数为了不断强化中毒后门的存在,需要不断的上传中毒神经元的值,因此模型的模型参数更新会泄露中毒补丁的存在;

本发明提供的联邦学习中毒检测方法中,可以有效的避免因为数据独立同分布引起的模型收敛过慢的问题,中毒防御方法依赖于观测模型之间的距离或者相似度进行判断,但是在实际生活中,客户端的数据是以数据独立同分布形式存在,模型间的差异本身就较大,因此无法正确判断。而中毒检测可以从根源解决这些问题,通过去除恶意客户端的加入,并修复已经中毒的聚合模型。

以上所述的具体实施方式对本发明的技术方案和有益效果进行了详细说明,应理解的是以上所述仅为本发明的最优选实施例,并不用于限制本发明,凡在本发明的原则范围内所做的任何修改、补充和等同替换等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号