一种联邦学习深度影子防御方法

文档序号:33555044发布日期:2023-03-22 11:25阅读:26来源:国知局
一种联邦学习深度影子防御方法

1.本发明属于人工智能领域,涉及联邦学习防御方法。


背景技术:

2.联邦学习作为一种新兴的分布式机器学习模式,能够在数据不出本地的情况下进行模型训练,极大地降低了隐私数据泄露的风险。然而,现有的基于生成对抗网络的分布式深度学习攻击、深度梯度泄露、协作学习特征泄露等研究已经证明公开共享的模型更新和梯度仍然可以泄露联邦学习隐私,甚至恢复原始数据。共享更少的梯度、减少输入空间的维度、混淆梯度、防御蒸馏等大部分防御措施也被证明是无效或可以规避的。此外,联邦学习防御方式滞后于攻击方式发展,并且穷尽一切攻击手段来设计联邦学习防御方式是不现实的,联邦学习发展遭遇极大的挑战。因此,迫切需要一个新的防御方法解决上述问题。
3.生成对抗网络可以用生成的数据替代原始真实数据,避免攻击者直接接触真实数据训练过的模型。深度影子防御方法使用影子数据训练影子模型,并产生影子梯度。攻击者无法通过有效的攻击方法从影子梯度恢复原始数据,确保了联邦学习中公开共享的模型更新和梯度的安全。


技术实现要素:

4.本发明目的是设计一种联邦学习深度影子防御方法。为避免攻击者进行联邦学习梯度反演恢复原始数据,本发明采用深度影子防御方法,主要基于生成对抗网络设计新的联邦学习防御方法。为实现上述目的,本发明采用如下技术方案:
5.步骤一:学习真实数据分布:生成对抗网络分为生成器和判别器,深度影子防御方法利用生成器对真实数据的分布特征进行学习;与此同时判别器对构建的生成分布与真实数据分布的差异进行计算,使两者的差异尽可能接近;
6.步骤二:生成影子数据:生成器在学习到满足真实数据的分布之后,从生成分布中抽取影子数据;影子数据将真实数据进行了隐藏,并且与真实数据服从同一分布;
7.步骤三:学习原始联邦学习模型行为:由于模型在训练过程中会对训练数据产生记忆,为避免原始联邦学习模型被黑盒攻击还原,深度影子防御方法将原始联邦学习模型隐藏起来,并学习原始联邦学习模型行为,训练产生功能相同,结构相异的影子模型;
8.步骤四:构造影子模型:影子模型能够使用与原始联邦学习模型相同的分类或预测服务,并且模型结构上的不同能够尽可能地避免迁移性攻击,有效保护原始联邦学习模型。
9.步骤五:生成影子梯度:将影子数据送入构造好的影子模型中进行训练,产生影子梯度,攻击者无法通过最小化虚假梯度和影子梯度距离的方式恢复出原始真实数据。
附图说明
10.图1详细描述了本发明深度影子防御方法。
具体实施方式:
11.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
12.本发明提供一种联邦学习深度影子防御方法,具体步骤如下:
13.步骤一:学习真实数据分布:生成对抗网络分为生成器g和判别器d,深度影子防御方法利用生成器g对真实数据的分布特征p
data
(x)进行学习;与此同时判别器d对构建的生成分布pg(x)与真实数据分布p
data
(x)的差异进行计算,使两者的差异尽可能接近;
14.步骤1.1:联邦学习用户i拥有真实数据(xi,yi),深度影子防御方法利用生成器g对真实数据的分布特征p
data
(x)进行学习。x
si
=g(z)将非均匀分布的pg(x)映射到转换后的样本x上。
15.步骤1.2:衡量生成分布pg(x)与真实数据分布p
data
(x)的差异。生成对抗网络的目标函数可定义为最小最大博弈,优化目标是最小化pg(x)与p
data
(x)的差异具体定义如下。
[0016][0017][0018]
步骤1.3:求解使得最大化目标函数的d
*
,结果如下。
[0019][0020]
步骤1.4:代入求解结果如下:
[0021][0022]
步骤二:生成影子数据:生成器在学习到满足真实数据的分布pg(x)之后,从生成分布pg(x)中抽取影子数据(x
si
,y
si
)。影子数据将真实数据进行了隐藏,并且与真实数据(xi,yi)服从同一分布。
[0023]
步骤三:学习原始联邦学习模型行为:由于模型在训练过程中会对训练数据产生记忆,为避免原始联邦学习模型被黑盒攻击还原,深度影子防御方法将原始联邦学习模型隐藏起来,并学习原始联邦学习模型行为,训练产生功能相同,结构相异的影子模型。
[0024]
步骤3.1:假定有可微联邦学习模型f,参数权重为w,真实数据在模型f中进行训练会产生梯度定义如下。
[0025][0026]
步骤3.2:由于步骤二已经得到影子数据,学习原始联邦学习模型f的行为可以直接使用影子数据。
[0027]
步骤四:构造影子模型:影子模型f

