CN113705634A - 一种基于分层自适应的联邦学习方法、装置、设备及介质 - Google Patents
一种基于分层自适应的联邦学习方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN113705634A CN113705634A CN202110921298.XA CN202110921298A CN113705634A CN 113705634 A CN113705634 A CN 113705634A CN 202110921298 A CN202110921298 A CN 202110921298A CN 113705634 A CN113705634 A CN 113705634A
- Authority
- CN
- China
- Prior art keywords
- model
- class
- shallow
- deep
- trained
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 83
- 238000012549 training Methods 0.000 claims abstract description 73
- 230000001360 synchronised effect Effects 0.000 claims abstract description 6
- 238000007906 compression Methods 0.000 claims description 54
- 230000006835 compression Effects 0.000 claims description 54
- 239000011159 matrix material Substances 0.000 claims description 18
- 238000009826 distribution Methods 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 15
- 238000012937 correction Methods 0.000 claims description 14
- 238000012545 processing Methods 0.000 claims description 13
- 230000006870 function Effects 0.000 claims description 11
- 238000000354 decomposition reaction Methods 0.000 claims description 10
- 238000013507 mapping Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 8
- 230000006978 adaptation Effects 0.000 claims description 7
- 230000005540 biological transmission Effects 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000003860 storage Methods 0.000 claims description 5
- 238000009827 uniform distribution Methods 0.000 claims description 4
- 230000003044 adaptive effect Effects 0.000 claims description 3
- 238000005520 cutting process Methods 0.000 claims description 3
- 229910052739 hydrogen Inorganic materials 0.000 claims description 3
- 238000003064 k means clustering Methods 0.000 claims description 2
- 238000004891 communication Methods 0.000 abstract description 25
- 238000002474 experimental method Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 15
- 230000002776 aggregation Effects 0.000 description 14
- 238000004220 aggregation Methods 0.000 description 14
- 230000007246 mechanism Effects 0.000 description 3
- 238000003062 neural network model Methods 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004615 ingredient Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012067 mathematical method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Probability & Statistics with Applications (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种基于分层自适应的联邦学习方法、装置、设备及介质,所述方法包括以下步骤:将待训练模型划分为浅层模型和深层模型;对浅层模型和深层模型进行同步联邦训练,获得训练好的浅层模型和深层模型;将训练好的浅层模型和深层模型进行拼接,完成所述基于分层自适应的联邦学习。本发明的联邦学习方法,能够统筹考虑并解决上述模型性能问题、通讯成本问题和数据隐私问题,经实验验证,本发明的联邦学习方法与其他方法对比,在保证较高模型性能的同时,保持了较低的通讯量,同时提供数学严格的隐私保护。
Description
技术领域
本发明属于数据处理技术领域,涉及联邦学习方法领域,特别涉及一种基于分层自适应的联邦学习方法、装置、设备及介质。
背景技术
随着计算机技术的发展,人工智能在越来越多的领域得到广泛应用。联邦学习技术支持多个参与者在训练数据集不出本地的前提下共同训练一个模型,技能有效利用多方数据,又能一定程度地保障数据隐私,实现互利共赢。
现有的联邦学习方法尚存在一些缺陷,具体包括:
1)各参与方的本地数据集在分布差异较大时,导致最终模型的预测性能相对于数据集中式训练的性能有所下降,即模型性能问题。
2)各参与方参与训练时,需要频繁上传和下载本地模型,导致通信量较大,通讯开销成为训练中无法忽略的成本,即通讯成本问题。
3)当某一参与方A通过信道监听等手段获得其他参与方B的本地模型或梯度时,A可以通过数学方法推断出B的本地数据集,间接导致数据隐私泄露,即数据隐私问题。
现有技术无法统筹考虑上述三点,例如:针对1)的共享部分数据策略违背了数据隐私要求,针对2)的通信数据压缩策略或者针对3)的梯度加噪/加密算法会加剧模型性能问题。
综上,亟需一种新的基于分层自适应的联邦学习方法、装置、设备及介质。
发明内容
本发明的目的在于提供一种基于分层自适应的联邦学习方法、装置、设备及介质,以解决上述存在的一个或多个技术问题。本发明的联邦学习方法,能够统筹考虑并解决上述模型性能问题、通讯成本问题和数据隐私问题,经实验验证,本发明的联邦学习方法与其他方法对比,在保证较高模型性能的同时,保持了较低的通讯量,同时提供数学严格的隐私保护。
为达到上述目的,本发明采用以下技术方案:
本发明第一方面提供的一种基于分层自适应的联邦学习方法,包括以下步骤:
将待训练模型划分为浅层模型和深层模型;其中,所述浅层模型为所述待训练模型中靠近其输入端的前L层模型部分,所述深层模型为所述待训练模型的剩余部分;
对浅层模型和深层模型进行同步联邦训练,获得训练好的浅层模型和深层模型;其中,基于若干第一类参与端,对所述浅层模型进行若干轮的联邦训练直到模型收敛为止,获得训练好的浅层模型;基于若干第二类参与端,对所述深层模型进行若干轮的联邦训练直到模型收敛为止,获得训练好的深层模型;第一类参与端与第二类参与端之间通过聚类分组的方式进行匹配;匹配到一起的第一类参与端与第二类参与端之间采用压缩校正的方式进行数据传输;
将训练好的浅层模型和深层模型进行拼接,完成所述基于分层自适应的联邦学习。
本发明方法的进一步改进在于,所述通过聚类分组的方式进行匹配的具体步骤包括:
第一类参与端计算其本地数据集分布的信息熵H、本地数据集分布与均匀分布之间的KL散度D;
根据二元组(H,D)对第一类参与端进行k-means聚类,获得多个集群;
从每个集群中随机选择若干第一类参与端标记为一个组,并将该组分配给一个第二类参与端;重复标记并分配,直至所有的第一类参与端都分配至第二类参与端。
本发明方法的进一步改进在于,对于匹配到一起的第一类参与端与第二类参与端,所述采用压缩校正的方式进行数据传输的具体步骤包括:
第一类参与端对计算获得的浅层模型的输出特征进行压缩,获得压缩特征;将压缩特征和对应标签发送给第二类参与端;
第二类参与端基于接收第一类参与端的压缩特征并还原,获得还原后的近似特征;将所述第二类参与端对应的所有第一类参与端的近似特征拼接,获得拼接特征;基于所述拼接特征和对应标签作为深层模型的输入计算获得损失函数的值;第二类参与端根据所述损失函数的值计算获得深层模型的梯度值和近似特征的梯度值,根据所述深层模型的梯度值更新本地深层模型;
第一类参与端接收所述近似特征的梯度值并进行校正,获得校正后的梯度值;根据校正后梯度值和本地浅层模型计算获得浅层模型的梯度值,根据所述浅层模型的梯度值更新本地浅层模型。
式中,LF(O)表示近似特征,UO,∑O,分别为SVD奇异值分解的矩阵,∑O为对角矩阵,UO[:,:k],∑O[:k],VO[:k]分别表示UO,∑O,VO的前k列;∑O[:k]用∑O对角线上的前k个值代替表示,称该k个值为特征值;所述矩阵UO[:,:k],VO[:k]和特征值构成了压缩特征;
本发明方法的进一步改进在于,所述根据校正后梯度值和本地浅层模型计算获得浅层模型的梯度值,根据所述浅层模型的梯度值更新本地浅层模型的步骤具体包括:
第一类参与端利用校正后的梯度值对本地浅层模型进行后向传播,得到本地浅层模型的梯度dW(c);
对梯度dW(c)进行裁剪和加噪保护隐私处理,获得加噪后梯度;其中,进行裁剪和加噪保护隐私处理的表达式为,
用加噪后梯度更新本地浅层模型。
本发明方法的进一步改进在于,
所述第一类参与端对计算获得的浅层模型的输出特征进行压缩,获得压缩特征并发送给第二类参与端的步骤具体包括:在训练的前向传播阶段,第一类参与端将浅层模型的特征矩阵传输给第二类参与端时,采用SVD奇异值分解的方式将浅层模型的特征矩阵分解,将得到分解后的矩阵和特征值作为压缩特征;用三个全连接层表示特征压缩前后的映射关系,将所述压缩特征发送给第二类参与端;
所述第一类参与端接收所述近似特征的梯度值并进行校正,获得校正后的梯度值的步骤具体包括:在训练的后向传播阶段,第二类参与端将所述近似特征的梯度值传输给第一类参与端时,将梯度值在所述三层全连接层中后向传播进行自动校正,得到校正后的特征梯度值。
本发明方法的进一步改进在于,所述对浅层模型和深层模型进行同步联邦训练,获得训练好的浅层模型和深层模型的过程中:每轮的联邦训练中,对深层模型、浅层模型分别进行聚合。
本发明第二方面提供的一种基于分层自适应的联邦学习装置,包括以下步骤:
分层处理模块,用于将待训练模型划分为浅层模型和深层模型;其中,所述浅层模型为所述待训练模型中靠近其输入端的前L层模型部分,所述深层模型为所述待训练模型的剩余部分;
训练更新模块,用于对浅层模型和深层模型进行同步联邦训练,获得训练好的浅层模型和深层模型;其中,基于若干第一类参与端,对所述浅层模型进行若干轮的联邦训练直到模型收敛为止,获得训练好的浅层模型;用于基于若干第二类参与端,对所述深层模型进行若干轮的联邦训练直到模型收敛为止,获得训练好的深层模型;第一类参与端与第二类参与端之间通过聚类分组的方式进行匹配;匹配到一起的第一类参与端与第二类参与端之间采用压缩校正的方式进行数据传输;
拼接模块,用于将训练好的浅层模型和深层模型进行拼接,完成所述基于分层自适应的联邦学习。
本发明第三方面提供的一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如本发明任一项上述基于分层自适应的联邦学习方法的步骤。
本发明第四方面提供的一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如本发明任一项上述基于分层自适应的联邦学习方法的步骤。
与现有技术相比,本发明具有以下有益效果:
本发明提供的基于分层自适应的联邦学习方法中,通过对模型分层和对参与方进行分组聚合,能够在保证训练数据隐私的情况下,缓解因参与方数据分布差异较大造成的模型性能下降;通过提出的压缩校正机制,能够对通讯数据进行有效压缩,并能自动校正因压缩造成的数据精度损失。本发明综合考虑联邦学习中常见的数据隐私问题、通讯成本问题和模型性能问题,本方法与其他方法相比,在保持模型较高性能的同时,保持了较低的通讯量,同时提供数学严格的隐私保护。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面对实施例或现有技术描述中所需要使用的附图做简单的介绍;显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例的一种基于分层自适应的联邦学习方法的流程示意图;
图2是本发明实施例的一种基于分层自适应的联邦学习方法的流程示意图;
图3是本发明实施例中,客户端分组示意图;
图4是本发明实施例中,训练方法示意图;
图5是本发明实施例中,模型聚合示意图;
图6是本发明实施例中,本发明方法与现有方法的对比示意图;其中,图6(a)表示方法采用LeNet5作为训练网络、FMNIST作为训练数据集时,各方法的模型精度随联邦训练轮数的变化情况示意图,图6(b)表示方法采用LeNet5作为训练网络、FMNIST作为训练数据集时,各方法的模型精度随联邦训练轮数的变化情况示意图,图6(c)表示方法采用LeNet5作为训练网络、FMNIST作为训练数据集时,为达到预设的80%的模型准确率目标所需的通讯总量示意图,图6(d)表示方法采用LeNet5作为训练网络、FMNIST作为训练数据集时,为达到预设的80%的模型准确率目标所需的通讯总量示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
下面结合附图对本发明做进一步详细描述:
请参阅图1和图2,本发明实施例的一种基于分层自适应的联邦学习方法,包括以下步骤:
将待训练模型划分为浅层模型和深层模型;其中,所述浅层模型为所述待训练模型中靠近其输入端的前L层模型部分,所述深层模型为所述待训练模型的剩余部分。示例性的,此步骤可以在服务器端完成。模型可以是神经网络模型。
对浅层模型和深层模型进行同步联邦训练,获得训练好的浅层模型和深层模型;其中,基于若干第一类参与端,对所述浅层模型进行若干轮的联邦训练直到模型收敛为止,获得训练好的浅层模型;基于若干第二类参与端,对所述深层模型进行若干轮的联邦训练直到模型收敛为止,获得训练好的深层模型;其中,第一类参与端与第二类参与端之间通过聚类分组的方式进行匹配;匹配到一起的第一类参与端与第二类参与端之间采用压缩校正的方式进行数据传输。示例性的,每轮的联邦训练中,对深层模型、浅层模型分别进行聚合。第一类参与端为客户端,第二类参与端为中介端。所有的客户端通过聚类分组的方式分配给所有的中介端。服务器端收集所有中介端的本地深层模型,并进行加权平均,得到本轮的聚合后深层模型;聚合中介端收集所有客户端的本地浅层模型并进行加权平均,得到本轮的聚合后浅层模型。
将训练好的浅层模型和深层模型进行拼接,完成所述基于分层自适应的联邦学习。示例性的,服务器端最终将训练好的浅层模型和深层模型进行拼接。
本发明实施例提供的基于分层自适应的联邦学习方法中,通过对模型分层和对参与方进行聚合分组,能够在保证训练数据隐私的情况下,缓解因参与方数据分布差异较大造成的模型性能下降;通过提出的压缩校正机制,能够对通讯数据进行有效压缩,并能自动校正因压缩造成的数据精度损失。
请参阅图2至图5,本发明实施例的一种基于分层自适应的联邦学习方法,具体包括以下步骤:
(1)在训练开始时,服务器端初始化神经网络模型参数,并将神经网络模型进行分层,确定参数L,将模型的前L层定义为浅层模型,剩余部分定义为深层模型。将浅层模型发送给所有客户端,将深层模型发送给所有中介端。
示例性的,本发明实施例中,所述客户端计算其本地数据集分布的信息熵H、本地数据集分布与均匀分布之间的KL散度D。然后根据二元组(H,D)对客户端进行k-means聚类。然后从每个集群中随机选择若干客户端,将其标记为一个组,并将该组分配给其中一个中介端。重复直到将所有客户端分配给相应的中介端。
本发明提供的基于分层自适应的联邦学习方法中,通过对模型分层和对参与方进行分组聚合,能够在保证训练数据隐私的情况下,缓解因参与方数据分布差异较大造成的模型性能下降。
(2)基于客户端,对浅层模型进行处理若干轮的联邦训练;基于中介端,对深层模型进行处理若干轮的联邦训练。
示例性的,在第t+1个训练周期开始时,各所述中介端加载第t轮聚合后的深层模型,各所述客户端加载第t轮聚合后的浅层模型。在第t+1个训练周期开始时,所述每个中介端根据所述客户端的本地数据集分布情况,从所述客户端的集合中选中大于一个客户端,并在所述客户端集合中去除选中客户端,重复直到所述客户端集合为空。第t+1个训练周期的前向传播阶段,每个客户端根据本地模型和本地数据集,计算浅层模型的输出特征,并使用本发明所述的压缩校正方法对输出特征进行压缩后,上传给对应中介端。所述中介端收到所有对应客户端的压缩特征后,还原得到近似特征,输入深层模型计算损失函数。
在第t+1个训练周期的后向传播阶段,中介端根据损失函数的值计算深层模型的梯度值和近似特征的梯度值,根据深层模型的梯度值更新本地深层模型,并将所述近似特征的梯度值传输给对应客户端。客户端收到所述近似特征的梯度值时,根据本发明所述的压缩校正方法对所述梯度值进行校正,根据所述校正后梯度值和本地浅层模型计算浅层模型的梯度值,对梯度进行裁剪和加噪保护隐私处理,并更新本地浅层模型。
在第t+1个训练周期结束时,各中介端将本地深层模型传输给服务器端,服务器端接收到所有中介端的本地深层模型后进行加权平均,计算得第t+1轮聚合后的深层模型;各客户端将所述本地浅层模型传输给聚合中介端,所述聚合中介端接收到所有客户端的本地浅层模型后进行加权平均,计算得第t+1轮聚合后的浅层模型。
进一步示例性的,本发明实施例的压缩校正方法,所述方法包括:
在训练的前向传播阶段,客户端需要将浅层模型的特征矩阵传输给中介端时,采用SVD奇异值分解的方式,分解得到两个较小的矩阵和若干特征值,即压缩特征。用三个全连接层表示特征压缩前后的映射关系。将所述压缩特征发送给中介端,中介端收到所述压缩特征之后还原得到近似特征。
在训练的后向传播阶段,中介端需要将所述近似特征的梯度值传输给客户端时,先将该梯度值在所述三层全连接层中后向传播进行自动校正,得到校正后的特征梯度值。客户端利用所述校正后的特征梯度值继续后向传播。
本发明实施例中,通过提出的压缩校正机制,能够对通讯数据进行有效压缩,并能自动校正因压缩造成的数据精度损失。
本发明实施例的一种分层自适应的联邦学习框架,具体处理步骤如下:
S1、根据专家经验确定系统参数。
S2、在模型训练过程开始前,将模型分割成深层模型和浅层模型两个部分,分别分发给所有中介端和客户端。
S3、在每一轮模型训练过程中,根据客户端的本地数据分布特征,将各客户端分组分配给各中介端,客户端用本地数据输入本地浅层模型得到输出特征。
S4、各客户端将输出特征进行SVD分解压缩,并根据SVD结果生成三层全连接层。将SVD分解结果,即压缩特征,发送给对应中介端。
S5、中介端收到所有对应客户端的压缩特征后还原得到近似特征,在本地深层模型进行前向传播和后向传播,更新本地深层模型,并将近似特征的梯度发送给对应客户端。
S6、客户端收到对应近似特征的梯度后在生成的三层全连接进行后向传播,得到校正后的梯度,以此在本地浅层模型进行后向传播得到本地浅层模型的梯度,对其进行梯度裁剪和加噪后,更新浅层模型。
S7、客户端将本地浅层模型发送给聚合中介端;中介端将深层模型发送给服务器端。服务器端和中介端分别对其收集的模型进行加权平均,得到聚合后的深层和浅层模型,对应发送给所有中介端和客户端。
S8、判断模型是否收敛,若是,执行S9,否则回到S3。
S9、聚合中介端将最后一轮得到的聚合后模型发送给服务器端,服务器拼接深层模型和浅层模型,得到最终模型。
本发明实施例的方法中,将模型作分割,并分别由客户端、中介端两类设备分别进行训练和迭代,训练结束前,参与联邦学习的任何设备都不能得到全部的模型。在传输浅层模型的输出特征时,用SVD对输出特征进行有损压缩;并在对其计算梯度时能自动纠正因有损压缩造成的偏差。
本发明实施例的一种分层自适应的联邦学习框架系统,具体包括:
模型分割,服务器端选定联邦学习的训练模型,并确定参数L,将模型进行分层,模型前L层定义为浅层模型,剩余部分定义为深层模型。
训练初始化,服务器端对浅层模型和深层模型进行参数初始化,并将深层模型发送给全部中介端,浅层模型发送给全部客户端。
联邦训练模型,服务器确定压缩参数k和梯度裁剪参数G,噪声标准差σ,开始对浅层模型和深层模型进行若干轮的联邦训练,直到模型收敛为止。
具体的,以第t+1轮为例,进行后续子步骤的阐述。
步骤301:获取本轮初始模型。所有客户端从聚合中介端获取上一轮(即第t轮)的聚合后浅层模型,所有中介端从服务器端获取上一轮(即第t轮)的聚合后深层模型。
步骤302:中介端选择客户端。
如图2所示,将中介端和客户端进行一对多的映射。
具体的,初始化一个均匀分布p(r),根据公式(1)和(2),每个客户端计算其局部分布p(c)的信息熵H(c)、p(r)与p(r)之间的KL散度DKL(p(r)||p(c)),其中表示客户端C的本地数据中第i类数据占比。然后,利用K-means算法根据二进制组(H(c),DKL(p(r)||p(c)))对客户端进行聚类。然后从每个集群中随机选择若干客户端,将其标记为一个组,并将该组分配给其中一个中介端。循环直到将所有客户端分配给相应的中介端。
步骤303:客户端上的浅层模型前向传播。客户端用本地数据对本地浅层模型进行前向传播,计算得输出特征O,将输出特征O进行SVD分解得到三个矩阵,如公式(3)所示。
LF(O)表示输出特征经过压缩再还原后的近似(即近似特征),UO,∑O,分别为SVD奇异值分解的矩阵,其中∑O为对角矩阵,可以在压缩为若干特征值表示。UO[:,:k],∑O[:k],VO[:k]分别表示UO,∑O,VO的前k列。分解后,特征矩阵可以用两个相对较小的矩阵UO[:,:k],VO[:k]和k个特征值(即压缩特征)表征,以减少通信开销。将上述压缩特征以及对应标签传输y给对应中介端。根据公式(4)所示的近似特征-输出特征映射关系,可将该映射关系用三层全连接层表示,其参数分别为:UO,Dk,其中Dk表示一个对角线矩阵,其对角线上的前k个元素为1,其余为0。
步骤304:中介端上的深层模型前向传播。中介端收到上述压缩特征之后根据公式(3)还原得到近似特征。得到所有对应客户端收到的近似特征后,将其拼接得到拼接特征并输入本地深层网络,计算得到模型预测值。
步骤305:中介端上的深层模型后向传播。中阶段根据模型预测值和对应标签y计算损失函数的值L,并计算深层模型的梯度值和压缩特征的梯度值,用深层模型梯度值更新本地深层模型,并将对应压缩特征的梯度值发送到对应客户端。
步骤306:客户端上的浅层模型后向传播。客户端收到对应压缩特征LF(O)的梯度后,先将该梯度值在所述三层全连接层中后向传播,得到校正后的梯度值。客户端利用校正后的梯度值对本地浅层模型进行后向传播,得到本地浅层模型的梯度dW(c),根据公式(5)对该梯度进行裁剪和加噪保护隐私,然后用加噪后梯度更新本地浅层模型。其中n(c)是客户端C的mini-batch的大小,是均值为0,方差为的高斯噪声。
步骤307:深层模型、浅层模型分别聚合。服务器端收集所有中介端的本地深层模型,并进行加权平均,得到本轮(即第t+1轮)的聚合后深层模型;聚合中介端收集所有客户端的本地浅层模型并进行加权平均,得到本轮(即第t+1轮)的聚合后浅层模型。
步骤4、合并最终模型。
聚合中介端将最后一轮的聚合后模型发送给服务器端,服务器拼接最后一轮的聚合后浅层模型和深层模型,得到最终模型。
与现有的联邦学习方法相比,本发明提出了一种分层自适应的联邦学习框架,统筹考虑数据隐私问题、通信成本问题、模型性能问题等方面,提出了一种综合的保障隐私、压缩通讯量、模型性能相对较高的联邦学习框架。
请参阅图6,分别展示了本发明提供的联邦学习方法与其他方法:FedAvg(BrendanMcMahan,Eider Moore,Daniel Ramage,Seth Hampson,and Blaise Aguera yArcas.Communication-efficient learning of deep networks from decentralizeddata.In Artificial Intelligence and Statistics,pages 1273-1282.PMLR,2017.)、STC(Sattler Felix,Wiedemann Simon,Muller Klaus-Robert,Samek Wojciech.Robustand Communication-Efficient Federated Learning From Non-i.i.d.Data.[J].IEEEtransactions on neural networks and learning systems,2019:)、DGC(Yujun Lin,Song Han,Huizi Mao,Yu Wang,and William J Dally.Deep gradient compression:Reducing the communication bandwidth for distributed training.arXiv preprintarXiv:1712.01887.2017.)的效果对比图。图6(a)表示方法采用LeNet5作为训练网络、FMNIST作为训练数据集时,各方法的模型精度随联邦训练轮数的变化情况。收敛后,本发明提供的联邦学习方法准确率为88.16%;而FedAVG、DGC和STC仅分别达到82.28%、82.00%和82.12%。图6(b)表示方法采用VGG16作为训练网络、CIFAR10作为训练数据集时,各方法的模型精度随联邦训练轮数的变化情况。收敛后,本发明提供的联邦学习方法准确率为87.28%;而FedAVG,DGC和STC仅达到73.83%、81.25%和81.24%。图6(c)和(d)表示上述两类实验条件下,为达到预设的80%的模型准确率目标,本发明提供的联邦学习方法所需的通讯总量低于或近似其他方法。综上,本方法与其他方法相比,在保持模型较高性能的同时,保持了较低的通讯量,同时提供数学严格的隐私保护。
本发明实施例公开了一种分层自适应的联邦学习框架,包括:模型分割;训练初始化;联邦训练模型;合并最终模型。本发明提出了一种基于联邦学习的分层式自适应框架,提供了一种联邦学习模型的训练方法和一种联邦学习通讯数据的压缩校正方法。通过模型分割和中介端-客户端的分配组合,缓解客户端本地数据集分布差异对模型性能的影响,通过压缩校正方法减小通讯量的同时避免对模型性能的负面影响。本发明统筹考虑数据隐私问题、通信成本问题、模型性能问题等方面,在保障数据隐私的同时,减小训练所需通信量,一定程度上提升模型性能。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。
Claims (10)
1.一种基于分层自适应的联邦学习方法,其特征在于,包括以下步骤:
将待训练模型划分为浅层模型和深层模型;其中,所述浅层模型为所述待训练模型中靠近其输入端的前L层模型部分,所述深层模型为所述待训练模型的剩余部分;
对浅层模型和深层模型进行同步联邦训练,获得训练好的浅层模型和深层模型;其中,基于若干第一类参与端,对所述浅层模型进行若干轮的联邦训练直到模型收敛为止,获得训练好的浅层模型;基于若干第二类参与端,对所述深层模型进行若干轮的联邦训练直到模型收敛为止,获得训练好的深层模型;第一类参与端与第二类参与端之间通过聚类分组的方式进行匹配;匹配到一起的第一类参与端与第二类参与端之间采用压缩校正的方式进行数据传输;
将训练好的浅层模型和深层模型进行拼接,完成所述基于分层自适应的联邦学习。
2.根据权利要求1所述的一种基于分层自适应的联邦学习方法,其特征在于,所述通过聚类分组的方式进行匹配的具体步骤包括:
第一类参与端计算其本地数据集分布的信息熵H、本地数据集分布与均匀分布之间的KL散度D;
根据二元组(H,D)对第一类参与端进行k-means聚类,获得多个集群;
从每个集群中随机选择若干第一类参与端标记为一个组,并将该组分配给一个第二类参与端;重复标记并分配,直至所有的第一类参与端都分配至第二类参与端。
3.根据权利要求1所述的一种基于分层自适应的联邦学习方法,其特征在于,对于匹配到一起的第一类参与端与第二类参与端,所述采用压缩校正的方式进行数据传输的具体步骤包括:
第一类参与端对计算获得的浅层模型的输出特征进行压缩,获得压缩特征;将压缩特征和对应标签发送给第二类参与端;
第二类参与端基于接收第一类参与端的压缩特征并还原,获得还原后的近似特征;将所述第二类参与端对应的所有第一类参与端的近似特征拼接,获得拼接特征;基于所述拼接特征和对应标签作为深层模型的输入计算获得损失函数的值;第二类参与端根据所述损失函数的值计算获得深层模型的梯度值和近似特征的梯度值,根据所述深层模型的梯度值更新本地深层模型;
第一类参与端接收所述近似特征的梯度值并进行校正,获得校正后的梯度值;根据校正后梯度值和本地浅层模型计算获得浅层模型的梯度值,根据所述浅层模型的梯度值更新本地浅层模型。
6.根据权利要求3所述的一种基于分层自适应的联邦学习方法,其特征在于,
所述第一类参与端对计算获得的浅层模型的输出特征进行压缩,获得压缩特征并发送给第二类参与端的步骤具体包括:在训练的前向传播阶段,第一类参与端将浅层模型的特征矩阵传输给第二类参与端时,采用SVD奇异值分解的方式将浅层模型的特征矩阵分解,将得到分解后的矩阵和特征值作为压缩特征;用三个全连接层表示特征压缩前后的映射关系,将所述压缩特征发送给第二类参与端;
所述第一类参与端接收所述近似特征的梯度值并进行校正,获得校正后的梯度值的步骤具体包括:在训练的后向传播阶段,第二类参与端将所述近似特征的梯度值传输给第一类参与端时,将梯度值在所述三层全连接层中后向传播进行自动校正,得到校正后的特征梯度值。
7.根据权利要求1所述的一种基于分层自适应的联邦学习方法,其特征在于,所述对浅层模型和深层模型进行同步联邦训练,获得训练好的浅层模型和深层模型的过程中:
每轮的联邦训练中,对深层模型、浅层模型分别进行聚合。
8.一种基于分层自适应的联邦学习装置,其特征在于,包括以下步骤:
分层处理模块,用于将待训练模型划分为浅层模型和深层模型;其中,所述浅层模型为所述待训练模型中靠近其输入端的前L层模型部分,所述深层模型为所述待训练模型的剩余部分;
训练更新模块,用于对浅层模型和深层模型进行同步联邦训练,获得训练好的浅层模型和深层模型;其中,基于若干第一类参与端,对所述浅层模型进行若干轮的联邦训练直到模型收敛为止,获得训练好的浅层模型;用于基于若干第二类参与端,对所述深层模型进行若干轮的联邦训练直到模型收敛为止,获得训练好的深层模型;第一类参与端与第二类参与端之间通过聚类分组的方式进行匹配;匹配到一起的第一类参与端与第二类参与端之间采用压缩校正的方式进行数据传输;
拼接模块,用于将训练好的浅层模型和深层模型进行拼接,完成所述基于分层自适应的联邦学习。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述基于分层自适应的联邦学习方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述基于分层自适应的联邦学习方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110921298.XA CN113705634B (zh) | 2021-08-11 | 2021-08-11 | 一种基于分层自适应的联邦学习方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110921298.XA CN113705634B (zh) | 2021-08-11 | 2021-08-11 | 一种基于分层自适应的联邦学习方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113705634A true CN113705634A (zh) | 2021-11-26 |
CN113705634B CN113705634B (zh) | 2024-05-10 |
Family
ID=78652304
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110921298.XA Active CN113705634B (zh) | 2021-08-11 | 2021-08-11 | 一种基于分层自适应的联邦学习方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113705634B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110909865A (zh) * | 2019-11-18 | 2020-03-24 | 福州大学 | 边缘计算中基于分层张量分解的联邦学习方法 |
CN111260061A (zh) * | 2020-03-09 | 2020-06-09 | 厦门大学 | 联邦学习梯度交换中的差异化加噪方法及系统 |
US11017322B1 (en) * | 2021-01-28 | 2021-05-25 | Alipay Labs (singapore) Pte. Ltd. | Method and system for federated learning |
CN112862011A (zh) * | 2021-03-31 | 2021-05-28 | 中国工商银行股份有限公司 | 基于联邦学习的模型训练方法、装置及联邦学习系统 |
WO2021115480A1 (zh) * | 2020-06-30 | 2021-06-17 | 平安科技(深圳)有限公司 | 联邦学习方法、装置、设备和存储介质 |
-
2021
- 2021-08-11 CN CN202110921298.XA patent/CN113705634B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110909865A (zh) * | 2019-11-18 | 2020-03-24 | 福州大学 | 边缘计算中基于分层张量分解的联邦学习方法 |
CN111260061A (zh) * | 2020-03-09 | 2020-06-09 | 厦门大学 | 联邦学习梯度交换中的差异化加噪方法及系统 |
WO2021115480A1 (zh) * | 2020-06-30 | 2021-06-17 | 平安科技(深圳)有限公司 | 联邦学习方法、装置、设备和存储介质 |
US11017322B1 (en) * | 2021-01-28 | 2021-05-25 | Alipay Labs (singapore) Pte. Ltd. | Method and system for federated learning |
CN112862011A (zh) * | 2021-03-31 | 2021-05-28 | 中国工商银行股份有限公司 | 基于联邦学习的模型训练方法、装置及联邦学习系统 |
Non-Patent Citations (3)
Title |
---|
周俊;方国英;吴楠;: "联邦学习安全与隐私保护研究综述", 西华大学学报(自然科学版), no. 04, 10 July 2020 (2020-07-10) * |
李鉴;邵云峰;卢?;吴骏;: "联邦学习及其在电信行业的应用", 信息通信技术与政策, no. 09, 15 September 2020 (2020-09-15) * |
董业;侯炜;陈小军;曾帅;: "基于秘密分享和梯度选择的高效安全联邦学习", 计算机研究与发展, no. 10, 9 October 2020 (2020-10-09) * |
Also Published As
Publication number | Publication date |
---|---|
CN113705634B (zh) | 2024-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112181666B (zh) | 一种基于边缘智能的设备评估和联邦学习重要性聚合方法 | |
CN111563275B (zh) | 一种基于生成对抗网络的数据脱敏方法 | |
CN111030861B (zh) | 一种边缘计算分布式模型训练方法、终端和网络侧设备 | |
Ding et al. | SNR-adaptive deep joint source-channel coding for wireless image transmission | |
CN110659734B (zh) | 深度可分离卷积结构的低比特量化方法 | |
CN112235384A (zh) | 分布式系统中的数据传输方法、装置、设备及存储介质 | |
US20240135191A1 (en) | Method, apparatus, and system for generating neural network model, device, medium, and program product | |
CN114650227A (zh) | 一种分层联邦学习场景下的网络拓扑构建方法及系统 | |
Ngo et al. | Adaptive anomaly detection for IoT data in hierarchical edge computing | |
CN115829027A (zh) | 一种基于对比学习的联邦学习稀疏训练方法及系统 | |
CN111224905A (zh) | 一种大规模物联网中基于卷积残差网络的多用户检测方法 | |
CN111163314A (zh) | 一种图像压缩方法及系统 | |
CN114301889B (zh) | 一种基于权重压缩的高效联邦学习方法及系统 | |
CN115223013A (zh) | 基于小数据生成网络的模型训练方法、装置、设备及介质 | |
CN114116707A (zh) | 确定联合学习中参与方贡献度的方法及装置 | |
CN107205150A (zh) | 编码方法及装置 | |
CN114116705A (zh) | 联合学习中确定参与方贡献值的方法及装置 | |
CN117217328A (zh) | 基于约束因子的联邦学习客户端选择方法 | |
CN111126860B (zh) | 任务分配方法、任务分配装置和电子设备 | |
CN113705634A (zh) | 一种基于分层自适应的联邦学习方法、装置、设备及介质 | |
CN111161363A (zh) | 一种图像编码模型训练方法及装置 | |
CN113743012B (zh) | 一种多用户场景下的云-边缘协同模式任务卸载优化方法 | |
CN115577803A (zh) | 一种对混合噪声鲁棒的联邦学习方法及系统 | |
CN114298319A (zh) | 联合学习贡献值的确定方法、装置、电子设备及存储介质 | |
CN114116740A (zh) | 用于联合学习中确定参与方贡献度的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |