基于模型参数异步更新的个性化联邦学习方法

文档序号:31660869发布日期:2022-09-27 23:03阅读:211来源:国知局
基于模型参数异步更新的个性化联邦学习方法

1.本发明涉及一种联邦学习方法,尤其是一种基于模型参数异步更新的个性化联邦学习方法。


背景技术:

2.近年来,随着人工智能技术的不断发展,保护数据隐私和安全已成为其重要的发展趋势。联邦学习的出现,为解决数据隐私条件下的机器学习问题提供了有效途径。2016年谷歌首次提出联邦学习,并通过一篇开创性文献konen j,mcmahan h b,ramage d,et al.federated optimization:distributed machine learning for on-device intelligence[j].2016.详细介绍了联邦学习,其核心思想是在服务器或者边缘设备上训练一个最大似然模型。图1为横向联邦框架示意图,有四个步骤组成,首先,各客户端的本地模型训练;其次,各客户端把更新之后的模型参数发送给服务器;再次,服务器对各客户端发送的参数进行聚合;最后,服务器把聚合更新之后的参数发送各客户端。各客户端开始下一时刻的迭代,重复循环,直至整个训练过程收敛。
[0003]
后来,随着研究的不断深入,在联邦学习方面,mcmahan h b,moore e,d ramage,et al.communication-efficient learning of deep networks from decentralized data[j].2016.提出联邦平均算法(fedavg),在服务器使用模型平均对客户端所上传的参数进行聚合更新,并从具有非独立同分布数据的客户端子集构建全局模型;li x,huang k,yang w,et al.on the convergence of fedavg on non-iid data[j].2019.进一步证明了联邦平均算法在non-iid数据上的收敛性;tian l,sahu a k,zaheer m,et al.federated optimization for heterogeneous networks.2019.提出了fedprox算法,在fedavg的基础上增加一个近似项,对全局模型进行优化,从而允许了客户端的本地更新的差异性;xie m,long g,shen t,et al.multi-center federated learning[j].2020.提出一个具有多个中心服务器的联邦学习框架,根据欧式距离把具有相似模型参数的客户端划分为一个中心服务器,以此来解决数据分布的差异性问题。
[0004]
在减少通信方面,reisizadeh a,mokhtari a,hassani h,et al.fedpaq:a communication-efficient federated learning method with periodic averaging and quantization[c]//international conference on artificial intelligence and statistics.pmlr,2020:2021-2031.提出了fedpaq算法,该方法具有定期平均和量化功能,以此减少通信成本;dai x,yan x,zhou k,et al.hyper-sphere quantization:communication-efficient sgd for federated learning[j].2019.提出一个通用框架,能够对通信效率和梯度精度进行权衡;wang j,joshi g.cooperative sgd:a unified framework for the design and analysis of communication-efficient sgd algorithms[j].2018.提出在将本地模型发送到服务器之前执行多轮的本地优化以此来减少通信成本。
[0005]
尽管上述方法在保护数据隐私和减少通信方面有较大的贡献,但是他们忽略了迭
代过程中本地客户端模型的性能。deng y,kamani m m,mahdavi m.adaptive personalized federated learning.2020证明了当数据的非独立分布性增大时,全局模型对客户端本地数据的泛化误差也显著增加,造成训练出来的全局模型很难适应每个客户端的特定数据任务。因此,联邦学习在客户端本地进行个性化建模是迫在眉睫的。


技术实现要素:

