一种基于二阶导数解决联邦学习中数据不平衡问题的方法

文档序号:27554453发布日期:2021-11-24 23:47阅读:306来源:国知局
一种基于二阶导数解决联邦学习中数据不平衡问题的方法

1.本发明涉及边缘计算领域,尤其涉及一种基于二阶导数解决联邦学习中数据不平衡问题的方法。


背景技术:

2.随着各种各样边缘设备的增多,比如智能电脑、智能手机、物联网设备等,越来越多的数据被用于机器学习训练,但是将数据传输到服务器集中训练的传统训练模式会带来许多问题,比如巨大的通信开销、有限的计算资源以及隐私安全隐患。并且网络空间安全已经成为国家安全不可忽视的重要组成部分,重视用户数据隐私和安全已经称为世界性的趋势与共识,在2018年5月欧盟出台《通用数据保护条例》之后,更是对这种数据处理模式提出了重大挑战。如何在满足数据隐私、安全和监管要求的前提下,设计出一个分布式机器学习框架,让模型能在保证性能的基础上,更加高效准确使用各方数据但又不干涉各方数据隐私已经称为了当前的研究重点。
3.联邦学习框架被提出以解决上述问题。联邦学习的核心思想是:在各个数据提供方的数据不离开本地的前提下,通过某种加密机制进行参数交换,使得在不违反数据隐私法规的情况下,构建出一个虚拟的全局模型。这个全局模型所达到的效果如同将各方数据直接聚合在一起所建立的模型一样,甚至更好,所不同的是,在建立全局模型时数据本身不移动,因此不会泄露用户隐私和影响数据合规性。
4.然而,当前联邦学习仍然存在一些挑战:其中之一是统计挑战,即不同客户端拥有的数据来源不同并且可能包含他们自己的偏好,由此产生的多样性使得全局模型的收敛变的困难和缓慢。统计挑战分为三类:1)大小不平衡:每个客户端上数据量不均匀;2)局部不平衡:每个客户端上数据不遵循同一分布;3)全局不平衡:全局数据(所有客户端数据的集合)类别不平衡,样本数量多的类称为大类,样本数量少的类称为小类。
5.有研究表明全局模型精度的降低,特别是当本地数据以非独立同分布方式分布(即局部不平衡)时,可归因于本地模型和全局模型之间的权重差异。目前已经提出了很多联邦学习优化算法:联邦平均算法建议选择一部分客户端参加每轮的培训,此方法在处理独立同分布数据时可取得相对较优秀的结果,但是在面对非独立同分布数据时,联邦平均算法并没有减小权重差异,所以效果不尽人意。联邦曲率算法受弹性权重合并的启发,计算本地模型的费希尔信息矩阵,并使用它们来减少本地训练期间的权重发散,然而,即使使用带宽优化策略,要传输的参数数量是联邦平均算法的三倍;联邦修正算法在边缘客户端预设的损失函数中增加了一个正则项,从而通过保持本地更新接近全局模型来减少本地训练期间的权重发散,然而,它对所有参数都施加了一个相同程度的惩罚,虽然可以减少权重发散,但降低了全局模型的收敛速度。
6.为此,需要一种新的联邦学习优化算法同时提高全局模型的精度和收敛速度。


技术实现要素:

