本发明涉及人工智能,尤其涉及一种基于全局总和估计的异构混合数据的联邦学习方法。
背景技术:
1、随着科学技术的发展,现今社会数字化进程不断加快,人们对生活水平的要求不断提高,包括智能家居、智慧医疗和虚拟现实等超多领域的智能应用逐渐兴起;多样的应用产生了海量的连接数据,为了分析计算如此庞大的数据,人工智能算法应运而生;然而,传统的ai应用程序是基于云计算中心的,即云计算中心从各个客户端或小型化计算中心收集超大规模数据之后,进一步训练机器学习模型,但是,这样的方法面临两大挑战,包括高昂的通信成本和延迟带来的通信质量损失,因数据隐私无法上传原始数据。
2、为应对以上挑战,联邦学习作为一种新兴的具有隐私保护功能的分布式安全计算架构,成为当下研究的热点,为机器学习等ai算法提供隐私计算支撑;在联邦学习框架下,我们无需访问即可在海量客户端(例如,移动设备或机构)上进行协作模型学习他们的原始数据。具体地,fl的系统中有多个拥有本地数据分布式机构,还有一个中心控制服务器。各个分布式机构之间无法直接交换数据,只能通过中心服务器迭代相关信息交换进行模型训练。这样既可以有效避免传递原始数据,又可以充分利用各方数据的潜在信息。根据数据在网络中的分布情况,fl任务可分为三类,即横向联邦学习(horizontal federatedlearning,hfl)问题、纵向联邦学习(vertical federated learning,vfl)问题,以及混合联邦学习(hybrid federated learning,hbfl)问题。
3、对于混合联邦学习技术,现有提出的一种称为混合联邦匹配平均(hybridfederated matched averagingmethod,hyfem)的块坐标下降(block coordinatedescent,bcd)类型算法。具体来说,每个客户端执行本地随机梯度下降(stochasticgradient descent,sgd)以学习本地模型并训练特征提取器,然后将其上传到服务器以学习全局特征提取器。由于局部推理模型和全局提取器之间的维度不匹配,服务器会动态优化线性映射以匹配它们两者。hyfem在某种意义上是灵活的,因为客户端可以使用部分特征(通过使用其本地参数)进行局部推理,也可以通过请求服务器上的全局特征提取器进行全局推理来使用全部特征。但是hyfem仅限于具有均匀模式的hbfl设置,例如多视图学习问题。它无法处理更一般的问题,即非均匀模式案例。
4、因此,传统的fl算法都是分别针对hl、vl和均匀模式下的hbfl框架,无法处理包含以上所有架构在内的最广义的非均匀hbfl问题。然而现实中更多的是非均匀模式的hbfl场景,即每个机构可能拥有不同用户的不同特征的原始数据。所以如何基于严格的理论分析更简单且高效地处理非均匀模式下的hbfl成为亟待解决的问题。
5、需要说明的是,在上述背景技术部分公开的信息只用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
技术实现思路
1、本发明的目的在于克服现有技术的缺点,提供了一种基于全局总和估计的异构混合数据的联邦学习方法,解决了现有的最广义的非均匀hbfl问题。
2、本发明的目的通过以下技术方案来实现:一种基于全局总和估计的异构混合数据的联邦学习方法,所述联邦学习方法包括:
3、配置系统网络环境为1个中心服务器和m个移动的客户端,并构建客户端本地数据库得到全局数据矩阵其中s表示样本个数,d表示每个样本的特征数,进而令其中表示第i个样本,并且,在系统中,每个客户端仅拥有部分的样本和部分的特征;
4、构建客户端本地数据矩阵:首先获取客户端本地数据集,其中只含有部分样本和这些部分样本的部分特征;然后,进行充零操作,将客户端本地数据库矩阵所不含的样本和特征全部设置为零,得到客户端m拥有的数据矩阵表示为其中s表示样本个数,d表示每个样本的特征数,表示构建的第m个客户端的第i个样本,i∈[s]表示i=1,...,s.,,共有d个特征,如果客户端m拥有样本i的第j个特征,那么客户端处的特征等于全局数据矩阵中对应的特征,即(am,i)j=(ai)j,如果客户端不能观察到该特征,则令特征为零,即(am,i)j=0;
5、分析客户端本地数据矩阵与全局数据矩阵的关系,从本地数据矩阵的建立过程可得,全局数据矩阵的每个样本的特征都是所有客户端本地矩阵样本的特征总和,即
6、构建系统模型,构建基于非均匀数据的hbfl问题;
7、设置模型参数;
8、本地模型更新:在第r=1,…,t轮迭代时,每个客户端m=1,…,m平行地进行q次本地模型更新,对于客户端m,客户端从中心服务器处收到网络的第一层参数θr,网络第二层及后续多层参数xr,第一层网络输出估计参数然后初始本地多步迭代的第0步为
9、模型聚合与广播:每个客户端将本地模型上传至中心服务器,中心服务器对各个客户端模型进行平均后回传给各个客户端;
10、重复t轮本地模型更新步骤和模型聚合与广播步骤,得到基于第t轮获得的参数θ和x的共同神经网络模型;
11、每个客户端或者中心服务器将含有整个特征集的样本数据输入学习到的共同神经网络模型中,从而获得图像高准确率的分类。
12、所述构建客户端本地数据库的具体内容如下:
13、利用成像设备抓取物体某个角度的图像,并记录每个物体的标签,以作为图像分类任务的数据来源,并判断图像的类型以确定数据分布;
14、将每个物体看作一个样本,各个客户端获得的图像作为部分特征集,并设置每个客户端仅拥有一部分的样本集和特征集,且不同客户端拥有的特征集不重叠;
15、将每个样本作为数据矩阵的一行,每个客户端的特征图像则拉成一个向量,作为数据矩阵的部分列;
16、设置表示全局数据矩阵,其中s表示样本个数,d表示每个样本的特征数,进而其中表示第i个样本,每个样本含有d个特征。
17、所述构建系统模型的具体内容如下:
18、选取某一深度神经网络模型进行图像分类,将深度神经网络模型分为第一层和后续多层两个部分,第一层为全连接层,后续多层包括其它各种类型的深度学习网络;
19、设置表示第一层的参数,表示后续多层的参数,设置维度为j,且k为第二层神经元的个数;
20、对于样本ai,设置深度神经网络的损失函数为
21、所有的客户端通过与中心服务器交互信息,最小化损失函数,训练出一个共同的深度神经网络模型以完成联邦学习任务。
22、所述构建基于非均匀数据的hbfl问题包括:
23、将x向量化为x=vec(x),令满足然后,确定损失函数最后构建基于非均匀数据的hbfl问题
24、求解问题关于变量x和θ的导数设置分别为和其中,表示关于aix的导数。
25、所述设置模型参数的步骤具体包括以下内容:
26、中心服务器随机初始全局变量x0和θ0,然后将它们广播给所有的客户端;
27、引入辅助变量估计损失函数l关于θ的梯度:每个客户端m引入全局总和模型zm,i,i∈s,中心服务器引入zi,i∈s,以估计全局总和即客户端本地数据矩阵总和与神经网络第一层参数的线性组合,也是所有客户端的深度神经网络中第一层网络输出的总和;
28、每个客户端m初始辅助变量为上传给中心服务器,随后中心服务器初始为它们的平均并传回各个客户端;
29、设每个客户端本地更新q次,客户端与中心服务器一共交互t轮,每轮交互客户端均上传本地模型,中心服务器将所有收到的模型进行平均聚合,然后再分发给各个客户端。
30、所述本地模型更新的步骤具体包括以下内容:
31、a1、随机选取一批样本集表示为其中样本数量为b,q=1,…,q;
32、a2、根据选取的样本集更新全局总和模型得到即每个客户端m在收到中心服务器下发的后,先加上当前本地第一层网络输出的m倍,再减去上一轮中本地第一层网络输出的m倍;
33、a3、基于本地估计的全局网络第一层输出计算损失函数关于网络后续多层参数θ的导数然后以步长α进行随机梯度下降,得到
34、a4、基于本地估计的全局第一层输出计算损失函数关于网络首层参数x的导数然后乘上m倍,再以步长β进行随机梯度下降,得到
35、a5、重复a1-a4步骤q次;
36、将第q步本地估计的全局网络第一层输出同步到每一个样本上,得到即基于所有的样本,每个客户端m在基础上,首先加上第r轮q步本地第一层网络输出的m倍,再减去第r-1轮中本地第一层网络输出的m倍。
37、所述模型聚合与广播的步骤具体包括以下内容:
38、每个客户端将本地模型型中第一层网络参数第二层及后续多层网络参数还有辅助变量上传到中心服务器;
39、中心服务器收到各个客户端的模型之后,进行平均分别得到和
40、中心服务器将以下四个平均模型传回各个客户端,包括平均第一层网络参数平均第二层及后续多层网络参数还有平均辅助变量
41、本发明具有以下优点:一种基于全局总和估计的异构混合数据的联邦学习方法,基于数据零填充操作和首层网络输出总和估计模型提出的混合联邦学习算法可以有效解决最广义的非均匀hbfl问题。