一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于对抗训练的联邦学习隐私保护方法及系统与流程

2021-11-05 20:38:00 来源:中国专利 TAG:


1.本发明涉及联邦学习技术领域,尤其涉及一种基于对抗训练的联邦学习隐私保护方法及系统。


背景技术:

2.联邦机器学习又名联邦学习,联合学习,联盟学习。联邦机器学习是一个机器学习框架,能有效帮助多个机构在满足用户隐私保护、数据安全和政府法规的要求下,进行数据使用和机器学习建模。
3.联邦学习允许设备利用本地数据训练得到本地模型,再由本地模型产生梯度(又称模型参数),最后由参与者与中央服务器共享模型参数,为多个不互信的参与方提供了一种数据共享的途径。然而,联邦学习分享梯度的方式仍存在隐私泄露问题,攻击者能够通过梯度推测出用户数据中的敏感信息。为了解决联邦学习中的隐私泄露问题,目前常用的方式是在把本地梯度上传到云服务器中之前,每个用户都使用同态加密对梯度进行加密,以保护用户相关信息的隐私,或者将差分隐私技术用于对用户端本地的深度学习模型加噪来保障数据隐私安全。
4.但现有技术存在如下不足:使用同态加密只能保护梯度本身,并不能保护梯度中隐藏的信息内容的隐私,梯度中隐藏的信息内容仍会泄露,而使用差分隐私机制需要人为地选择在何处加噪声以及加多大的噪声,操作困难,且隐私保护效果不佳。


技术实现要素:

5.本发明提出一种基于对抗训练的联邦学习隐私保护方法及系统,所述方法由客户端根据服务器下发的训练任务信息选择本地隐私分类器后,采用本地数据进行多迭代多批次对抗训练,并将训练得到的本地训练信息上传给服务器聚合,训练得到全局目标分类器,避免联邦学习内容级隐私泄漏风险的发生的同时,有效提高联邦学习训练的准确率和效率,进一步提升联邦学习的服务质量。
6.为了实现上述目的,有必要针对上述技术问题,提供了一种基于对抗训练的联邦学习隐私保护方法及系统。
7.第一方面,本发明实施例提供了一种基于对抗训练的联邦学习隐私保护方法,所述方法应用于客户端,所述方法包括以下步骤:
8.接收服务器发送的全局模型;
9.根据本地计算能力和本地隐私需求,将所述全局模型划分为特征提取器和目标分类器,并从多个预设隐私分类器中,选择任一对应的所述预设隐私分类器作为本地隐私分类器,以及根据本地数据集和所述特征提取器,对所述目标分类器和所述本地隐私分类器进行对抗训练,得到本地训练信息;
10.将所述本地训练信息上传至所述服务器,以使所述服务器根据所述本地训练信息,聚合更新所述全局模型。
11.进一步地,所述根据本地数据集和所述特征提取器,对所述目标分类器和所述本地隐私分类器进行对抗训练,得到本地训练信息的步骤包括:
12.根据所述本地隐私分类器的损失函数、所述目标分类器的损失函数、以及预设隐私系数,确定对抗训练中所述特征提取器对应的特征提取损失函数;所述特征提取损失函数表示为:
13.l(fe)=(1

λ)l(tc)

λl(pc)
14.式中,l(fe)、l(tc)和l(pc)分别表示特征提取损失函数、目标分类器的损失函数和本地隐私分类器的损失函数;λ表示预设隐私系数,且0≤λ≤1;
15.根据本地数据集和所述特征提取器,采用所述特征提取损失函数对所述目标分类器和所述本地隐私分类器进行所述对抗训练,得到所述本地训练信息。
16.进一步地,所述根据本地数据集和所述特征提取器,采用所述特征提取损失函数对所述目标分类器和所述本地隐私分类器进行所述对抗训练,得到所述本地训练信息的步骤包括:
17.预先根据批次大小,将所述本地数据集划分为多个待训练数据集;所述批次大小与所述全局模型同时由所述服务器发送;
18.依次根据所述待训练数据集,通过所述特征提取器,完成所述目标分类器和本地隐私分类器的所述对抗训练,并判定当前迭代次数是否达到预设迭代次数,若达到,则停止所述对抗训练,得到所述本地训练信息,反之,则继续采用所述待训练数据集进行所述对抗训练。
19.第二方面,本发明实施例提供了一种基于对抗训练的联邦学习隐私保护方法,所述方法应用于服务器,其特征在于,所述方法包括以下步骤:
20.预先确定参与联邦学习的多个客户端,并向各个客户端发送全局模型,以使各个客户端根据本地计算能力和本地隐私需求,将所述全局模型划分为特征提取器和目标分类器,选取本地隐私分类器,并根据本地数据集、预设隐私系数和所述特征提取器,对所述目标分类器和所述本地隐私分类器进行对抗训练,得到本地训练信息;
21.响应于各个客户端上传所述本地训练信息,根据所有所述本地训练信息,聚合更新所述全局模型;
22.检测所述全局模型是否收敛,若收敛,则停止训练,反之,则将所述全局模型发送给各个客户端,继续迭代训练。
23.进一步地,所述本地训练信息包括本地模型、本地数据集大小、分类准确率及所述预设隐私系数;
24.所述响应于各个客户端上传所述本地训练信息,根据所有所述本地训练信息,聚合更新所述全局模型的步骤包括:
25.分别根据各个客户端的本地数据集大小、分类准确率及预设隐私系数的加权聚合,得到对应的权重分配指标;
26.根据各个客户端的所述权重分配指标为所有客户端分配对应的聚合权重系数;
27.根据所述聚合权重系数对所述本地模型进行加权平均,更新所述全局模型。
28.进一步地,所述预先确定参与联邦学习的多个客户端,并向各个客户端发送全局模型,以使各个客户端根据本地计算能力和本地隐私需求,将所述全局模型划分为特征提
取器和目标分类器,选取本地隐私分类器,并根据本地数据集、预设隐私系数和所述特征提取器,对所述目标分类器和所述本地隐私分类器进行对抗训练,得到本地训练信息的步骤包括:
29.预先确定批次大小;
30.将所述批次大小与所述全局模型同时发送给各个客户端,以使各个客户端根据所述批次大小,将所述本地数据集划分为多个待训练数据集,并依次根据所述待训练数据集,通过所述特征提取器,完成所述目标分类器和本地隐私分类器的所述对抗训练。
31.第三方面,本发明实施例提供了一种基于对抗训练的联邦学习隐私保护方法,其特征在于,所述方法包括以下步骤:
32.服务器向多个客户端同时发送全局模型和批次大小;
33.各个客户端根据本地计算能力和本地隐私需求,将所述全局模型划分为特征提取器和目标分类器,选取本地隐私分类器,根据预设隐私系数和所述本地隐私分类器,确定特征提取损失函数,根据所述批次大小将本地数据集划分批次,采用所述特征提取损失函数和所述特征提取器,对所述目标分类器和本地隐私分类器进行多批次多迭代对抗训练,得到本地训练信息,以及将所述本地训练信息上传至所述服务器;所述本地训练信息包括本地模型、本地数据集大小、分类准确率及所述预设隐私系数;
34.所述服务器分别根据各个客户端的所述本地数据集大小、分类准确率和所述预设隐私系数,得到对应的权重分配指标,并根据所述权重分配指标为所有客户端分配对应的聚合权重系数,根据所述聚合权重系数对所述本地模型进行加权平均,更新所述全局模型。
35.第四方面,本发明实施例提供了一种基于对抗训练的联邦学习隐私保护系统,所述系统应用于客户端,所述系统包括:
36.第一任务模块,用于接收服务器发送的全局模型;
37.第一训练模块,根据本地计算能力和本地隐私需求,将所述全局模型划分为特征提取器和目标分类器,并从多个预设隐私分类器中,选择任一对应的所述预设隐私分类器作为本地隐私分类器,以及根据本地数据集和所述特征提取器,对所述目标分类器和所述本地隐私分类器进行对抗训练,得到本地训练信息;
38.第一聚合模块,用于将所述本地训练信息上传至所述服务器,以使所述服务器根据所述本地训练信息,聚合更新所述全局模型。
39.第五方面,本发明实施例提供了一种基于对抗训练的联邦学习隐私保护系统,所述系统应用于服务器,所述系统包括:
40.第二任务模块,用于预先确定参与联邦学习的多个客户端,并向各个客户端发送全局模型,以使各个客户端根据本地计算能力和本地隐私需求,将所述全局模型划分为特征提取器和目标分类器,选取本地隐私分类器,并根据本地数据集、预设隐私系数和所述特征提取器,对所述目标分类器和所述本地隐私分类器进行对抗训练,得到本地训练信息;
41.第二聚合模块,用于响应于各个客户端上传所述本地训练信息,根据所有所述本地训练信息,聚合更新所述全局模型;
42.模型检测模块,用于检测所述全局模型是否收敛,若收敛,则停止训练,反之,则将所述全局模型发送给各个客户端,继续迭代训练。
43.第六方面,本发明实施例提供了一种基于对抗训练的联邦学习隐私保护系统,所
述系统包括服务器和多个客户端;
44.所述服务器包括任务下发模块、模型聚合模块和模型检测模块;
45.所述任务下发模块,用于向多个客户端同时发送全局模型和批次大小;
46.所述模型聚合模块,用于分别根据各个客户端的所述本地数据集大小、分类准确率和所述预设隐私系数,得到对应的权重分配指标,并根据所述权重分配指标为所有客户端分配对应的聚合权重系数,根据所述聚合权重系数对所述本地模型进行加权平均,更新所述全局模型;
47.所述模型检测模块,用于检测所述全局模型是否收敛,若收敛,则停止训练,反之,则将所述全局模型发送给各个客户端,继续迭代训练;
48.所述客户端包括任务接收模块、数据划分模块和模型训练模块;
49.所述任务接收模块,用于接收服务器发送的全局模型,根据本地计算能力和本地隐私需求,将所述全局模型划分为特征提取器和目标分类器,选取本地隐私分类器,根据预设隐私系数和所述本地隐私分类器,确定特征提取损失函数;
50.所述数据划分模块,用于根据所述批次大小将本地数据集划分为多个待训练数据集;
51.所述模型训练模块,用于依次根据所述待训练数据集,通过所述特征提取器和所述特征提取损失函数,完成所述目标分类器和所述本地隐私分类器的所述训练目标任务对应的对抗训练,并判定当前迭代次数是否达到预设迭代次数,若达到,则停止所述对抗训练,得到本地训练信息,以及将所述本地训练信息上传至所述服务器,反之,则继续采用所述待训练数据集进行所述对抗训练;所述本地训练信息包括本地模型、本地数据集大小、分类准确率及所述预设隐私系数。
52.上述本技术提供了一种基于对抗训练的联邦学习隐私保护方法及系统,通过所述方法,实现了通过由客户端根据本地计算能力和本地隐私需求,将服务器发送的全局模型划分为特征提取器和目标分类器,并从多个预设隐私分类器中,选择任一对应的预设隐私分类器作为本地隐私分类器,并根据本地隐私分类器和预设隐私系数确定特征提取器损失函数后,采用本地数据和特征提取器损失函数进行多迭代多批次目标分类器与本地隐私分类器的对抗训练,并将训练得到的包括本地模型、本地数据集大小、分类准确率及预设隐私系数的本地训练信息上传给服务器,再由服务器根据各个客户端的本地数据集大小、分类准确率及预设隐私系数为所有客户端分配对应的聚合权重系数后,对所有本地模型聚合更新全局模型的联邦学习隐私保护方案。与现有技术相比,该方法在实际联邦学习应用上,不仅有效保护了各客户端的数据隐私,避免了联邦学习内容级隐私泄漏风险的发生的同时,而且减少了客户端与服务器的通信次数,有效提高了联邦学习训练的准确率和效率,进一步提升了联邦学习的服务质量。
附图说明
53.图1是本发明实施例中基于对抗训练的联邦学习隐私保护方法应用于客户端的流程示意图;
54.图2是图1中步骤s12选取本地隐私分类器,进行对抗训练得到本地训练信息的流程示意图;
55.图3是本发明实施例中基于对抗训练的联邦学习隐私保护方法应用于服务器的流程示意图;
56.图4是图3中步骤s22根据批次大小划分本地数据,进行多批次多迭代对抗训练的流程示意图;
57.图5是本发明实施例中基于对抗训练的联邦学习隐私保护方法的流程示意图;
58.图6是本发明实施例中基于对抗训练的联邦学习隐私保护系统应用于客户端的结构示意图;
59.图7是本发明实施例中基于对抗训练的联邦学习隐私保护系统应用于服务器的结构示意图;
60.图8是本发明实施例中基于对抗训练的联邦学习隐私保护系统应用于服务器与客户端交互的结构示意图;
61.图9是本发明实施例中计算机设备的内部结构图。
具体实施方式
62.为了使本技术的目的、技术方案和有益效果更加清楚明白,下面结合附图及实施例,对本发明作进一步详细说明,显然,以下所描述的实施例是本发明实施例的一部分,仅用于说明本发明,但不用来限制本发明的范围。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
63.本发明提供的基于对抗训练的联邦学习隐私保护方法,可以应用于现有的一个服务器管理多个客户端的联邦学习训练中,其客户端和服务器的类型都不作具体限制,客户端和服务器只需能够配合完成由客户端根据本地计算能力和本地隐私需求,将服务器发送的全局模型划分为特征提取器和目标分类器,以及选择本地隐私分类器,采用本地数据进行多迭代多批次对抗训练,并将训练得到的本地训练信息上传给服务器,由服务器聚合训练得到全局模型的联邦学习训练,以解决现有联邦学习中采用同态加密或差分隐私技术对客户端数据进行隐私保护的局限性问题。下面将通过以下具体的实施例对本技术实施例提供的联邦学习隐私保护方法进行详细介绍和说明。
64.在一个实施例中,如图1所示,提供了一种基于对抗训练的联邦学习隐私保护方法,所述方法应用于客户端,所述方法包括以下步骤:
65.s11、接收服务器发送的全局模型;
66.其中,由服务器根据当前联邦学习要求确定的训练目标任务和全局模型,具体的全局模型的选取与训练目标任务直接相关,此处不作具体限定,如训练目标任务为图像分类,则对应的全局模型可为传统的机器学习分类算法,也可以为深度学习算法,如可采用卷积神经网络cnn等图像分类模型。
67.s12、根据本地计算能力和本地隐私需求,将所述全局模型划分为特征提取器和目标分类器,并从多个预设隐私分类器中,选择任一对应的所述预设隐私分类器作为本地隐私分类器,以及根据本地数据集和所述特征提取器,对所述目标分类器和所述本地隐私分类器进行对抗训练,得到本地训练信息;
68.其中,特征提取器和目标分类器的划分方法,各个客户端可以相同也可以不同。预设隐私分类器包括抗重构攻击隐私分类器,抗成员推理攻击隐私分类器,抗模型反演攻击
隐私分类器,抗特征推理攻击隐私分类器等,各个客户端可根据本地隐私需求,以及特征提取器和目标分类器的划分情况进行选择,用于通过特征提取器,与目标分类器进行对抗训练,实现对客户端参与训练的本地数据按需添加隐私保护的基础上完成目标分类器的训练。本地隐私需求即训练任务中具体要保护的数据属性,且每个客户端的预设隐私分类器并不一定完全相同,即可以具有相同数目不同种类的预设隐私分类器,也可以包括不同数目不同种类的预设隐私分类器。本实施例中,每个客户端接收到服务器下发的训练任务信息后,获取对应的训练目标任务,再结合本地数据属性保护需求,从预设隐私分类器中选择满足应用要求的本地隐私分类器,用于后续基于隐私保护的对抗训练。每个客户端实际选取的本地隐私分类器可能相同也可能不同,如客户端a选择训练抗重构攻击隐私分类器,客户端b选择训练抗特征推理攻击隐私分类器,也可能客户端a和客户端b都选择训练抗重构攻击隐私分类器或他类型的隐私分类器。需要说明的是,在客户端的本地计算能力和资源不足以独自完成模型划分和隐私分类器训练,即可以通过从服务器提供的候选划分方法和隐私分类器中选择。具体地,如图2所示,所述根据本地数据集和所述特征提取器,对所述目标分类器和所述本地隐私分类器进行对抗训练,得到本地训练信息的步骤s12包括:
69.s121、根据所述本地隐私分类器的损失函数、所述目标分类器的损失函数、以及预设隐私系数,确定对抗训练中所述特征提取器对应的特征提取损失函数;所述特征提取损失函数表示为:
70.l(fe)=(1

λ)l(tc)