7.针对现有技术的不足,本发明针对边缘计算场景中的统计挑战,提出了一种基于二阶导数解决联邦学习中数据不平衡问题的方法,通过给预设优化目标增加正则项来防止本地模型与全局模型差异过大以及减轻大类对全局模型的贡献,从而解决了局部和全局不平衡对全局模型训练的影响。
8.本发明可以在保证用户数据隐私的前提下共享数据,打破“数据孤岛”的困境,让不同参与方之间的数据在安全的前提下共享,实现联合建模,能够避免由于局部和全局不平衡而带来的全局模型精度低、收敛速度慢的问题。
9.为了实现上述目标,本发明提出一种基于二阶导数解决联邦学习中数据不平衡问题的方法,所述方法包括以下步骤:
10.s1:云端服务器初始化全局模型和代理数据集d
proxy
,d
proxy
由边缘客户端上传少量本地数据构成,是一个可以表征全局数据失衡信息的数据集;
11.s2:当第一轮全局迭代或者本轮迭代的测试精度相比于上轮迭代的测试精度小于某个阈值时,云端服务器通过计算损失函数关于全局模型参数的二阶导数来获得全局模型参数重要性权重;
12.s3:云端服务器向边缘客户端下发全局模型、全局模型参数重要性权重和全局数据失衡信息;
13.s4:边缘客户端根据收到的全局模型、全局模型参数重要性权重和全局数据失衡信息构建正则项,将正则项添加到预先设置的优化目标上构成新的优化目标,从而减小本地模型与全局模型之间的差异以及降低大类对全局模型的贡献,然后利用本地数据在本地执行模型训练,并将训练好的本地模型上传给云端服务器;
14.s5:云端服务器利用接收到的本地模型更新全局模型;
15.s6:云端服务器判定全局模型精度是否达到预设值,未达到则返回s2,达到则训练结束。
16.以上本发明的技术方案,与现有相比,其显著的有益效果在于:
17.(1)本发明在云端服务器设置一个可以反映全局数据失衡信息的代理数据集,通过计算损失函数关于全局模型参数的二阶导数获得全局模型参数重要性权重,该权重可以反映参数对任务的重要程度,由于模型精度的降低主要归因于本地模型和全局模型之间的差异,所以基于该权重给边缘客户端的预设优化目标添加正则项从而构成新的优化目标,对那些重要的参数设置大的惩罚,训练的目的是使优化目标尽可能的小,那么添加的正则项也需要尽可能的小,所以可以限制其改变,使其更接近全局模型,对那些不那么重要的参数设置小的惩罚。可以在防止本地模型与全局模型差异过大的同时,尽可能地将关于不同边缘客户端的知识集成到全局模型中,极大程度上解决了局部不平衡对全局模型训练的影响,使全局模型的训练更加高效。
18.(2)本发明通过分析代理数据集获得全局数据失衡信息,再利用关于大类的全局模型参数重要性权重,该权重可以反映参数对识别大类任务的重要程度,给边缘客户端的预设优化目标添加正则项从而构成新的优化目标,限制在识别大类任务中重要参数的变化,降低大类对全局模型的贡献,从而减轻全局不平衡对全局模型精度的影响,提高全局模型的训练效率。
附图说明
19.结合附图从下面的描述中可以更加全面地理解本发明教导的前述和其他方面、实施例和特征。本发明的其他附加方面例如示例性实施方式的特征和/或有益效果将在下面的描述中显见,或通过根据本发明教导的具体实施方式的实践中得知。
20.在附图中,在各个图中示出的每个相同或近似相同的组成部分可以用相同的标号表示。为了清晰起见,在每个图中,并非每个组成部分均被标记。现在,将通过例子并参考附图来描述本发明的各个方面的实施例,其中:
21.图1是本发明一种基于二阶导数解决联邦学习中数据不平衡问题的方法的架构图。
22.图2是本发明一种基于二阶导数解决联邦学习中数据不平衡问题的方法的流程图。
具体实施方式
23.下面结合实施例和说明书附图对本发明做进一步说明,但不限于此。
24.如图1所示,本发明系统由两个实体构成:边缘客户端和云端服务器。描述如下:
25.(1)边缘客户端:用户的终端设备具有一定的数据计算和存储功能,利用本地数据在本地进行本地模型训练,为了解决隐私泄露问题,所述边缘客户端先独立地对本地数据和本地模型进行满足差分隐私的保护处理,然后仅上传本地模型给云端服务器进行聚合。
26.(2)云端服务器:存储在大型数据中心的云服务器具有强大的数据计算和存储能力,对边缘客户端上传的本地模型进行差分隐私聚合,然后将更新好的全局模型和全局模型参数重要性权重下发至边缘客户端,开始下一轮的训练。
27.结合图2,本发明提出的一种基于二阶导数解决联邦学习中数据不平衡问题的方法,所述方法包括以下步骤:
28.s1:云端服务器初始化全局模型和代理数据集d
proxy
,d
proxy
由边缘客户端上传少量本地数据构成,是一个可以表征全局数据失衡信息的数据集;
29.s2:当第一轮全局迭代或者本轮迭代的测试精度相比于上轮迭代的测试精度小于某个阈值时,云端服务器通过计算损失函数关于全局模型参数的二阶导数来获得全局模型参数重要性权重;
30.s3:云端服务器向边缘客户端下发全局模型、全局模型参数重要性权重和全局数据失衡信息;
31.s4:边缘客户端根据收到的全局模型、全局模型参数重要性权重和全局数据失衡信息构建正则项,将正则项添加到预先设置的优化目标上构成新的优化目标,从而减小本地模型与全局模型之间的差异以及降低大类对全局模型的贡献,然后利用本地数据在本地执行模型训练,并将训练好的本地模型上传给云端服务器;
32.s5:云端服务器利用接收到的本地模型更新全局模型;
33.s6:云端服务器判定全局模型精度是否达到预设值,未达到则返回s2,达到则训练结束。
34.进一步地,步骤s2中,所述获得全局模型参数重要性权重的具体过程如下:
35.s2

