CN117196070A - 一种面向异构数据的双重联邦蒸馏学习方法及装置 - Google Patents
一种面向异构数据的双重联邦蒸馏学习方法及装置 Download PDFInfo
- Publication number
- CN117196070A CN117196070A CN202311474649.2A CN202311474649A CN117196070A CN 117196070 A CN117196070 A CN 117196070A CN 202311474649 A CN202311474649 A CN 202311474649A CN 117196070 A CN117196070 A CN 117196070A
- Authority
- CN
- China
- Prior art keywords
- local
- model
- global
- classification prediction
- representing
- 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 67
- 230000009977 dual effect Effects 0.000 title claims abstract description 35
- 238000004821 distillation Methods 0.000 title claims abstract description 27
- 230000002776 aggregation Effects 0.000 claims abstract description 80
- 238000004220 aggregation Methods 0.000 claims abstract description 80
- 238000013140 knowledge distillation Methods 0.000 claims abstract description 58
- 238000005457 optimization Methods 0.000 claims abstract description 14
- 125000003275 alpha amino acid group Chemical group 0.000 claims description 20
- 150000001875 compounds Chemical class 0.000 claims description 20
- 238000012549 training Methods 0.000 claims description 20
- 230000008569 process Effects 0.000 claims description 14
- 230000006870 function Effects 0.000 claims description 12
- 238000004891 communication Methods 0.000 claims description 8
- 230000004931 aggregating effect Effects 0.000 claims description 7
- 238000010276 construction Methods 0.000 claims description 6
- 230000006872 improvement Effects 0.000 abstract description 4
- 230000002146 bilateral effect Effects 0.000 abstract description 2
- 238000006116 polymerization reaction Methods 0.000 description 7
- 238000010801 machine learning Methods 0.000 description 5
- 238000013473 artificial intelligence Methods 0.000 description 4
- 238000012935 Averaging Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000379 polymerizing effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000000275 quality assurance Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000009966 trimming Methods 0.000 description 1
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明属于异构数据下的联邦学习的技术领域,更具体地,涉及一种面向异构数据的双重联邦蒸馏学习方法及装置。所述方法包括全局知识蒸馏和局部知识蒸馏,全局知识蒸馏包括利用全局生成器生成全局伪数据,将全局伪数据输入局部模型和初始聚合模型,并根据模型输出结果对初始聚合模型微调,得到全局模型;局部知识蒸馏包括利用局部生成器生成局部伪数据,将局部伪数据输入局部模型和全局模型,并根据模型输出结果更新局部生成器,再利用更新后的局部生成器生成新的局部伪数据,利用新的局部伪数据更新局部模型。本发明保障数据异构环境下产生客户漂移现象时联邦学习系统中服务端和客户端双边优化,实现全局模型和局部模型的稳定收敛及性能提升。
Description
技术领域
本发明属于异构数据下的联邦学习的技术领域,更具体地,涉及一种面向异构数据的双重联邦蒸馏学习方法及装置。
背景技术
移动电话、可穿戴设备以及自动驾驶汽车等边缘设备在现代社会的普及,导致了来自分布式系统的私人数据快速增长。在这个数字时代,虽然丰富的数据为人工智能的应用提供了巨大的机会,但其中大多数数据本质上高度敏感,并且以“数据孤岛”的形式存在。因为传统人工智能方法无法很好地解决数据隐私问题,这给人工智能的应用带来了巨大的挑战。
联邦学习允许多个用户协作训练共享的全局模型,且无需上传本地客户端的数据,只上传局部模型更新的参数,由中央服务器协调完成多轮联邦学习以得到最终的全局模型。联邦学习消除了在单个设备上聚合所有数据的需要,克服了机器学习中的隐私和通信挑战,是解决上述问题的有效途径,具有重要的研究价值和实际应用意义。
然而,在实际应用中,各个客户端之间的数据往往呈非独立同分布,这种数据异构性使得训练过程中易产生“客户漂移”现象。即,不同客户端向着各自局部最优的方向更新局部模型,导致各局部模型之间差异较大且远离了全局最优方向。并且,传统的联邦学习对局部模型参数取平均得到全局模型的聚合方法也无法弥合这种差异,导致联邦学习系统训练的模型无法更新至全局最优,存在收敛较慢且泛化性较低的问题。因此,在数据异构环境下,如何降低联邦学习系统中数据异构性带来的模型性能影响成为联邦学习亟需解决的问题之一。
中国专利文献CN114429219A公开一种面向长尾异构数据的联邦学习方法,研究了联邦学习中异构数据和长尾分布的联合问题,充分利用客户端本地模型的多样性来处理异构数据问题,并提出了一种新的模型校准策略和门控网络来有效解决长尾问题,进一步提升了联邦学习下的模型性能。
中国专利文献CN116681144A公开一种基于动态自适应知识蒸馏的联邦学习模型聚合方法,包括全局模型初始化、本地模型训练、聚合生成全局模型三个阶段,在本地模型训练阶段使用知识蒸馏技术促进客户端学习全局模型,动态调整知识蒸馏比例使客户端可根据各自情况自适应学习全局模型,动态调整教师模型输出分布使客户端有效利用知识蒸馏中教师模型的知识使聚合后服务器能够生成性能更优的全局模型,同时保证不泄露聚合过程中局部模型和全局模型的额外隐私。
而在联邦学习中,各个客户端使用本地数据训练局部模型上传到服务端聚合后得到的平均模型作为全局模型。若在数据异构环境下,每个客户端模型朝着自己的方向训练,且随着本地训练次数的增加各个局部模型与全局模型的距离偏差越来越大,导致联邦学习模型性能下降。
联邦学习将原始数据保留在本地只需上传局部模型到服务端聚合,消除了在单个设备上聚合所有数据的需要,克服了机器学习中的隐私和通信挑战,在安全人工智能领域获得了广泛关注。然而,在异构环境下,尚缺乏有效缓解模型性能下降的联邦学习算法。
发明内容
本发明旨在克服上述现有技术的至少一种缺陷,提供一种面向异构数据的双重联邦蒸馏学习方法,主要用于保障数据异构环境下产生客户漂移现象时联邦学习系统中服务端和客户端双边优化,实现模型的稳定收敛及性能提升。
本发明还公开一种加载有面向异构数据的双重联邦蒸馏学习方法的装置。
本发明详细的技术方案如下:
一种面向异构数据的双重联邦蒸馏学习方法,应用于联邦学习系统,所述联邦学习系统包括服务端和多个客户端,所述客户端上部署有局部模型,且局部模型聚合形成全局模型并部署于服务端;所述方法包括在服务端进行的全局知识蒸馏和在各客户端进行的局部知识蒸馏;其中,
所述全局知识蒸馏包括:
S1、利用全局模型的全局生成器生成全局伪数据,并将所述全局伪数据构建为全局伪数据集;
S2、聚合各客户端的局部模型,得到初始聚合模型;
S3、将所述全局伪数据集分别输入所述局部模型和初始聚合模型中进行分类预测,分别得到第一局部模型分类预测结果以及初始聚合模型分类预测结果;
S4、基于所述第一局部模型分类预测结果和初始聚合模型分类预测结果对所述初始聚合模型进行微调,得到全局模型;
所述局部知识蒸馏包括:
S5、利用局部模型的局部生成器生成局部伪数据,并将所述局部伪数据构建为局部伪数据集;
S6、将步骤S4中得到的全局模型分别下发至各客户端,各客户端利用所述局部伪数据集以及接收到的全局模型更新其局部模型的局部生成器;
S7、利用更新后的局部生成器生成新的局部伪数据,并利用所述新的局部伪数据优化对应的局部模型。
根据本发明优选的,所述步骤S2具体包括:在服务端对各客户端的局部模型进行聚合平均操作,得到初始聚合模型,即:
(1)
式(1)中,表示服务端与客户端之间的通信轮次,且/>,/>表示的是共通信/>轮,K表示共有K个客户端,/>表示第/>个客户端,/>,/>表示第/>个客户端的数据量,/>表示全局数据量,/>表示第/>个客户端的局部模型。
根据本发明优选的,所述步骤S2具体还包括:基于局部模型与初始聚合模型之间的余弦相似度计算局部模型可用度,即:
(2)
式(2)中,表示局部模型可用度。
根据本发明优选的,所述步骤S2具体还包括:基于局部模型可用度,在服务端为每个客户端定义一个随通信轮次改变的动态聚合权重,即:
(3)
式(3)中,表示动态聚合权重。
根据本发明优选的,所述步骤S2具体还包括:基于动态聚合权重设计全局生成器的聚合过程,即:
(4)
式(4)中,表示服务端,/>表示全局生成器,/>表示局部生成器。
根据本发明优选的,所述步骤S4具体包括:最小化第一局部模型分类预测结果和初始聚合模型分类预测结果之间的KL散度,以对初始聚合模型进行微调,得到全局模型,即:
(5)
式(5)中,表示全局模型,/>表示全局知识蒸馏的损失函数,/>表示全局生成器生成的全局伪数据,/>表示由全局伪数据构成的全局伪数据集,/>表示KL散度,/>表示第一局部模型分类预测结果,/>表示初始聚合模型分类预测结果。
根据本发明优选的,所述步骤S6具体包括:
S61、将所述局部伪数据集分别输入局部模型和接收到的全局模型中进行分类预测,分别得到第二局部模型分类预测结果以及第一全局模型分类预测结果;
S62、最大化所述第二局部模型分类预测结果和第一全局模型分类预测结果之间的KL散度,以更新对应局部模型的局部生成器;
其中,所述步骤S62具体包括:
(6)
式(6)中,为知识蒸馏损失函数,/>表示局部生成器生成的局部伪数据,/>表示由局部伪数据构成的局部伪数据集,/>表示第二局部模型分类预测结果,/>表示第一全局模型分类预测结果。
根据本发明优选的,所述步骤S7具体包括:
S71、将新的局部伪数据分别输入局部模型和全局模型中进行分类预测,分别得到第三局部模型分类预测结果以及第二全局模型分类预测结果;
S72、最小化第三局部模型分类预测结果和第二全局模型分类预测结果之间的KL散度,以更新对应的局部模型;
其中,所述步骤S72具体包括:
(7)
式(7)中,表示更新后的局部模型,/>表示更新后的局部生成器生成的新的局部伪数据,/>表示第三局部模型分类预测结果,/>表示第二全局模型分类预测结果。
根据本发明优选的,所述局部生成器的更新过程与局部模型的优化过程之间形成局部对抗训练,即:
(8)
式(8)中,表示局部对抗训练的损失函数。
在本发明的另一个方面当中,还提供了一种实现面向异构数据的双重联邦蒸馏学习方法的装置,所述装置包括:
第一构建模块,用于利用全局模型的全局生成器生成全局伪数据,并将所述全局伪数据构建为全局伪数据集;
聚合模块,用于聚合各客户端的局部模型,以得到初始聚合模型;
预测模块,用于将所述全局伪数据集分别输入所述局部模型和初始聚合模型中进行分类预测,以分别得到第一局部模型分类预测结果以及初始聚合模型分类预测结果;
调整模块,用于基于所述第一局部模型分类预测结果和初始聚合模型分类预测结果对所述初始聚合模型进行微调,以得到全局模型;
第二构建模块,用于利用局部模型的局部生成器生成局部伪数据,并将所述局部伪数据构建为局部伪数据集;
更新模块,用于将全局模型分别下发至各客户端,以使各客户端利用所述局部伪数据集以及接收到的全局模型更新其局部模型的局部生成器;
优化模块,用于利用更新后的局部生成器生成新的局部伪数据,并利用所述新的局部伪数据优化对应的局部模型。
与现有技术相比,本发明的有益效果为:
(1)本发明提供的一种面向异构数据的双重联邦蒸馏学习方法,在传统的联邦学习算法基础上,从模型相似度的角度建立数据异构环境下联邦学习的双重优化问题;并结合知识蒸馏的思想,在服务端和客户端均设计生成器生成伪数据,利用伪数据对局部模型和全局模型进行微调,从而实现模型的优化更新。
(2)本发明通过结合双重知识蒸馏,服务端可以使得全局模型充分学习局部模型所传递的知识,实现全局模型的泛化性的提升,客户端可以实现局部模型对本地数据所含知识的充分挖掘,并在保留其个性化的同时修正局部更新方向,以最小化各局部模型之间的差异,从而达到对联邦学习系统的双重优化效果。
附图说明
图1是本发明所述面向异构数据的双重联邦蒸馏学习方法的原理框架图。
图2是本发明实施例1中全局知识蒸馏的流程图。
图3是本发明实施例1中局部知识蒸馏的流程图。
图4是本发明方法与现有技术之间的实验对比图。
具体实施方式
下面结合附图与实施例对本公开做进一步说明。
应该指出,以下详细说明都是示例性的,旨在对本公开提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本公开所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本公开的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。
联邦学习(Federated Learning)是一种带有隐私保护、安全加密技术的分布式机器学习框架,旨在让分散的各客户端(参与方)在满足不向其他客户端披露隐私数据的前提下,协作进行机器学习的模型训练。联邦学习能够实现在不上传本地原始数据的前提下通过生成的模型分析和训练多个客户端的数据,而数据的异构性会严重影响联邦学习模型的性能。为了有效缓解数据异构性对模型的影响,需要对传统的联邦学习进行改进。
基于此,本发明提供一种面向异构数据的双重联邦蒸馏学习方法,命名为FedTFKD。该方法在传统的联邦学习算法基础上,从模型相似度的角度建立数据异构环境下联邦学习的双重优化问题;结合知识蒸馏的思想,在服务端和客户端均设计生成器生成伪数据,利用伪数据对局部模型和全局模型进行微调,从而实现模型的优化更新。
在进行模型优化操作之前,本发明首先对异构数据下联邦学习系统的优化目标以及双重联邦知识蒸馏进行了如下定义:
1)定义异构数据下联邦学习系统的优化目标:假设共有K个客户端,它们的本地数据集表示为:,/>,/>表示第/>个客户端本地数据集/>中数据的数量;其中,/>是第/>个客户端的第/>个数据/>及其对应的类型标签/>;全局数据集表示为:/>,全局数据量为:/>,其中,/>是第/>个客户端的数据量;表示第/>个客户端的局部模型,/>表示全局模型;则定义联邦学习系统的优化目标为:
式中,代表第/>个客户端的局部损失函数,/>代表交叉熵损失函数。
2)定义双重联邦知识蒸馏:本发明将知识蒸馏的思想运用到联邦学习流程中,在服务端和客户端均进行知识蒸馏以实现双重联邦蒸馏的目标。其中,服务端进行全局知识蒸馏,以对全局模型进行泛化性提升;客户端进行局部知识蒸馏,以修正局部模型更新方向。
为了辅助双重联邦知识蒸馏的进行,本发明分别在服务端和客户端对应设计全局生成器和局部生成器/>。全局生成器/>生成全局伪数据,用以全局知识蒸馏;局部生成器生成局部伪数据,用以局部知识蒸馏,从而构成全局-局部双重联邦蒸馏的闭环。
进一步地,本发明所设计的双重联邦知识蒸馏学习的整体流程为:
a)、服务端初始化全局模型和全局生成器并广播给客户端;
b)、客户端根据接收到的全局模型和全局生成器更新局部模型和局部生成器;
c)、客户端将更新后的局部模型和局部生成器上传至服务端;
d)、服务端分别聚合更新后的局部模型和局部生成器,得到新的全局模型和全局生成器并广播给客户端。
本发明通过结合双重知识蒸馏,服务端可以使得全局模型充分学习局部模型所传递的知识,实现全局模型的泛化性的提升,客户端可以实现局部模型对本地数据所含知识的充分挖掘,并在保留其个性化的同时修正局部更新方向,以最小化各局部模型之间的差异,从而达到对联邦学习系统的双重优化效果。
以下结合具体实施例对本发明的一种面向异构数据的双重联邦蒸馏学习方法及装置作详细说明。
实施例1、
本实施例提供一种面向异构数据的双重联邦蒸馏学习方法,所述方法包括在服务端进行的全局知识蒸馏和在各客户端进行的局部知识蒸馏。
其中,参图1和图2所示,所述全局知识蒸馏包括:
S1、利用全局模型的全局生成器生成全局伪数据,并将所述全局伪数据构建为全局伪数据集。
本实施例中,全局生成器所生成的全局伪数据可以用表示,所构建的全局伪数据集可以用/>表示,其中,/>表示服务端,/>表示第/>个全局伪数据,/>,且/>,/>表示全局生成器,/>表示高斯噪声。
S2、聚合各客户端的局部模型,得到初始聚合模型。
具体地,本实施例中是在服务端采用对各客户端的局部模型进行取平均的方式聚合得到初始聚合模型/>,即有:
(1)
式(1)中,表示服务端与客户端之间的通信轮次,且/>,/>表示的是共通信/>轮。
进一步地,在实际应用场景中,类不平衡是数据异构环境中本地数据集的常见现象,甚至存在某些类仅存在于特定本地数据集中的情况。在这种情况下,各个局部模型包含来自不平衡数据类的知识,并且同一类对不同局部模型的贡献也可能有所不同,进而导致各局部模型往往只适用于其本地数据集,泛化性较低。全局模型聚合了来自不同客户端的局部模型,所以其泛化性优于局部模型。因此,局部模型与全局模型之间的相似程度反映了局部模型在全局数据上的性能。
本实施例中优选采用局部模型可用度来量化各个局部模型在全局数据上的性能。具体地,定义局部模型/>与初始聚合模型/>之间的余弦相似度作为局部模型可用度,即有:
(2)
式(2)中,表示局部模型可用度。
局部模型可用度用以量化各个局部模型/>在全局数据上的性能。同时,该局部模型可用度/>也反映了各局部模型/>所对应的客户端对整个联邦学习系统的贡献度。
应当理解,局部模型可用度越高,代表其对应的客户端对于联邦学习系统的贡献越高。因此,服务端在进行聚合操作时应赋予对应客户端更高的权重。由于模型在训练过程中在不断更新,对应权重也应该不断更新。
基于此,本实施例中优选基于局部模型可用度,在服务端为每个客户端定义一个随通信轮次/>改变的动态聚合权重,即有:
(3)
式(3)中,表示动态聚合权重。
进一步地,全局生成器是由各个客户端上传的局部生成器/>聚合得到,而不同贡献程度的客户端对应的权重也分有高低,因此,本实施例中优选基于动态聚合权重来设计全局生成器/>的聚合过程,即有:
(4)。
应当理解,局部生成器的聚合权重为其对应客户端的动态聚合权重/>。
如前所述,动态聚合权重是基于各个客户端对整体联邦学习系统的贡献度进行设计。客户端对联邦学习系统的贡献度越高,则其对应的局部生成器/>所生成的数据越能反应联邦学习系统整体数据分布。因此,动态聚合权重/>使得全局生成器/>能够根据局部生成器/>的生成能力进行聚合,从而促使全局生成器/>生成更符合实际全局数据分布的全局伪数据/>,为全局知识蒸馏提供训练数据的质量保障。
S3、将所述全局伪数据集作为训练集分别输入所述局部模型和初始聚合模型中进行分类预测,分别得到第一局部模型分类预测结果以及初始聚合模型分类预测结果。
本实施例中,局部模型可以是神经网络模型,相应的,由局部模型/>聚合得到的初始聚合模型/>也是神经网络模型。将全局生成器/>生成的全局伪数据/>分别输入到局部模型/>和初始聚合模型/>中,局部模型/>和初始聚合模型/>分别对输入的全局伪数据/>进行分类预测并输出结果,从而得到第一局部模型分类预测结果/>和初始聚合模型分类预测结果/>。
S4、基于所述第一局部模型分类预测结果和初始聚合模型分类预测结果对所述初始聚合模型进行微调,得到全局模型。
在本实施例中,最小化模型输出之间的KL散度是全局知识蒸馏的目标,通过对此目标的完成,来实现对初始聚合模型的微调。进而,微调后的初始聚合模型作为本轮次的全局模型广播给各个客户端。微调的对象是初始聚合模型,其作用是对初始聚合模型进行优化。微调的过程通过全局知识蒸馏实现,当模型输出之间的KL散度实现最小化时,本轮次的全局知识蒸馏停止,微调完成。此时的初始聚合模型即为本轮的全局模型。
具体为,最小化第一局部模型分类预测结果和初始聚合模型分类预测结果/>之间的KL散度来对初始聚合模型/>进行微调,以得到全局模型/>,即有:
(5)
式(5)中,代表KL散度,/>表示全局知识蒸馏的损失函数。
本实施例中,全局知识蒸馏的目标是提高全局模型的泛化性。
应当理解,初始聚合模型是采用对局部模型/>取平均的方式聚合得到。由于数据异构的存在,各个局部模型/>对联邦学习系统的贡献度不同,导致采用对局部模型/>取平均的方式聚合得到的初始聚合模型/>性能较低。因此,本实施例中优选在服务端将初始聚合模型/>作为学生模型、将局部模型/>作为教师模型来设计全局知识蒸馏。
在此全局知识蒸馏过程中,将动态聚合权重赋予局部模型/>及其对应的分类预测/>,通过最小化初始聚合模型分类预测结果/>与局部模型分类预测聚合/>之间的KL散度来对初始聚合模型/>进行微调,最终得到全局模型/>。
同时,本实施例中再次使用动态聚合权重,使得初始聚合模型/>根据客户端对联邦学习系统的贡献度学习对应局部模型/>所包含的知识,为全局模型/>提供了泛化性保障。
上述为全局知识蒸馏的实施过程,以下结合图3对本实施例的局部知识蒸馏作进一步说明。
在数据异构场景中,客户端训练模型旨在实现两个目标:学习本地数据集的个性化知识和全局模型传递的泛化性知识。
在机器学习领域,模型表现出优先考虑从容易训练的数据中获取知识的倾向,同时无意中忽略了更具训练挑战性的“困难数据”。这种现象在数据异构性的背景下变得尤其明显,导致局部模型难以准确学习各自本地数据集中不同数据类别细微的特征差异,进而无法对数据进行准确的分类预测。这些困难数据本质上构成了重大的学习挑战,对模型的准确性和鲁棒性产生一定程度的影响。
为了应对这项挑战,本实施例中为每个客户端设计一个局部生成器,并通过局部对抗训练的形式实现局部知识蒸馏。局部对抗训练在局部生成器和局部模型/>之间实施。局部对抗训练促使局部生成器/>生成的局部伪数据中包含更高比例的困难数据。生成的局部伪数据随后被用作优化局部模型/>的有效工具。
由于服务端使用全局伪数据微调初始聚合模型/>得到全局模型/>,所以全局模型/>对于伪数据的预测能力优于局部模型/>。基于此,在设计局部知识蒸馏时,本实施例中优选以全局模型/>为教师模型、局部模型/>为学生模型来进行局部知识蒸馏。
具体参图1和图3所示,所述局部知识蒸馏包括:
S5、利用局部模型的局部生成器生成局部伪数据,并将所述局部伪数据构建为局部伪数据集。
本实施例中,局部模型的局部生成器/>所生成局部伪数据用/>表示,所构建的局部伪数据集用/>表示,其中,/>表示客户端,/>表示第/>个局部伪数据,且/>。
S6、将步骤S4中得到的全局模型分别下发至各客户端,各客户端利用所述局部伪数据集以及接收到的全局模型更新其局部模型的局部生成器。
具体地,客户端冻结本地局部模型,并接收服务端下发的全局模型/>。
之后,所述更新局部生成器的操作包括:
S61、将所构建的局部伪数据集作为训练集分别输入局部模型/>和接收到的全局模型/>中进行分类预测,分别得到第二局部模型分类预测结果/>以及第一全局模型分类预测结果/>;
S62、通过最大化第二局部模型分类预测结果和第一全局模型分类预测结果/>之间的KL散度来更新局部生成器/>,促使局部生成器/>生成更多的困难数据,传递本地个性化知识;即有:
(6)
式(6)中,为知识蒸馏损失函数。
S7、利用更新后的局部生成器生成新的局部伪数据,并利用所述新的局部伪数据优化对应的局部模型。
本实施例中,更新后的局部生成器所生成的新的局部伪数据用/>表示。
所述利用新的局部伪数据优化对应的局部模型的操作包括:
S71、将新的局部伪数据作为新一轮的训练数据分别输入局部模型/>和全局模型/>中进行分类预测,分别得到第三局部模型分类预测结果/>以及第二全局模型分类预测结果/>;
S72、通过最小化第三局部模型分类预测结果和第二全局模型分类预测结果/>之间的KL散度来更新对应的局部模型/>,即有:
(7)
式(7)中,表示更新后的局部模型。
在此局部知识蒸馏过程中,首先将更新前的局部生成器生成的局部伪数据/>分别输入到更新前的局部模型/>和接收到的全局模型/>中进行分类预测,分别得到第二局部模型分类预测结果/>以及第一全局模型分类预测结果/>;然后通过最大化第二局部模型分类预测结果/>和第一全局模型分类预测结果/>之间的KL散度来更新局部生成器/>,得到更新后的局部生成器/>。
之后,再利用更新后的局部生成器生成新的局部伪数据/>,并将新的局部伪数据/>分别输入局部模型/>和接收到的全局模型/>中进行分类预测,分别得到第三局部模型分类预测结果/>以及第二全局模型分类预测结果/>;然后通过最小化第三局部模型分类预测结果/>和第二全局模型分类预测结果/>之间的KL散度来更新对应的局部模型/>,从而推动局部模型/>向着全局模型/>的方向更新,得到优化的局部模型/>,实现降低了各局部模型/>之间的差异,提高局部模型泛化性。
且,上述局部生成器的更新和局部模型/>的优化更新之间形成一个局部对抗训练的过程,即:
(8)
式(8)中,表示局部对抗训练的损失函数。
如此,本实施例中所设计的局部知识蒸馏能够达到优化局部模型和更新局部生成器的目的。在每轮通信中,客户端将局部模型和局部生成器均上传至服务端。局部生成器负责传递本地数据集中包含的个性化知识,局部模型不断增强其泛化能力,从而鼓励全局模型泛化能力的进一步提高,实现个性化和泛化性的双重增强。
进一步地,本实施例的方法在CIFAR-10数据集上进行了实验,并与现有的FedAvg(联邦平均算法)、FedNTD(非真联邦知识蒸馏算法)、FCCL(联邦交叉相关和持续学习算法)、DAFKD(领域知识感知联邦蒸馏算法)四种方法进行了对比,以评估本方法训练的模型在不同程度的数据异质性下的性能。使用来量化异质性,其中较小的/>值表示较高的异质性。对比结果参图4所示。
结合图4可以看出,随着异质性程度的增加,所有方法的性能都在稳步提高。与此同时,本方法在所有异质性级别上始终优于其他四种方法。此外,本方法在高度异构的数据场景(即=0.05)中继续实现高精度,并且与数据异构性较低的场景(即/>=0.8)相比,模型精度的差异小于其他四种方法。这表明本方法受数据异构程度的影响较小,在数据异构环境中表现出很强的鲁棒性。
实施例2、
本实施例提供了一种实现面向异构数据的双重联邦蒸馏学习方法的装置,所述装置包括:
第一构建模块,用于利用全局模型的全局生成器生成全局伪数据,并将所述全局伪数据构建为全局伪数据集;
聚合模块,用于聚合各客户端的局部模型,以得到初始聚合模型;
预测模块,用于将所述全局伪数据集分别输入所述局部模型和初始聚合模型中进行分类预测,以分别得到第一局部模型分类预测结果以及初始聚合模型分类预测结果;
调整模块,用于基于所述第一局部模型分类预测结果和初始聚合模型分类预测结果对所述初始聚合模型进行微调,以得到全局模型;
第二构建模块,用于利用局部模型的局部生成器生成局部伪数据,并将所述局部伪数据构建为局部伪数据集;
更新模块,用于将全局模型分别下发至各客户端,以使各客户端利用所述局部伪数据集以及接收到的全局模型更新其局部模型的局部生成器;
优化模块,用于利用更新后的局部生成器生成新的局部伪数据,并利用所述新的局部伪数据优化对应的局部模型。
显然,本发明的上述实施例仅仅是为清楚地说明本发明技术方案所作的举例,而并非是对本发明的具体实施方式的限定。凡在本发明权利要求书的精神和原则之内所做的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
Claims (10)
1.一种面向异构数据的双重联邦蒸馏学习方法,其特征在于,应用于联邦学习系统,所述联邦学习系统包括服务端和多个客户端,所述客户端上部署有局部模型,且局部模型聚合形成全局模型并部署于服务端;所述方法包括在服务端进行的全局知识蒸馏和在各客户端进行的局部知识蒸馏;其中,
所述全局知识蒸馏包括:
S1、利用全局模型的全局生成器生成全局伪数据,并将所述全局伪数据构建为全局伪数据集;
S2、聚合各客户端的局部模型,得到初始聚合模型;
S3、将所述全局伪数据集分别输入所述局部模型和初始聚合模型中进行分类预测,分别得到第一局部模型分类预测结果以及初始聚合模型分类预测结果;
S4、基于所述第一局部模型分类预测结果和初始聚合模型分类预测结果对所述初始聚合模型进行微调,得到全局模型;
所述局部知识蒸馏包括:
S5、利用局部模型的局部生成器生成局部伪数据,并将所述局部伪数据构建为局部伪数据集;
S6、将步骤S4中得到的全局模型分别下发至各客户端,各客户端利用所述局部伪数据集以及接收到的全局模型更新其局部模型的局部生成器;
S7、利用更新后的局部生成器生成新的局部伪数据,并利用所述新的局部伪数据优化对应的局部模型。
2.根据权利要求1所述的一种面向异构数据的双重联邦蒸馏学习方法,其特征在于,所述步骤S2具体包括:在服务端对各客户端的局部模型进行聚合平均操作,得到初始聚合模型,即:
(1);
式(1)中,表示服务端与客户端之间的通信轮次,且/>,/>表示的是共通信/>轮,/>表示共有/>个客户端,/>表示第/>个客户端,/>,/>表示第/>个客户端的数据量,/>表示全局数据量,/>表示第/>个客户端的局部模型。
3.根据权利要求2所述的一种面向异构数据的双重联邦蒸馏学习方法,其特征在于,所述步骤S2具体还包括:基于局部模型与初始聚合模型之间的余弦相似度计算局部模型可用度,即:
(2);
式(2)中,表示局部模型可用度。
4.根据权利要求3所述的一种面向异构数据的双重联邦蒸馏学习方法,其特征在于,所述步骤S2具体还包括:基于局部模型可用度,在服务端为每个客户端定义一个随通信轮次改变的动态聚合权重,即:
(3);
式(3)中,表示动态聚合权重。
5.根据权利要求4所述的一种面向异构数据的双重联邦蒸馏学习方法,其特征在于,所述步骤S2具体还包括:基于动态聚合权重设计全局生成器的聚合过程,即:
(4);
式(4)中,表示服务端,/>表示全局生成器,/>表示局部生成器。
6.根据权利要求4所述的一种面向异构数据的双重联邦蒸馏学习方法,其特征在于,所述步骤S4具体包括:最小化第一局部模型分类预测结果和初始聚合模型分类预测结果之间的KL散度,以对初始聚合模型进行微调,得到全局模型,即:
(5);
式(5)中,表示全局模型,/>表示全局知识蒸馏的损失函数,/>表示全局生成器生成的全局伪数据,/>表示由全局伪数据构成的全局伪数据集,/>表示KL散度,/>表示第一局部模型分类预测结果,/>表示初始聚合模型分类预测结果。
7.根据权利要求1所述的一种面向异构数据的双重联邦蒸馏学习方法,其特征在于,所述步骤S6具体包括:
S61、将所述局部伪数据集分别输入局部模型和接收到的全局模型中进行分类预测,分别得到第二局部模型分类预测结果以及第一全局模型分类预测结果;
S62、最大化所述第二局部模型分类预测结果和第一全局模型分类预测结果之间的KL散度,以更新对应局部模型的局部生成器;
其中,所述步骤S62具体包括:
(6);
式(6)中,为知识蒸馏损失函数,/>表示局部生成器生成的局部伪数据,/>表示由局部伪数据构成的局部伪数据集,/>表示第二局部模型分类预测结果,/>表示第一全局模型分类预测结果。
8.根据权利要求7所述的一种面向异构数据的双重联邦蒸馏学习方法,其特征在于,所述步骤S7具体包括:
S71、将新的局部伪数据分别输入局部模型和全局模型中进行分类预测,分别得到第三局部模型分类预测结果以及第二全局模型分类预测结果;
S72、最小化第三局部模型分类预测结果和第二全局模型分类预测结果之间的KL散度,以更新对应的局部模型;
其中,所述步骤S72具体包括:
(7);
式(7)中,表示更新后的局部模型,/>表示更新后的局部生成器生成的新的局部伪数据,/>表示第三局部模型分类预测结果,/>表示第二全局模型分类预测结果。
9.根据权利要求8所述的一种面向异构数据的双重联邦蒸馏学习方法,其特征在于,所述局部生成器的更新过程与局部模型的优化过程之间形成局部对抗训练,即:
(8);
式(8)中,表示局部对抗训练的损失函数。
10.一种实现面向异构数据的双重联邦蒸馏学习方法的装置,其特征在于,所述装置包括:
第一构建模块,用于利用全局模型的全局生成器生成全局伪数据,并将所述全局伪数据构建为全局伪数据集;
聚合模块,用于聚合各客户端的局部模型,以得到初始聚合模型;
预测模块,用于将所述全局伪数据集分别输入所述局部模型和初始聚合模型中进行分类预测,以分别得到第一局部模型分类预测结果以及初始聚合模型分类预测结果;
调整模块,用于基于所述第一局部模型分类预测结果和初始聚合模型分类预测结果对所述初始聚合模型进行微调,以得到全局模型;
第二构建模块,用于利用局部模型的局部生成器生成局部伪数据,并将所述局部伪数据构建为局部伪数据集;
更新模块,用于将全局模型分别下发至各客户端,以使各客户端利用所述局部伪数据集以及接收到的全局模型更新其局部模型的局部生成器;
优化模块,用于利用更新后的局部生成器生成新的局部伪数据,并利用所述新的局部伪数据优化对应的局部模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311474649.2A CN117196070B (zh) | 2023-11-08 | 2023-11-08 | 一种面向异构数据的双重联邦蒸馏学习方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311474649.2A CN117196070B (zh) | 2023-11-08 | 2023-11-08 | 一种面向异构数据的双重联邦蒸馏学习方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117196070A true CN117196070A (zh) | 2023-12-08 |
CN117196070B CN117196070B (zh) | 2024-01-26 |
Family
ID=88985447
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311474649.2A Active CN117196070B (zh) | 2023-11-08 | 2023-11-08 | 一种面向异构数据的双重联邦蒸馏学习方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117196070B (zh) |
Citations (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110081089A1 (en) * | 2009-06-16 | 2011-04-07 | Canon Kabushiki Kaisha | Pattern processing apparatus and method, and program |
US20180137404A1 (en) * | 2016-11-15 | 2018-05-17 | International Business Machines Corporation | Joint learning of local and global features for entity linking via neural networks |
CN113222031A (zh) * | 2021-05-19 | 2021-08-06 | 浙江大学 | 基于联邦个性化学习的光刻热区检测方法 |
CN113806735A (zh) * | 2021-08-20 | 2021-12-17 | 北京工业大学 | 一种执行与评价双网络个性化联邦学习入侵检测方法及系统 |
CN114186237A (zh) * | 2021-10-26 | 2022-03-15 | 北京理工大学 | 一种基于真值发现的鲁棒性联邦学习模型聚合方法 |
CN114818510A (zh) * | 2022-05-17 | 2022-07-29 | 京东科技信息技术有限公司 | 一种基于全局模型优化的联邦学习方法、装置和电子设备 |
CN115145966A (zh) * | 2022-09-05 | 2022-10-04 | 山东省计算中心(国家超级计算济南中心) | 一种面向异构数据的对比联邦学习方法及系统 |
WO2023005133A1 (zh) * | 2021-07-28 | 2023-02-02 | 深圳前海微众银行股份有限公司 | 联邦学习建模优化方法、设备、可读存储介质及程序产品 |
CN115695429A (zh) * | 2022-11-07 | 2023-02-03 | 东莞理工学院 | 面向Non-IID场景的联邦学习客户端选择方法 |
CN115953630A (zh) * | 2023-01-09 | 2023-04-11 | 西北工业大学 | 一种基于全局-局部知识蒸馏的跨域小样本图像分类方法 |
KR102523699B1 (ko) * | 2022-12-16 | 2023-04-21 | (주)임픽스 | 제조 환경을 위한 연합학습 시스템 |
CN116227624A (zh) * | 2023-02-21 | 2023-06-06 | 杭州医康慧联科技股份有限公司 | 面向异构模型的联邦知识蒸馏方法和系统 |
WO2023124296A1 (zh) * | 2021-12-29 | 2023-07-06 | 新智我来网络科技有限公司 | 基于知识蒸馏的联合学习训练方法、装置、设备及介质 |
CN116665000A (zh) * | 2023-05-29 | 2023-08-29 | 河南大学 | 一种基于扩散模型和权重自适应知识蒸馏的联邦学习算法 |
CN116681144A (zh) * | 2023-06-09 | 2023-09-01 | 安徽师范大学 | 基于动态自适应知识蒸馏的联邦学习模型聚合方法 |
US20230298330A1 (en) * | 2021-10-10 | 2023-09-21 | Purdue Research Foundation | Systems and methods for object detection in extreme low-light conditions |
WO2023175335A1 (en) * | 2022-03-18 | 2023-09-21 | King's College London | A time-triggered federated learning algorithm |
CN116862024A (zh) * | 2023-07-21 | 2023-10-10 | 大连理工大学 | 基于聚类和知识蒸馏的可信个性化联邦学习方法和装置 |
CN116976461A (zh) * | 2023-06-26 | 2023-10-31 | 北京百度网讯科技有限公司 | 联邦学习方法、装置、设备及介质 |
-
2023
- 2023-11-08 CN CN202311474649.2A patent/CN117196070B/zh active Active
Patent Citations (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110081089A1 (en) * | 2009-06-16 | 2011-04-07 | Canon Kabushiki Kaisha | Pattern processing apparatus and method, and program |
US20180137404A1 (en) * | 2016-11-15 | 2018-05-17 | International Business Machines Corporation | Joint learning of local and global features for entity linking via neural networks |
CN113222031A (zh) * | 2021-05-19 | 2021-08-06 | 浙江大学 | 基于联邦个性化学习的光刻热区检测方法 |
WO2023005133A1 (zh) * | 2021-07-28 | 2023-02-02 | 深圳前海微众银行股份有限公司 | 联邦学习建模优化方法、设备、可读存储介质及程序产品 |
CN113806735A (zh) * | 2021-08-20 | 2021-12-17 | 北京工业大学 | 一种执行与评价双网络个性化联邦学习入侵检测方法及系统 |
US20230298330A1 (en) * | 2021-10-10 | 2023-09-21 | Purdue Research Foundation | Systems and methods for object detection in extreme low-light conditions |
CN114186237A (zh) * | 2021-10-26 | 2022-03-15 | 北京理工大学 | 一种基于真值发现的鲁棒性联邦学习模型聚合方法 |
WO2023124296A1 (zh) * | 2021-12-29 | 2023-07-06 | 新智我来网络科技有限公司 | 基于知识蒸馏的联合学习训练方法、装置、设备及介质 |
WO2023175335A1 (en) * | 2022-03-18 | 2023-09-21 | King's College London | A time-triggered federated learning algorithm |
CN114818510A (zh) * | 2022-05-17 | 2022-07-29 | 京东科技信息技术有限公司 | 一种基于全局模型优化的联邦学习方法、装置和电子设备 |
CN115145966A (zh) * | 2022-09-05 | 2022-10-04 | 山东省计算中心(国家超级计算济南中心) | 一种面向异构数据的对比联邦学习方法及系统 |
CN115695429A (zh) * | 2022-11-07 | 2023-02-03 | 东莞理工学院 | 面向Non-IID场景的联邦学习客户端选择方法 |
KR102523699B1 (ko) * | 2022-12-16 | 2023-04-21 | (주)임픽스 | 제조 환경을 위한 연합학습 시스템 |
CN115953630A (zh) * | 2023-01-09 | 2023-04-11 | 西北工业大学 | 一种基于全局-局部知识蒸馏的跨域小样本图像分类方法 |
CN116227624A (zh) * | 2023-02-21 | 2023-06-06 | 杭州医康慧联科技股份有限公司 | 面向异构模型的联邦知识蒸馏方法和系统 |
CN116665000A (zh) * | 2023-05-29 | 2023-08-29 | 河南大学 | 一种基于扩散模型和权重自适应知识蒸馏的联邦学习算法 |
CN116681144A (zh) * | 2023-06-09 | 2023-09-01 | 安徽师范大学 | 基于动态自适应知识蒸馏的联邦学习模型聚合方法 |
CN116976461A (zh) * | 2023-06-26 | 2023-10-31 | 北京百度网讯科技有限公司 | 联邦学习方法、装置、设备及介质 |
CN116862024A (zh) * | 2023-07-21 | 2023-10-10 | 大连理工大学 | 基于聚类和知识蒸馏的可信个性化联邦学习方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN117196070B (zh) | 2024-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Tang et al. | Computational intelligence and deep learning for next-generation edge-enabled industrial IoT | |
Liu et al. | From distributed machine learning to federated learning: A survey | |
Li et al. | Edge AI: On-demand accelerating deep neural network inference via edge computing | |
Chen et al. | Fedgraph: Federated graph learning with intelligent sampling | |
Prakash et al. | IoT device friendly and communication-efficient federated learning via joint model pruning and quantization | |
Zhang et al. | Real-time end-to-end federated learning: An automotive case study | |
CN111737743A (zh) | 一种深度学习差分隐私保护方法 | |
Qiao et al. | Adaptive federated deep reinforcement learning for proactive content caching in edge computing | |
Shu et al. | FLAS: Computation and communication efficient federated learning via adaptive sampling | |
Li et al. | Task scheduling algorithm based on fireworks algorithm | |
Wang et al. | Deep joint source-channel coding for multi-task network | |
CN116862022A (zh) | 一种通信高效的隐私保护个性化联邦学习方法 | |
CN117196070B (zh) | 一种面向异构数据的双重联邦蒸馏学习方法及装置 | |
Sang et al. | On the generation of adversarial examples for image quality assessment | |
Zhao et al. | AFL: An adaptively federated multitask learning for model sharing in industrial IoT | |
Javan et al. | Images encryption based on robust multi-mode finite time synchronization of fractional-order hyper-chaotic Rikitake systems | |
CN117033997A (zh) | 数据切分方法、装置、电子设备和介质 | |
Zhu et al. | Edge collaborative caching solution based on improved NSGA II algorithm in Internet of Vehicles | |
Liu et al. | Adaptive block-wise regularization and knowledge distillation for enhancing federated learning | |
Furtuanpey et al. | FrankenSplit: Efficient Neural Feature Compression with Shallow Variational Bottleneck Injection for Mobile Edge Computing | |
Su et al. | An Enhancing Semi-Supervised Federated Learning Framework for Internet of Vehicles | |
Yin et al. | Knowledge distillation and training balance for heterogeneous decentralized multi-modal learning over wireless networks | |
Wang et al. | Contract Theory Based Incentive Mechanism for Clustered Vehicular Federated Learning | |
CN117973505A (zh) | 一种联邦学习模型训练方法、装置、电子设备和存储介质 | |
Wen et al. | Resource-aware multi-criteria vehicle participation for federated learning in Internet of vehicles |
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 |