能够提供与原始联邦学习模型f相同的分类或预测服务,并且模型结构上的不同能够尽可能地避免黑盒设置下的迁移性攻击,有效保护原始联邦学习模型f。
[0028]
步骤五:生成影子梯度:将影子数据送入构造好的影子模型中进行训练,产生影子梯度,攻击者无法通过最小化虚假梯度和影子梯度距离的方式恢复出原始真实数据。
[0029]
步骤5.1:生成影子梯度定义如下。
[0030][0031]
步骤5.2:攻击者生成随机的虚假数据(x
ri
,y
ri
),定义如下。
[0032]
xr←
n(0,1),y

n(0,1)
[0033]
步骤5.3:攻击者将虚假数据送入影子模型f

进行训练,生成虚假梯度定义如下。
[0034][0035]
步骤5.4:攻击者通过最小化虚假梯度和影子梯度距离的方式发起攻击,攻击优化目标定义如下。
[0036][0037]
步骤5.5:攻击者在最小化虚假梯度和影子梯度距离之后,最多只能获得影子数据,真实数据不会被泄露。


技术特征:
1.一种联邦学习深度影子防御方法,具体步骤如下:步骤一:学习真实数据分布:生成对抗网络分为生成器和判别器,深度影子防御方法利用生成器对真实数据的分布特征进行学习;与此同时判别器对构建的生成分布与真实数据分布的差异进行计算,使两者的差异尽可能接近;步骤二:生成影子数据:生成器在学习到满足真实数据的分布之后,从生成分布中抽取影子数据;影子数据将真实数据进行了隐藏,并且与真实数据服从同一分布;步骤三:学习原始联邦学习模型行为:由于模型在训练过程中会对训练数据产生记忆,为避免原始联邦学习模型被黑盒攻击还原,深度影子防御方法将原始联邦学习模型隐藏起来,并学习原始联邦学习模型行为,训练产生功能相同,结构相异的影子模型;步骤四:构造影子模型:影子模型能够使用与原始联邦学习模型相同的分类或预测服务,并且模型结构上的不同能够尽可能地避免迁移性攻击,有效保护原始联邦学习模型;步骤五:生成影子梯度:将影子数据送入构造好的影子模型中进行训练,产生影子梯度;攻击者无法通过最小化虚假梯度和影子梯度距离的方式恢复出原始真实数据。

技术总结
本发明设计了一种联邦学习深度影子防御方法,旨在避免攻击者进行梯度反演从而重构数据,保证联邦学习上传模型参数和梯度过程中的安全,进一步降低联邦学习隐私泄露风险。本发明分为三个步骤:首先,基于生成对抗网络合成影子数据,影子数据与真实数据具有相同数据分布特征,能够隐藏真实数据,攻击者无法通过影子数据回溯真实数据。其次,学习原始联邦学习模型的行为,生成功能相似但结构不同的影子模型,避免原始模型泄露参与训练的数据信息和参数信息。最后,将影子数据送入联邦学习影子模型进行训练,产生影子梯度。攻击者无法通过最小化虚假梯度和影子梯度距离的方式恢复出原始真实数据,达到保护联邦学习模型参数和梯度安全的目的。安全的目的。安全的目的。


技术研发人员:周辉 陈玉玲 李涛 孙彦诚 吴若岚
受保护的技术使用者:贵州大学
技术研发日:2022.10.31
技术公布日:2023/3/21
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1