[0006]
本发明的一个目的是通过提出一种基于模型参数异步更新的个性化联邦学习方法,以解决上述背景技术中提出的缺陷。
[0007]
本发明采用的技术方案如下:包括在服务器端根据各客户端数据大小对模型参数加权聚合,表示为:
[0008][0009]
其中nk为第k个客户端的样本数据大小,n为训练样本的总数,为第k个客户端t+1时刻的模型参数;客户端使用梯度下降法对本地模型全部参数进行更新,公式如下;
[0010][0011]
损失函数定义为:
[0012][0013]
其中fk(w)为第k个客户端的损失函数
[0014]
作为本发明的一种优选技术方案:所述。
[0015]
所述服务器全局模型为w
t
,客户端本地模型为wk。
[0016]
作为本发明的一种优选技术方案:所述。
[0017]
对于具有l层的网络模型,将服务器的模型参数w
t
扩展表示为{(w
t
)1,(w
t
)2,...,(w
t
)
l
}。
[0018]
作为本发明的一种优选技术方案:所述。
[0019]
客户端的模型参数逐层表示为{(wk)1,(wk)2,...,(wk)
l
}。
[0020]
作为本发明的一种优选技术方案:所述。
[0021]
还包括计算第l层服务器与客户端的余弦相似性,表示如下:
[0022][0023]
其中,(w
t
)
l
为服务器第l层的模型参数,(wk)
l
表示客户端第l层的模型参数,如果p越接近1,则代表服务器端的l层与客户端的l层参数越相似。
[0024]
作为本发明的一种优选技术方案:所述。
[0025]
在有k个客户端,逐层逐个计算余弦相似性有以下公式:
[0026][0027]
作为本发明的一种优选技术方案:所述。
[0028]
还包括求s
l
针对k个客户端的均值:
[0029][0030]
判断:
[0031][0032]
其中,对比变化值,如果l层针对l-1变化的绝对值远大于l-1针对l-2变化的绝对值;此时输出l,并根据l把t时刻模型w
t
划分为基础层和个性层
[0033]
本发明的有益效果是:
[0034]
(1)为有效挖掘模型中表示共性和个性特征的基础层与个性层,提出一种模型参数分层方法。通过构建距离度量函数,充分描述共性特征与个性特征之间的差异性;同时,通过层与层间分布距离设置阈值,有效划分表示共性特征的基础层与个性特征的个性层;实验证明,该方法能够有效划分基础层与个性层。
[0035]
(2)为提高个性化建模准确性,提出模型参数异步更新策略。首先,基于先基础层后个性层的更新原则,对服务器全局模型进行更新。服务器到客户端参数的传输过程,每轮训练都传输基础层,对个性层间隔t轮进行传输;其次,客户端本地模型,使用私有数据更新个性层建立个性化模型。最后,相较于现有方法,该策略不仅能提高个性化模型精度,而且能显著降低通信成本。
附图说明
[0036]
图1为本发明横向联邦框架示意图;
[0037]
图2为本发明优选实施例中个性化定制联邦学习框架;
[0038]
图3为本发明优选实施例中dnn模型分层异步更新策略图;
[0039]
图4为本发明优选实施例中数据集示意图;
[0040]
图5为本发明优选实施例中dnn全局模型与客户端模型余弦相似性图;
[0041]
图6为本发明优选实施例中dnn模型不同个性层数量下的个性化模型准确率图;
[0042]
图7为本发明优选实施例中cnn全局模型与客户端模型余弦相似性图;
[0043]
图8为本发明优选实施例中cnn模型不同个性层数量下的个性化模型准确率图。
具体实施方式
[0044]
需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0045]
参照图1-8,本发明优选实施例提供了一种基于模型参数异步更新的个性化联邦学习方法,其中,本实施例中首先提出一种联邦平均算法,是为了获得google应用程序的中心预测模型而开发的,可以嵌入到手机中以保护用户的隐私。其在服务器端根据各客户端数据大小对模型参数加权聚合,表示为:
[0046][0047]
其中nk为第k个客户端的样本数据大小,n为训练样本的总数,为第k个客户端t+1时刻的模型参数。客户端使用梯度下降法对本地模型全部参数进行更新,公式如下:
[0048][0049]
损失函数定义为:
[0050][0051]
其中fk(w)为第k个客户端的损失函数。
[0052]
迁移学习是利用在解决一个问题中获得的知识来解决另一个相关问题,而不是从头开始学习。受模型迁移的启发:模型中的基础层适用于不同任务的共性特征,这意味着模型参数中一部分的参数(基础层参数)表示不同数据集的共性特征;模型中的个性层则学习与特定数据集相关的个性特征。进一步说,迁移学习可以实现联邦学习的个性化定制,服务器端把全局模型的部分参数发送给客户端,客户端把服务器传送的模型参数冻结并利用本地数据来训练剩下的模型参数以此来达到个性化。基于以上启发,本实施例提出了一种模型分层算法,并使用模型迁移在客户端本地实现个性化定制。
[0053]
本实施例的个性化联邦学习框架如图2所示,其中,nm表示为第m个客户端,(xi,yi)m为第m个客户端的私有数据;wm为其模型参数,其中,表示为第m个客户端的基础层模型参数,为个性层模型参数,且每个客户端具有不同的数据分布。
[0054]
以clientnm为例,详细说明本实施例的个性化联邦学习框架。如图2,客户端nm有两部分,一部分冻结基础层参数并更新个性层参数另一部分则不冻结基础层参数,而是更新全部参数wm,并根据模型参数异步更新策略决定当前时刻是否发送全部模型参数到服务器。服务器聚合客户端所发送的模型参数,再将其发送至各客户端,以此循环。
[0055]
本实施例中,服务器全局模型为w
t
,客户端本地模型为wk。对于具有l层的网络模型,将服务器的模型参数w
t
扩展表示为{(w
t
)1,(w
t
)2,...,(w
t
)
l
},同样客户端的模型参数逐层表示为{(wk)1,(wk)2,...,(wk)
l
},计算第l层服务器与客户端的余弦相似性,表示如下:
[0056][0057]
上式中,(w
t
)
l
为服务器第l层的模型参数,(wk)
l
表示客户端第l层的模型参数。如果p越接近1,则代表服务器端的l层与客户端的l层参数越相似。对于有k个客户端,逐层逐个计算余弦相似性有以下公式:
[0058][0059]
求s
l
针对k个客户端的均值:
[0060][0061]
判断:
[0062][0063]
这里,对比变化值,如果l层针对l-1变化的绝对值远大于l-1针对l-2变化的绝对值。此时输出l,并根据l把t时刻模型w
t
划分为基础层和个性层
[0064]
如图3所示,显示了服务器与客户端的模型为dnn,通过上述可以将模型分为学习任务共性特征的基础层wb,学习任务个性特征的个性层w
p
,其中基础层的参数量大小表示为sb,个性层参数量的大小表示为s
p
。同时图3也给出一个具有四个客户端{a,b,c,d}和一个中心服务器联邦学习例子来说明本实施例的模型参数异步更新策略。横坐标为通信轮数,纵坐标则表示{a,b,c,d}四个客户端和一个中心服务器。底部灰色阴影部分表示每一轮参与更新的模型参数,底部灰色框外部分的模型参数表示为四个客户端的个性层。在五轮的通信轮数中(t-4,...,t-1,t),基础层与个性层的模型参数仅在最后两轮同时被更新,为了方便,发明人用freq=2/5表示。较于传统的联邦学习减少了3*s
p
的通信量。因此,对于模型参数量非常大的神经网络模型,该方法可以显著降低通信成本。
[0065]
对于客户端固定服务器发送的基础层参数,使用私有数据更新个性层模型参数,在本地建立个性化模型,使用如下公式:
[0066][0067]
其中为第k个客户端t时刻的个性层;
[0068]
为t时刻服务器发送各客户端的基础层参数;为第k个客户端的本地数据;b为批次大小。
[0069]
算法主要分为两个部分,一部分由服务器执行,如算法1。
[0070]
[0071][0072]
在算法1中,由服务器初始网络模型参数w0,sets