λl(pc)
71.式中,l(fe)、l(tc)和l(pc)分别表示特征提取损失函数、目标分类器的损失函数和本地隐私分类器的损失函数;λ表示预设隐私系数,且0≤λ≤1。
72.其中,特征提取损失函数l(fe)的表达式仅为一个描述组成结构的通用表达式,其具体的函数表达式取决于目标分类器的损失函数l(tc)和本地隐私分类器的损失函数l(pc)的选取,且l(tc)和l(pc)可根据实际应用需求进行选取,如从mse均方误差损失函数、svm合页损失函数、cross entropy交叉熵损失函数和smooth l1损失函数等中选出符合要求的损失函数使用,此处不作具体限制。此外,λ为调节目标分类和隐私保护之间权重的系数,各个客户端可以根据实际的隐私保护需求设置本地的参数λ值,λ遵循约束条件0≤λ≤1,λ越小,目标任务的识别准确率越高,λ越大,隐私保护效果越好。
73.s123、根据本地数据集和所述特征提取器,采用所述特征提取损失函数对所述目标分类器和所述本地隐私分类器进行所述对抗训练,得到所述本地训练信息。
74.其中,本地数据集可以为客户端本地预先存储的待训练数据,也可以为客户端根据训练任务信息收集获取的可用于联邦学习训练的待训练数据。特征提取器以本地数据为输入,其对应的输出作为目标分类器和本地隐私分类器的输入。客户端在获取到可用于训练任务的本地数据后,先使用本地数据进行特征提取器和目标分类器进行联合训练,再使用本地数据将特征提取器和隐私分类器进行联合训练,完成对应的目标分类器和本地隐私分类器进行对抗训练。需要说明的是,特征提取器分别与目标分类器和隐私分类器一起训练,客户端初次在本地训练特征提取器时,特征提取器的作用是提取本地数据的特征,此时特征提取器并未隐藏隐私信息,当将特征提取器的输入作为目标分类器的输入去训练目标分类器,及将特征提取器的输出作为隐私分类器的输入进行对抗训练时,再根据特征提取损失函数更新特征提取器的参数后,得到的特征提取器已隐藏了本地数据的隐私信息,有
效避免了隐私信息泄漏,同时也为服务器下发的训练目标任务保留有用的信息,保证客户端联邦学习训练的准确率。
75.此外,为了减少客户端与服务器的通信次数,可以加快服务器模型的收敛速度,进而提高联邦学习的训练效率,由服务器根据联邦学习需求将批次大小与全局模型同时发送给各个客户端;对应的各个客户端根据本地数据集和所述特征提取器,采用所述特征提取损失函数对所述目标分类器和所述本地隐私分类器进行所述对抗训练,得到所述本地训练信息的步骤包括:
76.预先根据批次大小,将所述本地数据集划分为多个待训练数据集;所述批次大小与所述全局模型同时由所述服务器发送;
77.其中,批次大小由服务器根据实际训练需求确定,如2、3、10或15等等,在服务器下发的每轮训练任务中可以改变也可以不变,在整个联邦学习的同轮训练中每个客户端分配的批次大小都是相同的,各个客户端根据本地数据集的大小和收到的批次大小对本地数据集进行划分,得到多个待训练数据集,用于后续的分批次训练。
78.依次根据所述待训练数据集,通过所述特征提取器,完成所述目标分类器和本地隐私分类器的所述对抗训练,并判定当前迭代次数是否达到预设迭代次数,若达到,则停止所述对抗训练,得到所述本地训练信息,反之,则继续采用所述待训练数据集进行所述对抗训练。
79.其中,预设迭代次数原则上可以由服务器在下发全局模型时统一下发,也可以由每个客户端根据本地训练需求确定,且各个客户端对应的预设迭代次数可以相同也可以不同。为了保证训练的灵活性,本实施例优选的采用由每个客户端根据本地训练需求确定,每个客户端的每一轮迭代训练都会采用划分得到的所有待训练数据集完成对应的对抗训练,直至完成预设迭代次数的对抗训练后,才算完成客户端的本轮联邦训练学习,对应得到的本地训练信息才能够上传给服务器聚合使用,且每轮训练都是如此。
80.s13、将所述本地训练信息上传至所述服务器,以使所述服务器根据所述本地训练信息,聚合更新所述全局模型。
81.其中,服务器如何根据本地训练信息,聚合更新所述全局模型的过程,可参见下述服务器的联邦学习隐私保护方法的实施例,此处不再赘述。
82.本实施例中各个客户端根据本地计算能力和本地隐私需求,将服务器发送的全局模型划分为特征提取器和目标分类器,并从本地多个预设隐私分类器中确定对抗训练使用的本地隐私分类器,及根据目标分类器和本地隐私分类器选用的损失函数及预设隐私系数确定用于更新特征提取器参数的特征提取损失函数后,再根据服务器下发的批次大小和本地的预设迭代次数进行多批次多迭代的单轮训练,将训练得到的本地训练信息上传给服务器聚合得到对应的全局模型的方法,在保证联邦学习训练准确性的同时,不仅可以灵活调整全局模型在面对不同隐私攻击方法的隐私保护强度,有效防止联邦学习的内容级隐私泄露,进而保护各客户端的数据隐私,而且可以减少服务器与用户之间的迭代次数和加快服务器模型的收敛速度,进而有效提高联邦学习效率,提升联邦学习的服务质量。
83.在一个实施例中,如图3所示,提供了一种基于对抗训练的联邦学习隐私保护方法,所述方法应用于服务器,所述方法包括以下步骤:
84.s21、预先确定参与联邦学习的多个客户端,并向各个客户端发送全局模型,以使
各个客户端根据本地计算能力和本地隐私需求,将所述全局模型划分为特征提取器和目标分类器,选取本地隐私分类器,并根据本地数据集、预设隐私系数和所述特征提取器,对所述目标分类器和所述本地隐私分类器进行对抗训练,得到本地训练信息;
85.其中,参与联邦学习训练的客户端数量可以根据实际的目标训练任务由服务器确定,并在服务器建立与各个参与训练的客户端的通信连接后,向各个客户端发送全局模型时,由各个客户端将根据本地计算能力和本地隐私需求将全局模型划分得到特征提取器和目标分类器,结合根据本地数据隐私保护需求选取对应的本地隐私分类器完成对应的对抗训练任务。其中,各个客户端具体如何根据目标训练任务和全局模型完成对应的联邦学习训练过程参见上述客户端的联邦学习隐私保护方法的实施例,此处不再赘述。
86.s22、响应于各个客户端上传所述本地训练信息,根据所有所述本地训练信息,更新聚合更新所述全局模型;
87.其中,本地训练信息由各个客户端根据服务器全局模型,采用本地数据训练得到,其优选地包括本地模型、本地数据集大小、分类准确率及预设隐私系数,且服务器根据各个客户端的预设隐私系数λ的大小、本地数据集大小和分类准确率等因素综合设置联邦学习中各个客户端的聚合权重系数,可有效地提升联邦学习的准确率,提高联邦学习的服务质量。如图4所示,所述响应于各个客户端上传所述本地训练信息,根据所有所述本地训练信息,聚合更新所述全局模型的步骤s22包括:
88.s221、分别根据各个客户端的本地数据集大小、分类准确率及预设隐私系数的加权聚合,得到对应的权重分配指标;
89.其中,加权聚合方法包括几何平均、调和平均、平方平均和移动平均等,本实施例中采用现有的任一方法实现均可,此处不作具体限制。
90.s222、根据各个客户端的所述权重分配指标为所有客户端分配对应的聚合权重系数;
91.其中,各个客户端的聚合权重系数是由服务器基于下述三个原则分配得到:(1)客户端的预设隐私系数λ
i
越大,服务器为该客户端分配的聚合权重系数就越小;(2)客户端的本地数据集大小越大,服务器为该客户端分配的聚合权重系数就越大;(3)客户端在本地训练得到的目标分类器的准确率越高,服务器为该客户端分配的聚合权重系数就越大。
92.s223、根据所述聚合权重系数对所述本地模型进行加权平均,更新所述全局模型。
93.其中,服务器根据为各个客户端分配的聚合权重系数对客户端上传的本地模型进行聚合的具体方法如下:假设联邦学习第t轮训练参与的客户端有n个,服务器为第i个客户端分配的聚合权重系数为w
i
,在第t轮迭代训练中,第i个客户端上传的本地模型为p
it
,服务根据如下公式对所有客户端的本地模型进行加权平均,以更新服务器本地的全局模型参数,再使用更新参数后的模型进行本地训练得到服务器收敛的全局模型:用于后续的分类训练服务。
94.s23、检测所述全局模型是否收敛,若收敛,则停止训练,反之,则将所述全局模型发送给各个客户端,继续迭代训练。
95.其中,全局模型按照步骤s22更新得到后,还需要进一步检测该全局模型是否已经到达了预设收敛要求,具体的收敛要求由服务器根据应用需求确定,如可以是服务器全局
模型预设的准确率、精确度等,此处不作具体限制。若当前轮学习训练得到的全局模型已达到了预设收敛要求,即可停止后续的训练,反之,则需要采用由服务器将聚合更新得到的全局模型发送给各个客户端,以开始新一轮训练学习,直至服务器得到全局模型达到收敛要求。
96.本实施例通过服务器根据各个客户端划分特征提取器和目标分类器,以及选取本地隐私分类器后,通过对抗训练得到的本地训练信息聚合更新全局模型之前,根据各个客户端的预设隐私系数、本地数据集大小和分类准确率等因素综合设置各个客户端的聚合权重系数的方法,基于各客户端选择的隐私保护任务和隐私分类器各不相同,服务器可以聚合得到能够抵御多种隐私攻击的全局模型,而且可以灵活调整全局模型在面对不同隐私攻击方法的隐私保护强度,在有效防止联邦学习的内容级隐私泄露,保障各个客户端隐私数据安全的同时,进一步提升联邦学习模型的准确率。
97.在一个实施例中,如图5所示,提供了一种基于对抗训练的联邦学习隐私保护方法,所述方法包括以下步骤:
98.s31、服务器向多个客户端同时发送全局模型和批次大小;
99.s32、各个客户端根据本地计算能力和本地隐私需求,将所述全局模型划分为特征提取器和目标分类器,选取本地隐私分类器,根据预设隐私系数和所述本地隐私分类器,确定特征提取损失函数,根据所述批次大小将本地数据集划分批次,采用所述特征提取损失函数和所述特征提取器,对所述目标分类器和本地隐私分类器进行多批次多迭代对抗训练,得到本地训练信息,以及将所述本地训练信息上传至所述服务器;所述本地训练信息包括本地模型、本地数据集大小、分类准确率及所述预设隐私系数;
100.s33、所述服务器分别根据各个客户端的所述本地数据集大小、分类准确率和所述预设隐私系数,得到对应的权重分配指标,并根据所述权重分配指标为所有客户端分配对应的聚合权重系数,根据所述聚合权重系数对所述本地模型进行加权平均,更新所述全局模型。
101.本实施例中通过多个客户端和服务器的相互配合,实现了由服务器统一发送全局模型给各个客户端,各个客户端根据本地计算能力和本地隐私需求,将所述全局模型划分为特征提取器和目标分类器,选取本地隐私分类器后,进行多批次多迭代对抗训练,并将得到的本地训练信息上传给服务器,由服务器根据各个客户端上传的本地训练信息为各个客户端分配聚合权重系数聚合更新全局模型,直至完成联邦学习训练认为,既有效避免了联邦学习内容级隐私的泄漏,又有效提高了联邦学习训练的准确率和效率,进一步提升了联邦学习的服务质量。
102.需要说明的是,上述应用于客户端、服务器的基于对抗训练的联邦学习隐私保护方法,以及应用于客户端和服务器交互的基于对抗训练的联邦学习隐私保护方法描述的是相同的技术方案,可以相互参见。此外,虽然上述流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。
103.在一个实施例中,如图6所示,提供了一种基于对抗训练的联邦学习隐私保护系统,所述系统应用于客户端,所述系统包括:
104.第一任务模块11,用于接收服务器发送的全局模型;
105.第一训练模块12,根据本地计算能力和本地隐私需求,将所述全局模型划分为特征提取器和目标分类器,并从多个预设隐私分类器中,选择任一对应的所述预设隐私分类器作为本地隐私分类器,以及根据本地数据集和所述特征提取器,对所述目标分类器和所述本地隐私分类器进行对抗训练,得到本地训练信息;
106.第一聚合模块13,用于将所述本地训练信息上传至所述服务器,以使所述服务器根据所述本地训练信息,聚合更新所述全局模型。
107.在一个实施例中,如图7所示,提供了一种基于对抗训练的联邦学习隐私保护系统,所述系统应用于服务器,所述系统包括:
108.第二任务模块21,用于预先确定参与联邦学习的多个客户端,并向各个客户端发送全局模型,以使各个客户端根据本地计算能力和本地隐私需求,将所述全局模型划分为特征提取器和目标分类器,选取本地隐私分类器,并根据本地数据集、预设隐私系数和所述特征提取器,对所述目标分类器和所述本地隐私分类器进行对抗训练,得到本地训练信息;
109.第二聚合模块22,用于响应于各个客户端上传所述本地训练信息,根据所有所述本地训练信息,聚合更新所述全局模型;
110.模型检测模块23,用于检测所述全局模型是否收敛,若收敛,则停止训练,反之,则将所述全局模型发送给各个客户端,继续迭代训练。
111.在一个实施例中,如图8所示,提供了一种基于对抗训练的联邦学习隐私保护系统,所述系统包括服务器31和多个客户端32;
112.所述服务器31包括任务下发模块311、模型聚合模块312和模型检测模块313;
113.所述任务下发模块311,用于向多个客户端同时发送全局模型和批次大小;
114.所述模型聚合模块312,用于分别根据各个客户端的所述本地数据集大小、分类准确率和所述预设隐私系数,得到对应的权重分配指标,并根据所述权重分配指标为所有客户端分配对应的聚合权重系数,根据所述聚合权重系数对所述本地模型进行加权平均,更新所述全局模型;
115.所述模型检测模块313,用于检测所述全局模型是否收敛,若收敛,则停止训练,反之,则将所述全局模型发送给各个客户端,继续迭代训练;
116.所述客户端32包括任务接收模块321、数据划分模块322和模型训练模块323;
117.所述任务接收模块321,用于接收服务器发送的全局模型,根据本地计算能力和本地隐私需求,将所述全局模型划分为特征提取器和目标分类器,选取本地隐私分类器,根据预设隐私系数和所述本地隐私分类器,确定特征提取损失函数;
118.所述数据划分模块322,用于根据所述批次大小将本地数据集划分为多个待训练数据集;
119.所述模型训练模块323,用于依次根据所述待训练数据集,通过所述特征提取器和所述特征提取损失函数,完成所述目标分类器和所述本地隐私分类器的所述训练目标任务对应的对抗训练,并判定当前迭代次数是否达到预设迭代次数,若达到,则停止所述对抗训练,得到本地训练信息,以及将所述本地训练信息上传至所述服务器,反之,则继续采用所述待训练数据集进行所述对抗训练;所述本地训练信息包括本地模型、本地数据集大小、分类准确率及所述预设隐私系数。
120.需要说明的是,上述关于基于对抗训练的联邦学习隐私保护系统可应用于包括服
务器和多个客户端的人脸属性识别联邦学习场景,采用该系统完成各个客户端具有隐私保护的联邦学习,以实现高效、高准确率且高隐私保护的人脸属性识别,具体应用为:服务器把本次需要联合学习的人脸属性识别目标任务、特征提取器和目标分类器下发到各个客户端,且人脸属性一般包括性别、年龄、人种、头饰等;各个客户端下载得到待训练的特征提取器和目标分类器,及需要在对应的训练目标任务为识别人脸图像所属用户的年龄,即,客户端需将采用本地人脸图像数据输入特征提取器提取的对应人脸特征输入目标分类器识别出人脸特征所对应的人脸图像的所属年龄,此外,若客户端设定本地想保护的人脸隐私属性为性别,可将特征提取器输出的人脸特征作为抗特征推理攻击隐私分类器的输入,训练对应的本地隐私分类器来推断人脸图像所属用户的性别,且使用目标任务分类器损失函数减去预设倍数(预设隐私系数)的本地隐私分类器损失函数作为特征提取器损失函数,并采用该特征提取器损失函数更新特征提取器中的参数;与此同时,各个客户端为加快收敛速度,执行多轮多批次多迭代对抗训练,得到包括预设隐私系数、本地数据集大小、分类准确率和本地模型的本地训练信息上传给服务器;服务器根据各个客户端的预设隐私系数λ和本地数据集大小、分类准确率等综合因素分配各个客户端的聚合权重系数,并使用该聚合权重系数对各个客户端上传的本地模型进行聚合,更新本地全局模型参数后,进一步训练得到服务器人脸属性识别全局模型,且在检验给全局模型未到的预设收敛要求时,使用将全局模型重新下发给所有客户端开始新一轮训练学习,直至得到满足预设收敛条件的人脸属性识别全局模型。
121.关于基于对抗训练的联邦学习隐私保护系统的具体限定可以参见上文中对于基于对抗训练的联邦学习隐私保护方法的限定,此处不再赘述。上述基于对抗训练的联邦学习隐私保护系统中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
122.图9示出一个实施例中计算机设备的内部结构图,该计算机设备具体可以是终端或服务器。如图9所示,该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示器和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于对抗训练的联邦学习隐私保护方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
123.本领域普通技术人员可以理解,图9中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算设备可以包括比途中所示更多或更少的部件,或者组合某些部件,或者具有同的部件布置。
124.在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述方法的步骤。
125.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算
机程序被处理器执行时实现上述方法的步骤。
126.综上,本发明实施例提供的一种基于对抗训练的联邦学习隐私保护方法及系统,其基于对抗训练的联邦学习隐私保护方法由客户端根据本地计算能力和本地隐私需求,将服务器发送的全局模型划分为特征提取器和目标分类器,并从多个预设隐私分类器中,选择任一对应的预设隐私分类器作为本地隐私分类器,并根据本地隐私分类器和预设隐私系数确定特征提取器损失函数后,采用本地数据和特征提取器损失函数进行多迭代多批次目标分类器与本地隐私分类器的对抗训练,并将训练得到的包括本地模型、本地数据集大小、分类准确率及预设隐私系数的本地训练信息上传给服务器,再由服务器根据各个客户端的本地数据集大小、分类准确率及预设隐私系数为所有客户端分配对应的聚合权重系数后,对所有本地模型聚合更新全局模型。该方法在实际联邦学习应用上,不仅有效保护了各客户端的数据隐私,避免了联邦学习内容级隐私泄漏风险的发生的同时,而且减少了客户端与服务器的通信次数,有效提高了联邦学习训练的准确率和效率,进一步提升了联邦学习的服务质量。
127.本说明书中的各个实施例均采用递进的方式描述,各个实施例直接相同或相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。需要说明的是,上述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
128.以上所述实施例仅表达了本技术的几种优选实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和替换,这些改进和替换也应视为本技术的保护范围。因此,本技术专利的保护范围应以所述权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献