本发明专利技术公开一种基于RDP的联邦学习系统投毒攻击防御方法,包括以下步骤:客户端将所接收的全局模型作为初始模型,使用本地训练数据进行训练后,将本地模型参数与全连接层输出发送到服务器;服务器接受客户端所上传的本地模型参数与全连接层输出,将客户端的全连接层输出输入进RDP后得到异常分数,根据异常分数过滤异常程度过高的客户端,得到正常客户端集合;服务器根据每个正常客户端的异常分数计算对应的权重系数,依据权重系数对本轮训练中所有正常客户端的本地模型参数加权计算后得到全局模型参数,并将全局模型分发到客户端上。并将全局模型分发到客户端上。并将全局模型分发到客户端上。
【技术实现步骤摘要】
一种基于RDP的联邦学习系统投毒攻击防御方法
[0001]本专利技术涉及一种基于RDP的联邦学习系统投毒攻击防御方法,属于联邦学习系统安全的
技术介绍
[0002]联邦学习是一种新兴的分布式机器学习范式,联邦学习系统一般就是由很多客户端和一个中央服务器组成,全局模型是在中央服务器上的,本地模型每个客户端搭载一个。联邦学习系统允许多个客户端(如智能手机、物联网设备、边缘计算节点等)在不共享各自所持有的训练数据的情况下,共同学习一个机器学习模型,该模型被称为全局模型。通常来说,联邦学习会进行多轮训练以获得一个泛化性能良好的全局模型,每轮训练包括以下三个步骤:服务器向该训练轮次所选定的客户端发送当前的全局模型;每个被选定的客户端会在本地所持有的训练数据上微调所接收到的全局模型,并将模型更新发送回服务器;服务器根据特定的聚合规则,将所选定的客户端发送回的模型更新进行聚合,并更新全局模型。在联邦学习中,每个客户端只需要与自己所持有的数据进行交互,而不需要将数据上传到服务器,大大降低了隐私泄漏的风险,因此联邦学习比传统的集中学习具有更高的隐私性。
[0003]然而,由于联邦学习具有分布式性质,使得其容易受到模型投毒攻击,在模型投毒攻击中,由攻击者控制的恶意客户端通过向服务器发送篡改过的模型更新来破坏全局模型。根据不同的攻击目标,模型投毒攻击可以分为非定向模型投毒攻击和定向模型投毒攻击两种。
[0004]非定向模型投毒攻击的目标是降低全局模型的泛化性能。攻击者会通过篡改本地模型更新来破坏全局模型的总体准确性,使其对任意的输入数据具有较低的测试精度。例如,攻击者会将与当前全局模型更新方向相反的更新发送回服务器。现有的非定向模型投毒攻击包括如下步骤:由攻击者控制的恶意客户端根据真实的本地训练数据得到正常的本地模型更新;恶意客户端篡改真实的本地模型更新,以最大化攻击前后全局模型更新之间的差异,使得被投毒的全局模型更新显著偏离正常的模型更新。
[0005]定向模型投毒攻击目标是使全局模型对于特定数据输出攻击者预先指定的目标标签。攻击者会在输入数据中嵌入一个特定的触发器,使得被投毒的全局模型将这些数据预测为攻击者预设的标签。例如,在图像识别中,触发器可以是图片中特定的像素模式,在自然语言处理中,触发器可以是语句中特定的单词。现有的定向模型投毒攻击包括如下步骤:由攻击者控制的恶意客户端在部分本地训练数据上嵌入触发器并将其标签修改为目标标签,并在此基础上训练并更新本地模型;恶意客户端在将更新发送回服务器之前对其放大,以增加攻击效果,使得服务器无法消除恶意影响。
[0006]模型投毒攻击会对联邦学习系统的安全性产生威胁。现有的针对模型投毒攻击的防御方法可以分为拜占庭容错联邦学习方法和可证明鲁棒性联邦学习方法。这些方法的目标是在联邦学习系统中存在恶意客户端向服务器发送任意模型更新的情况下,也能确保全
局模型的泛化性能。拜占庭容错联邦学习方法可以在理论上界定来自恶意客户端的模型更新,通过限制恶意客户端对于全局模型参数的影响来实现鲁棒性。可证明鲁棒性联邦学习方法则通过保证在有恶意客户端的情况下全局模型测试精度的下界来实现鲁棒性。这些防御方法只能抵御少量恶意客户端或者需要服务器持有正常的验证数据集,然而联邦学习系统中一般存在大量的客户端且服务器只负责分发聚合模型参数而不持有数据,因此这些防御技术在典型的联邦学习场景下难以使用。
[0007]因此,为了应对联邦学习系统中的模型投毒攻击,需要设计一种可行的防御方案,以保证联邦学习中全局模型的可用性。
技术实现思路
[0008]专利技术目的:针对现有技术中存在的问题与不足,本专利技术提出了一种基于随机距离预测(RDP)的联邦学习系统投毒攻击防御方法。该方法通过收集客户端的全连接层输出,将其输入进RDP中得到异常分数,排除异常程度较高的客户端后进行聚合,可以在联邦学习中有效防御模型投毒攻击。
[0009]本专利技术所提供的技术方案是:一种基于随机距离预测(RDP)的联邦学习系统投毒攻击防御方法,包括以下步骤:
[0010]步骤1,客户端将所接收的全局模型作为初始模型,使用本地训练数据进行训练后,将本地模型参数与全连接层输出发送到服务器;
[0011]步骤2,服务器接受客户端所上传的本地模型参数与全连接层输出,将客户端的全连接层输出输入进RDP后得到异常分数,根据异常分数过滤异常程度超过预设值的客户端,得到正常客户端集合;
[0012]步骤3,服务器根据每个正常客户端的异常分数计算对应的权重系数,依据权重系数对当前轮训练中所有正常客户端的本地模型参数加权计算后得到全局模型参数,并将全局模型分发到客户端上。
[0013]作为优选,所述步骤1中具体包括:
[0014]步骤1.1,客户端将服务器所发送的上一轮的全局模型参数w
t
‑1作为初始模型参数;
[0015]步骤1.2,客户端使用本地训练数据D
i
,按照训练本地模型参数其中α为学习率与为损失函数;
[0016]步骤1.3,客户端将本地模型参数与全连接层输出发送到服务器。
[0017]作为优选,所述步骤2中具体包括:
[0018]步骤2.1,服务器接受客户端所上传的本地模型参数与全连接层输出
[0019]步骤2.2,服务器将本轮收集到的全连接层输出作为训练集Output
t
,用于训练RDP;
[0020]步骤2.3,服务器使用训练后的RDP与每个客户端的全连接层输出得到对应的异常分数;
[0021]步骤2.4,服务器将异常程度超过预设值的客户端视为恶意客户端,并将其过滤后
得到正常客户端集合。
[0022]所述步骤2.2中的RDP是一种获取数据重建特征的方法,可以在保持原始数据间关系的同时降低数据维度,提取出深层特征。RDP由一个共享权重的孪生神经网络SiameseNet和一个映射神经网络MappingNet组成;所述孪生神经网络SiameseNet由一个全连接层组成,所述映射神经网络MappingNet由两个全连接层与中间的Dropout层组成。
[0023]所述Dropout层会在每次训练期间按照指定概率随机设置层中神经元的权重值为0,在预测阶段则将保持Dropout层原始权重值。
[0024]进一步优选,所述步骤2.2中具体包括:
[0025]步骤2.2.1,将一对全连接层输出x
i
与x
j
输入到孪生神经网络SiameseNet得到对应的特征与
[0026]步骤2.2.2,将这一对全连接层输出x
i
与x
j
输入到映射神经网络MappingNet得到对应的重建特征η(x
i
)与η(x
j
);
[0027]步骤2.2.3,将L=L
rdp
+L
aux
作为RDP的训练损失函数,使得孪生神经网本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种基于RDP的联邦学习系统投毒攻击防御方法,其特征在于,包括以下步骤:步骤1,客户端将所接收的全局模型作为初始模型,使用本地训练数据进行训练后,将本地模型参数与全连接层输出发送到服务器;步骤2,服务器接受客户端所上传的本地模型参数与全连接层输出,将客户端的全连接层输出输入进RDP后得到异常分数,根据异常分数过滤异常程度超过预设值的客户端,得到正常客户端集合;步骤3,服务器根据每个正常客户端的异常分数计算对应的权重系数,依据权重系数对当前轮训练中所有正常客户端的本地模型参数加权计算后得到全局模型参数,并将全局模型分发到客户端上。2.根据权利要求1所述的基于RDP的联邦学习系统投毒攻击防御方法,其特征在于,所述步骤1中具体包括:步骤1.1,客户端将服务器所发送的上一轮的全局模型参数w
t
‑1作为初始模型参数;步骤1.2,客户端使用本地训练数据D
i
,按照训练本地模型参数其中α为学习率与为损失函数;步骤1.3,客户端将本地模型参数与全连接层输出发送到服务器。3.根据权利要求1所述的基于RDP的联邦学习系统投毒攻击防御方法,其特征在于,所述步骤1的全连接层输出是指将训练数据D
i
输入到本地模型后全连接层的输出矩阵;所述全连接层是指位于本地模型架构中输出层之前的连接结构,将上一层神经网络的所有节点连接到下一层神经网络的每个节点。4.根据权利要求1所述的基于RDP的联邦学习系统投毒攻击防御方法,其特征在于,所述步骤2中具体包括:步骤2.1,服务器接受客户端所上传的本地模型参数与全连接层输出步骤2.2,服务器将本轮收集到的全连接层输出作为训练集Output
t
,用于训练RDP;步骤2.3,服务器使用训练后的RDP与每个客户端的全连接层输出得到对应的异常分数;步骤2.4,服务器将异常程度超过预设值的客户端视为恶意客户端,并将其过滤后得到正常客户端集合C。5.根据权利要求4所述的基于RDP的联邦学习系统投毒攻击防御方法,其特征在于,所述步骤2.2中的RDP由一个...
【专利技术属性】
技术研发人员:沈志立,华景煜,仲盛,
申请(专利权)人:南京大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。