1:将代理数据集d
proxy
按照数据类别划分为不同的子集记为s={s1,s2,...,
s
p
,...},例如汽车,火车,飞机等,给定一个数据样本和全局模型w
g
,关于数据样本的全局模型参数重要性权重可用如下预设的损失函数关于全局模型参数的二阶导数公式计算:
[0036][0037]
其中l(.,.)是预设的损失函数,是全局模型关于数据样本的输出。
[0038]
s2

2:通过累加s
p
中所有数据样本的以获得关于类别p的全局模型参数重要性权重可以反映参数对识别类别p任务的重要程度,其中p可以是汽车,火车,飞机等,如下式所示:
[0039][0040]
其中|a
p
|是代理数据集中类别p的样本数;
[0041]
s2

3:通过累加s中所有类别的以获得全局模型参数重要性权重γ,γ可以反映参数对交通工具图像识别任务的重要程度,如下式所示:
[0042][0043]
其中|s|是代理数据集中的类别数。
[0044]
进一步地,步骤s3中,所述全局数据失衡信息具体是指:通过分析代理数据集d
proxy
得到的大类和小类的信息,记为i,其中大类指代理数据集中样本数量更多的类别。
[0045]
进一步地,步骤s4中,所述边缘客户端根据收到的全局模型、全局模型参数重要性权重和全局数据失衡信息i计算正则项的具体过程如下:
[0046]
s4

1:根据收到的全局模型和全局模型参数重要性权重计算正则项其中w
k,ij
为边缘客户端k本地模型中第i行第j列的模型参数,γ
i,j
为全局模型中第i行第j列的模型参数的重要性权重,λ为超参数,r1可以限制本地模型与全局模型的权重差异,从而提高交通工具图像识别任务的精度。
[0047]
s4

2:根据收到的全局模型参数重要性权重和全局数据失衡信息i计算正则项其中w
k
为边缘客户端k的本地模型,μ为超参数,r2可以降低大类对全局模型的贡献,从而提高识别小类数据的精度。
[0048]
进一步地,步骤s4中,新的优化目标具体是指:h
k
(w
k
)=l
k
(w
k
)+r1+r2,其中l
k
(w
k
)为边缘客户端k预设的优化目标。
[0049]
进一步地,步骤s5中,云端服务器利用接收到的本地模型更新全局模型是采用加权平均的方法,具体是指:在第t轮训练中,更新的全局模型权平均的方法,具体是指:在第t轮训练中,更新的全局模型其中为第
t轮训练中边缘客户端k的本地模型,n为上传本地模型的边缘客户端的数量。
[0050]
综上所述,本发明提出的一种基于二阶导数解决联邦学习中数据不平衡问题的方法通过计算损失函数关于全局模型参数的二阶导数获得参数对任务的重要程度,然后有针对性的控制参数的变化,能够在防止本地模型和全局模型差异过大以及降低大类对全局模型贡献的同时,尽可能地将关于不同边缘客户端的知识集成到全局模型中,有效解决了局部和全局不平衡对联邦学习的影响,使模型训练更加高效。
[0051]
虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视权利要求书所界定者为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1