freq的意义是freq=2/10时,sets={9,10},freq=4/10时,sets={7,8,9,10},并根据轮数定义flag;当t=1时,首先执行w
tk

clientupdate(k,w
t
);其次使用公式(2)根据客户端数据量的大小加权更新服务器的模型;然后根据公式(4)和(5)逐层计算服务器模型与客户端模型的余弦相似性,并根据公式(7)区分基础层与个性层的界限;最后把区分之后的基础层模型返回给客户端。当t≠1时,仅对客户端上传的基础层进行更新,并把更新之后的基础层返回给客户端,用于客户端下一时刻的更新及客户端本地模型的个性化定制。
[0073]
另一部分由客户端执行,如算法2。
[0074]
[0075][0076]
在算法2中,t=1或者flag=true时,客户端使用本地数据更新模型参数并将其全部发送给服务器;t≠1时,为与服务器合作,在客户端使用本地数据对基础层进行更新,并把更新之后的基础层上传给服务器;同时客户端使用本地数据固定服务器端发送的基础层,训练个性层在本地生成个性化模型。
[0077]
实验数据:mnist数据集是一个具有60000张手写数字体的图片训练数据集,如图4所示,其每一个图片都是28
×
28像素的灰度图像。为了在客户端上生成非独立同分布数据,本实施例首先根据图像数字标签(0,1,...,9)对数据进行排序,在排序的基础上把每300个数据划分为一组,共分为两百组。随机挑选两组作为一个客户端的本地数据,即每个客户端的本地数据为600个。
[0078]
实验细节:(1)首先本实施例使用传统的fedavg算法得到全局模型在面对客户端不同数据任务时所表现出来的准确性。(2)与实验(1)对比分析,验证基于本实施例提出的分层策略所得到的个性化模型的有效性。(3)同时为了保证全局模型的准确性以及减少通信成本,本实施例还进行了模型参数异步更新实验,并与fedavg算法进行通信成本的对比分析。实验参数如表1所示。
[0079]
表1实验参数
[0080][0081][0082]
在这里本实施例采用两个网络结构,一个为6层的dnn网络结构,另一个是具有10
层的一个卷积神经网络。dnn与卷积神经网络是图像分类实验中常见的模型结构,本实施例的实验均在这两个网络的基础结构上进行地实验,这样做保证了实验的公平性和可比较性。
[0083]
在dnn网络中,十个客户端的模型参数与全局模型参数逐层进行余弦相似性对比,结果如图5所示;然后,采用不同基础层/个性层数量下的个性化模型精度对比,结果如图6,验证本实施例所提出的基于余弦相似性的分层策略;最后,如表2所示,在dnn网络中进行不同频率异步更新模型精度与通信成本对比实验。
[0084]
表2 dnn不同频率异步更新模型精度与通信成本对比分析
[0085][0086]
注:freq为频率,即为2/10时,表示10轮联邦学习过程中,最后两轮上传全部层;为4/10时同理.通信成本为服务器与客户端之间的参数传输量,本实施例把传统的fedavg算法做为通信成本的基准。
[0087]
同样,在cnn网络中,对客户端的模型参数与全局模型参数逐层进行余弦相似性对比,结果如图7所示;然后,采用不同基础层/个性层数量下的个性化模型精度对比,结果如图8,进一步验证了本实施例提出的基于余弦相似性分层策略的有效性;最后,如表3所示,在cnn网络中进行不同频率异步更新模型精度与通信成本对比实验,增加算法的拓展性。
[0088]
表3 cnn不同频率异步更新模型精度与通信成本对比分析
[0089][0090][0091]
(1)个性化建模对比分析
[0092]
在dnn网络结构中,如图5所示,十条曲线代表十个客户端,第3-4层时,余弦相似性明显下降,因此把前三层作为基础层(即表二的个性层数量为2)。由图6知,在个性层数量为2时,此时个性化模型的平均精度最高为90.7%,比fedavg(个性层数量为0)准确率高21.5%,比个性层数量为1精度高7.2%,比个性层数量为3精度高12.3%;同理在cnn网络结构中,如图7所示,7-8层时,余弦相似性明显下降,把前七层作为基础层。且由图8知,此时个
性化模型准确率最高为94.8%。通过在两个不同网络结构进行仿真实验,验证了本实施例所提出分层策略算法的有效性。
[0093]
(2)全局模型及通信成本对比分析
[0094]
本实施例把传统的联邦平均算法作为通信成本的基准,如表2、3知,在经过10轮联邦循环后,dnn与cnn两个网络下联邦平均算法所得到的全局模型精度分别为70.44%,77.72%,通信成本为1。在dnn网络中,freq为2/10时,全局模型的精度为71.30%,通信成本相对于联邦平均算法减少28%;freq为4/10时,全局模型的精度为73.15%,通信成本减少了20%。同样在cnn网络中,全局模型的精度为79.50%,通信成本减少11%;freq为4/10时,全局模型的精度为82.59%,通信成本减少了15%。在网络模型当中,参数量通常是非常大的,本实施例通过两个不同的网络结构进行实验,验证了本实施例所提出的异步更新策略,在保证全局模型精度的同时,有效减少了通信成本。
[0095]
针对联邦学习往往忽略了模型中不同层特征参数对个性化建模造成的影响,导致模型精度低,通信成本高问题。本实施例提出了一个基于模型参数异步更新个性化联邦学习方法。通过构建距离度量函数,基于层与层余弦相似性变化值进行比较设置,划分表示共性特征的基础层与个性特征的个性层;依据模型参数异步更新策略,在客户端本地建立高质量的个性化模型。通过进行多次仿真实验,并取得了较好的结果,证明了本实施例方法的有效性。
[0096]
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
[0097]
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1