基于联邦学习的模型更新方法及系统

未命名 09-11 阅读:95 评论:0


1.本发明涉及联邦学习技术领域,尤其涉及一种基于联邦学习的模型更新方法及系统。


背景技术:

2.随着边缘设备在现代社会中越来越普遍,分布式私人数据快速增长。这些数据为人工智能应用提供了巨大的机会。然而,这些数据以孤岛的形式存储在终端用户自己的设备中,如手机和个人电脑,大多具有高度敏感性。随着数据隐私保护法的出台,如一般数据保护条例(general data protection regulation,gdpr),人工智能中保护隐私的需求越来越大,所以这些数据通常不会被公开。近年来,人工智能(artificial intelligence,ai)仍在快速发展,随之而来的是越来越庞大的ai模型,这些模型对于训练数据量的需求也越来越大。为了在保护数据隐私的前提下利用多个机构或个人的数据,实现信息融合,联邦学习成为一种有效的方法来训练ai模型。这种方法允许在保持数据机密性的同时利用大量数据进行模型训练。
3.联合学习(federated learning,fl)是最近几年提出的一种机器学习范式,其采用“客户端-服务器”的架构模式,旨在解决上述问题,图1是现有技术提供的联邦学习的架构示意图,如图1。联邦学习训练模型通过迭代三步直到收敛:(1)服务器通过网络发送全局模型到本轮参与训练的客户端;(2)客户端接收全局模型后,覆盖旧的本地模型,然后结合客户端本地的私有数据进行训练;(3)训练完成后,客户端通过网络上传训练后的本地模型到服务器;服务器收到满足设定个数的客户端上传的训练后的本地模型后执行模型聚合,生成新的全局模型。可以看出,联合学习以保护隐私的方式,促进多个数据仓的客户进行协作训练,在训练过程中,客户的私人数据存储在本地,不直接共享,这样客户可以在保护隐私的同时实现比单独工作更好的性能。
4.然而,由于数据源和计算节点是终端用户的个人设备,每个客户都有自己独立的数据,没有独立和识别性分布(independent and identically distributed,iid)的训练数据,即参与训练客户的私人数据可能在规模、分布都不一样,从而导致传统联邦学习所产生的单一的全局模型对于一些客户来说表现并不好,甚至不如简单地使用各自的本地数据(即使它很小)来训练一个本地模型的效果。
5.个性化联邦学习旨在利用联邦学习过程弥补客户端本地数据量不足的问题,为每个客户端学习一个适用于本地数据集的模型,提高个性化联邦学习模型训练效果。
6.在个性化联邦学习领域,一些联合学习方法试图通过在全局模型训练后进行局部微调来解决这个问题,但这一方法的个性化性能依然取决于全局模型的泛化性能,并没有解决本质问题。另一些联合学习算法探索分布式聚类集群技术来更好地模拟非iid数据,使用多次迭代聚类方案,但这一方法对于通信带宽、计算资源有限的客户端很不友好。
7.因此,能够充分利用数据异构环境中所有客户的数据,在有限的网络通信资源,客户端的有限计算资源和有限存储资源的情况下,为每一个客户端学习一个最优的个性化模
型,达到更高的性能,是联邦学习技术的关键问题之一。


技术实现要素:

8.本发明提供的基于联邦学习的模型更新方法及系统,用于解决现有技术中存在的上述问题。
9.本发明提供的一种基于联邦学习的模型更新方法,应用于参与联邦学习的服务器,包括:
10.根据参与所述联邦学习的目标客户端的合成数据,对所述目标客户端所属集群进行更新,直至初始化的k个集群达到稳定分布状态,并将每个集群内的目标聚类模型发送给所述目标客户端,所述合成数据是根据接收到的所述目标客户端的数据分布信息得到的,所述稳定分布状态为所述目标客户端所属集群不再变化,所述目标客户端包括n个客户端,所述目标聚类模型是根据所述初始化的k个集群达到稳定分布状态下的每个集群内的聚类模型确定的;
11.执行如下第一循环过程,直至所述目标客户端中的候选模型收敛,所述候选模型是所述目标客户端对接收到的每个集群内的目标聚类模型进行更新后得到的;
12.所述第一循环过程,包括:
13.接收目标客户端发送的候选模型,并对所述候选模型进行更新;
14.将更新后的候选模型发送给所述目标客户端,以使所述目标客户端对所述候选模型进行更新。
15.根据本发明提供的一种基于联邦学习的模型更新方法,应用于参与联邦学习的服务器,所述根据所述目标客户端的合成数据,对所述目标客户端所属集群进行更新,包括:
16.初始化目标客户端所属集群;
17.根据每个集群内的聚类模型的经验损失函数,获取每个客户端的合成数据在每个集群内的聚类模型的经验损失值;
18.根据所述每个客户端的合成数据在每个集群内的聚类模型的经验损失值,对所述目标客户端所属集群进行更新,以确定所述k个集群达到稳定分布状态时,每个集群内包含的客户端,所述每个集群内包含的客户端为所述目标客户端中满足合成数据在每个集群内的聚类模型的经验损失值达到最小值的客户端。
19.根据本发明提供的一种基于联邦学习的模型更新方法,应用于参与联邦学习的服务器,所述根据所述每个客户端的合成数据在每个集群内的聚类模型的经验损失值,对所述目标客户端所属集群进行更新,包括:
20.执行如下第二循环过程,直至所述k个集群达到稳定分布状态;
21.所述第二循环过程,包括:
22.基于梯度下降法对每个集群内的聚类模型进行更新;
23.基于每个集群包含的客户端的合成数据,更新每个集群内的包含的客户端在集群内的更新后的聚类模型的经验损失值;
24.根据所述每个集群内的包含的客户端在集群内的更新后的聚类模型的经验损失值,对所述目标客户端所属集群进行更新。
25.根据本发明提供的一种基于联邦学习的模型更新方法,应用于参与联邦学习的服
务器,所述接收目标客户端发送的所述候选模型,并对所述候选模型进行更新,包括:
26.根据第一优化目标函数与第二优化目标函数之和,确定所述候选模型的优化目标函数,所述第一优化目标函数为所述目标客户端的候选模型的损失函数之和,所述第二优化目标函数为任一客户端的接收到的目标聚类模型与所述目标客户端中的其余客户端接收到的目标聚类模型之间差异的非线性函数之和;
27.基于梯度下降法对所述第一优化目标函数进行优化;
28.基于近似点法对第二优化目标函数进行优化;
29.根据所述优化目标函数取最小值时的候选模型,对所述候选模型进行更新。
30.本发明还提供一种基于联邦学习的模型更新方法,应用于参与联邦学习的目标客户端,包括:
31.将所述目标客户端的数据分布信息发送给参与所述联邦学习的服务器,以使所述服务器根据所述目标客户端的合成数据,对所述目标客户端所属集群进行更新,所述目标客户端包括n个客户端,所述合成数据是根据接收到的所述目标客户端的数据分布信息得到的;
32.在所述服务器确定初始化的k个集群达到稳定分布状态的情况下,接收所述服务器发送的每个集群内的目标聚类模型,所述稳定分布状态为所述目标客户端所属集群不再变化,所述目标聚类模型是根据所述初始化的k个集群达到稳定分布状态下的每个集群内的聚类模型确定的;
33.执行如下第一循环过程,直至候选模型收敛,所述候选模型是所述目标客户端对接收到的每个集群内的目标聚类模型进行更新后得到的;
34.所述第一循环过程,包括:
35.向所述服务器发送候选模型,以使所述服务器对接收到的所述候选模型进行更新;
36.接收所述服务器发送的更新后的候选模型,并对所述更新后的候选模型进行更新。
37.根据本发明提供的一种基于联邦学习的模型更新方法,应用于参与联邦学习的目标客户端,所述目标客户端的数据分布信息的获取方式,包括:
38.基于知识蒸馏技术,预训练教师网络;
39.将训练好的教师网络作为生成式对抗网络的判别器,所述生成式对抗网络部署在所述目标客户端;
40.基于所述判别器训练所述生成式对抗网络中的生成器,直至所述生成式对抗网络的损失函数的取值小于预设值;
41.根据所述训练好的生成器,确定所述目标客户端的数据分布信息。
42.本发明还提供一种基于联邦学习的模型更新系统,应用于参与联邦学习的服务器,包括:第一发送模块以及第一更新模块;
43.所述第一发送模块,用于根据参与所述联邦学习的目标客户端的合成数据,对所述目标客户端所属集群进行更新,直至初始化的k个集群达到稳定分布状态,并将每个集群内的目标聚类模型发送给所述目标客户端,所述合成数据是根据接收到的所述目标客户端的数据分布信息得到的,所述稳定分布状态为所述目标客户端所属集群不再变化,所述目
标客户端包括n个客户端,所述目标聚类模型是根据所述初始化的k个集群达到稳定分布状态下的每个集群内的聚类模型确定的;
44.所述第一更新模块,用于执行如下第一循环过程,直至所述目标客户端中的候选模型收敛,所述候选模型是所述目标客户端对接收到的每个集群内的目标聚类模型进行更新后得到的;
45.所述第一循环过程,包括:
46.接收目标客户端发送的候选模型,并对所述候选模型进行更新;
47.所述第二发送模块,用于将更新后的候选模型发送给所述目标客户端,以使所述目标客户端对所述候选模型进行更新。
48.本发明还提供一种基于联邦学习的模型更新系统,应用于参与联邦学习的目标客户端,包括:第二发送模块、接收模块以及第二更新模块;
49.所述第二发送模块,用于将所述目标客户端的数据分布信息发送给参与所述联邦学习的服务器,以使所述服务器根据所述目标客户端的合成数据,对所述目标客户端所属集群进行更新,所述目标客户端包括n个客户端,所述合成数据是根据接收到的所述目标客户端的数据分布信息得到的;
50.所述接收模块,用于在所述服务器确定初始化的k个集群达到稳定分布状态的情况下,接收所述服务器发送的每个集群内的目标聚类模型,所述稳定分布状态为所述目标客户端所属集群不再变化,所述目标聚类模型是根据所述初始化的k个集群达到稳定分布状态下的每个集群内的聚类模型确定的;
51.所述第二更新模块,用于执行如下第一循环过程,直至候选模型收敛,所述候选模型是所述目标客户端对接收到的每个集群内的目标聚类模型进行更新后得到的;
52.所述第一循环过程,包括:
53.向所述服务器发送候选模型,以使所述服务器对接收到的所述候选模型进行更新;
54.所述第二接收模块,用于接收所述服务器发送的更新后的候选模型,并对所述更新后的候选模型进行更新。
55.本发明还提供一种电子设备,包括处理器和存储有计算机程序的存储器,所述处理器执行所述程序时实现如上述任一种所述基于联邦学习的模型更新方法。
56.本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述基于联邦学习的模型更新方法。
57.本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述基于联邦学习的模型更新方法。
58.本发明提供的基于联邦学习的模型更新方法及系统,参与协作训练的目标客户端将数据分布信息上传至服务器,服务器根据其上传的数据分布信息,对目标客户端进行聚类划分,得到目标客户端所属集群,节省了目标客户端的计算资源和存储资源,减轻了目标客户端与服务器之间的通信开销,为每一个客户端学习一个最优的个性化模型(即收敛的候选模型)。
附图说明
59.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
60.图1是现有技术提供的联邦学习的架构示意图;
61.图2是本发明提供的基于联邦学习的模型更新方法的流程示意图之一;
62.图3是本发明提供的服务器对目标客户端所属集群进行更新的流程示意图;
63.图4是本发明提供的生成个性化模型的示意图;
64.图5是本发明提供的基于联邦学习的模型更新方法的流程示意图之二;
65.图6是本发明提供的带有生成式对抗网络的生成数据分布的示意图;
66.图7是本发明提供的联邦学习的模型更新方法的流程示意图之三;
67.图8是本发明提供的基于联邦学习的模型更新系统的结构示意图之一;
68.图9是本发明提供的基于联邦学习的模型更新系统的结构示意图之二;
69.图10是本发明提供的电子设备的实体结构示意图。
具体实施方式
70.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
71.本发明提供的基于联邦学习的模型更新方法,通过学习客户端的数据分布、基于数据分布在服务器端完成客户端的聚类划分工作,减轻客户端与服务器之间的通信开销,节省客户端的计算资源和存储资源,以及在聚类集群内学习客户端的高性能个性化模型,解决在联邦学习中底层客户端的数据异构分布的情况下,所导致协作学习的全局模型的效果不佳,模型训练收敛慢的问题,包括以下步骤:客户端利用生成式对抗网络技术学习底层客户的不同数据分布,并通过通信信道将这些数据分布发送到服务器;服务器利用这些数据分布信息对参与的客户端进行相似性聚类,使得分布相似的客户端聚在一起;在每一个聚类内,充分利用客户端之间的相似性,为一个客户协作训练属于每个客户的个性化模型。本发明能够利用客户机的数据分布信息,在服务器端完成聚类工作,有效减少通信负载,提高通信效率,减轻通信带宽压力,节约了本地客户端的计算资源和存储资源,显著提升个性化模型的效果,具体实现如下:
72.图2是本发明提供的基于联邦学习的模型更新方法的流程示意图之一,如图2所示,方法包括:
73.步骤110,根据参与所述联邦学习的目标客户端的合成数据,对所述目标客户端所属集群进行更新,直至初始化的k个集群达到稳定分布状态,并将每个集群内的目标聚类模型发送给所述目标客户端,所述合成数据是根据接收到的所述目标客户端的数据分布信息得到的,所述稳定分布状态为所述目标客户端所属集群不再变化,所述目标客户端包括n个客户端,所述目标聚类模型是根据所述初始化的k个集群达到稳定分布状态下的每个集群
内的聚类模型确定的;
74.步骤120,执行如下第一循环过程,直至所述目标客户端中的候选模型收敛,所述候选模型是所述目标客户端对接收到的每个集群内的目标聚类模型进行更新后得到的;
75.所述第一循环过程,包括:
76.接收目标客户端发送的候选模型,并对所述候选模型进行更新;
77.将更新后的候选模型发送给所述目标客户端,以使所述目标客户端对所述候选模型进行更新。
78.需要说明的是,上述方法的执行主体可以是计算机设备,也可以应用于参与联邦学习的服务器。
79.可选地,该目标客户端可以具体是由参与联邦学习的服务器随机从参与联邦学习的客户端中随机选择的n个客户端,n为正整数。
80.该n个客户端的合成数据可以具体是n个客户端的数据分布信息得到的,该数据分布信息即为每个客户端中的生成器,该生成器可以具体是通过对部署在目标客户端的初始的本地模型(对抗式生成网络)进行训练后得到。
81.服务器通过接收该n个客户端的数据发布信息,在服务器端进行聚类划分,根据不同客户端上传的数据分布信息(即训练好的生成器)生成对应于各个客户端的合成数据,例如,服务器将噪声数据输入到训练好的生成器生成各个客户端的合成数据。
82.服务器接收到编号为1,2,

,i

,n的客户端c1c2...ci...cn的数据分布信息g1g2...gi...gn,基于数据分布信息g1g2...gi...gn生成对应于每个客户端的合成数据,将第i个客户信息在服务器的合成数据记为d
′i;将合成数据集大小记为|d
′i|。
83.并根据该n个客户端分别对应的合成数据,对目标客户端所属集群进行更新。
84.该集群可以具体是根据服务器初始化的k个集群中的任一集群,每个集群对应一个聚类模型,聚类模型的参数为其中,表示第j个聚类模型的参数,k为正整数。
85.服务器基于目标客户端对应的合成数据在服务器端进行多次迭代,并根据k个集群中聚类模型的经验损失函数计算出的最小损失来估计每个客户端所属集群,直到初始化的k个集群达到稳定分布状态,该稳定分布状态具体指目标客户端中的每个客户端所属集群不再变化,即每个集群内包含的客户端不再变化。
86.服务器在确定初始化的k个集群达到稳定分布状态的情况下,根据n个客户端中的每个客户端所属集群,将每个集群内的目标聚类模型发送给该集群内的客户端。
87.目标客户端接收到的服务器发送的目标聚类模型后,采用梯度下降法对其进行更新。
88.执行如下第一循环过程,直至目标客户端中的候选模型收敛。
89.该第一循环过程,包括:
90.目标客户端将更新后的目标聚类模型(即候选模型)发送给服务器。
91.服务器对接收到的候选模型中的参数进行更新,并将更新后的候选模型发送给目标客户端。
92.目标客户端采用第一下降法对接收到的服务器发送的更新后的候选模型进行更
新,直至候选模型收敛,将收敛的候选模型作为目标客户端的个性化模型。
93.本发明提供的基于联邦学习的模型更新方法,参与协作训练的目标客户端将数据分布信息上传至服务器,服务器根据其上传的数据分布信息,对目标客户端进行聚类划分,得到目标客户端所属集群,节省了目标客户端的计算资源和存储资源,减轻了目标客户端与服务器之间的通信开销,为每一个客户端学习一个最优的个性化模型(即收敛的候选模型)。
94.进一步地,在一个实施例中,所述根据所述目标客户端的合成数据,对所述目标客户端所属集群进行更新,可以具体包括:
95.初始化目标客户端所属集群;
96.根据每个集群内的聚类模型的经验损失函数,获取每个客户端的合成数据在每个集群内的聚类模型的经验损失值;
97.根据所述每个客户端的合成数据在每个集群内的聚类模型的经验损失值,对所述目标客户端所属集群进行更新,以确定所述k个集群达到稳定分布状态时,每个集群内包含的客户端,所述每个集群内包含的客户端为所述目标客户端中满足合成数据在每个集群内的聚类模型的经验损失值达到最小值的客户端。
98.进一步地,在一个实施例中,所述根据所述每个客户端的合成数据在每个集群内的聚类模型的经验损失值,对所述目标客户端所属集群进行更新,可以具体包括:
99.执行如下第二循环过程,直至所述k个集群达到稳定分布状态;
100.所述第二循环过程,包括:
101.基于梯度下降法对每个集群内的聚类模型进行更新;
102.基于每个集群包含的客户端的合成数据,更新每个集群内的包含的客户端在集群内的更新后的聚类模型的经验损失值;
103.根据所述每个集群内的包含的客户端在集群内的更新后的聚类模型的经验损失值,对所述目标客户端所属集群进行更新。
104.可选地,图3是本发明提供的服务器对目标客户端所属集群进行更新的流程示意图,如图3所示,服务器为目标客户端中的每个客户端分配集群身份,该集群身份用于表征客户端所属集群,假设第i个客户端ci的集群身份为
105.在服务器端初始化k个集群模型,将第k个聚类模型标记为θk,将聚类模型的层数记为|θk|,将第k个聚类模型的权重参数记为其中p表示聚类模型的倒数第p层上;将第k个聚类模型初始化标记为将聚类模型的经验损失函数记为fk(θk);
106.确定聚类模型的经验损失函数fk(θk):fk(θk)=argmin{fk(θ
k1
),fk(θ
k2
),...fk(θ
kn
)}
107.服务器就是那客户端ci的合成数据gi在k个聚类模型的经验损失值:f(θ1),f(θ2)...f(θk)
108.寻找合成数据gi在k个模型的最小损失,来更新每个客户端的集群身份即直至k个集群达到稳定分布状态。
109.服务器在确定k个集群达到稳定分布状态的情况下,确定每个集群内包含的客户端,该每个集群内包含的客户端为目标客户端中满足合成数据在每个集群内的聚类模型的经验损失值达到最小值(即最小损失)的客户端。
110.可选地,在每次迭代确认集群身份后,在每一个集群内,结合集群内的客户端的合成数据更新第k个聚类模型的经验损失值。
111.具体地,服务器通过执行如下第二循环过程,直至k个集群达到稳定分布状态:
112.假设经过上述过程对目标客户端所属集群进行一次更新后,第k个集群内包含的m个客户端分别为c
1 c2...cm。
113.服务器采用梯度下降的方式对集群内的聚类模型进行更新。
114.在第k个集群内,基于集群内的客户端c
1 c2...cm的合成数据g1g2...gi更新第k个集群内的更新后的聚类模型的经验损失值f(θk),其中,γ为聚类模型权重训练的学习率。
115.服务器根据每个集群内的包含的客户端在集群内的更新后的聚类模型的经验损失值,对目标客户端所属集群进行更新,直至k个集群达到稳定的分布状态。
116.本发明提供的基于联邦学习的模型更新方法,客户端的聚类工作是由服务器完成的,参与协作训练的目标客户端将数据分布信息上传至服务器,服务器根据其上传的数据分布信息,利用最小化损失的聚类策略对客户端进行划分,相比于其他的迭代式聚类联邦技术,本发明具有更低的通信成本,减轻了客户端的计算资源和存储资源,同时利用本发明提供的聚类方法可以将目标客户端正确划分,特别是参与联邦训练的客户端的数据呈现明显异构设置的条件下,客户端将会被划分为多个不同的聚类。
117.进一步地,在一个实施例中,所述接收目标客户端发送的所述候选模型,并对所述候选模型进行更新,可以具体包括:
118.根据第一优化目标函数与第二优化目标函数之和,确定所述候选模型的优化目标函数,所述第一优化目标函数为所述目标客户端的候选模型的损失函数之和,所述第二优化目标函数为任一客户端的接收到的目标聚类模型与所述目标客户端中的其余客户端接收到的目标聚类模型之间差异的非线性函数之和;
119.基于梯度下降法对所述第一优化目标函数进行优化;
120.基于近似点法对第二优化目标函数进行优化;
121.根据所述优化目标函数取最小值时的候选模型,对所述候选模型进行更新。
122.可选地,在各个达到稳定分布状态的集群内,得到每个集群的聚类模型,将不同的聚类模型下发至各个对应的客户端,具体地:
123.聚类达到稳定状态,客户端c
1 c2...ci...cn被划分为k个聚类,将第k个聚类模型θk下发至属于该集群的客户端。
124.步骤11,客户端ci采用梯度下降的方式更新接收到的服务器发送的目标聚类模型,并将更新后的目标聚类模型(即候选模型)发送到服务器,具体地:
125.步骤111,客户端c
1 c2...ci...cn接收服务器下发对应于客户端的集群身份的目标聚类模型;
126.步骤112,将第i个客户端ci接收到的目标聚类模型标记为wi;将目标聚类模型的层
数记为|wi|,将目标聚类模型的权重记为其中p表示只应用本地聚合在目标聚类模型的倒数第p层上;将目标聚类模型的损失函数记为f(wi);
127.步骤113,确定目标聚类模型的目标函数f(wi):f(wi)=argmin{f(w1),f(w2),...f(wn)}
128.步骤114,确定目标聚类模型的更新方式,利用接收到的目标聚类模型覆盖旧的本地模型,然后结合本地私有数据采用梯度下降的方式更新目标聚类模型:其中,η为本地更新模型的学习率,为客户端ci对目标聚类模型进行更新后得到的候选模型;
129.步骤115,将更新后的目标聚类模型(即候选模型)通过网络上传至服务器。
130.步骤21,服务器根据接收到的属于不同集群的客户端的发送的候选模型,在集群内利用消息传递机制生成每个客户端的个性化模型ui,将其下发给对应的客户端ci;具体地,
131.步骤211,服务器接收属于不同集群的客户端c
1 c2...ci...cn发送的候选模型;
132.步骤212,确定客户端的个性化云模型,将第i个客户端ci上的个性化云模型标记为ui;将个性化云模型的层数记为|ui|,将个性化云模型的权重记为其中p表示只应用本地聚合在本地模型的倒数第p层上;表示属于第k个集群内第i个客户端的个性化云模型的参数;
133.步骤213,定确定整体的优化目标函数:
[0134][0135]
其中,公式的前半部分代表第一优化目标函数,其是集群内所有客户端的目标聚类模型的损失函数之和公式后半部分代表第二优化目标函数,其是注意力机制部分是注意力机制部分其中a(||w
i-wi||2)是度量客户端ci接收到的目标聚类模型wi和其余客户端cj接收到的目标聚类模型wj的参数差异的非线性函数,满足从0开始递增且可微等条件。
[0136]
基于上述分析,将优化目标函数简化为:
[0137][0138]
步骤214,基于上述简化公式,确定优化方式。将优化步骤分为两部分:首先是通过梯度下降优化得到中间值uk,然后再通过近似点步骤进一步优化根据优化目标函数取最小值时的候选模型,对候选模型进行更新,得到更新后的候选模型,即个性化模型;
[0139]
步骤215,服务器计算每一个集群内客户端的个性化云模型的参数步骤215,服务器计算每一个集群内客户端的个性化云模型的参数步骤215,服务器计算每一个集群内客户端的个性化云模型的参数是对应的参数集的线性组合,如下所示:
[0140][0141]
其中,是客户端ci上传的目标聚类模型的参数集,其是通过使用客户端本地私有数据进行计算,ξ
i,1
,...,ξ
i,m
对应的权重。(ξ
i,1
+


i,m
=1)。ξ
i,j
表示为集群内的客户端cj对客户端ci的个性化模型的贡献权重。和之间的相似性越高,对彼此的贡献度越大。
[0142]
步骤215,将生成的个性化云模型下发给各个客户端c
1 c2...ci,..cn。
[0143]
步骤31,重复步骤11和步骤21,执行t轮训练,直至每个客户端的候选模型(即个性化模型)收敛,t可以根据实际情况灵活设置,具体如图4所示。
[0144]
本发明提供的基于联邦学习的模型更新方法,对于同一聚类内的相似客户端,充分利用客户端之间的相似性,为客户端协作训练属于每个客户端的个性化模型,相比于其余聚类个性化联邦学习方法可以得到更好的模型性能。
[0145]
图5是本发明提供的基于联邦学习的模型更新方法的流程示意图之二,如图5所示,包括:
[0146]
步骤210,将所述目标客户端的数据分布信息发送给参与所述联邦学习的服务器,以使所述服务器根据所述目标客户端的合成数据,对所述目标客户端所属集群进行更新,所述目标客户端包括n个客户端,所述合成数据是根据接收到的所述目标客户端的数据分布信息得到的;
[0147]
步骤220,在所述服务器确定初始化的k个集群达到稳定分布状态的情况下,接收所述服务器发送的每个集群内的目标聚类模型,所述稳定分布状态为所述目标客户端所属集群不再变化,所述目标聚类模型是根据所述初始化的k个集群达到稳定分布状态下的每个集群内的聚类模型确定的;
[0148]
步骤230,执行如下第一循环过程,直至候选模型收敛,所述候选模型是所述目标客户端对接收到的每个集群内的目标聚类模型进行更新后得到的;
[0149]
所述第一循环过程,包括:
[0150]
向所述服务器发送候选模型,以使所述服务器对接收到的所述候选模型进行更新;
[0151]
接收所述服务器发送的更新后的候选模型,并对所述更新后的候选模型进行更新。
[0152]
可选地,需要说明的是,上述方法的执行主体可以是计算机设备,也可以应用于参与联邦学习的目标客户端。
[0153]
可选地,该目标客户端可以具体是由参与联邦学习的服务器随机从参与联邦学习的客户端中随机选择的n个客户端,n为正整数。
[0154]
该n个客户端的合成数据可以具体是n个客户端的数据分布信息得到的,该数据分布信息即为每个客户端中的生成器,该生成器可以具体是通过对部署在目标客户端的初始的本地模型(对抗式生成网络)进行训练后得到。
[0155]
n个客户端将其对应的数据发布信息发送给参与联邦学习的服务器,在服务器端进行聚类划分。
[0156]
服务器根据接收到的不同客户端上传的数据分布信息(即训练好的生成器)生成对应于各个客户端的合成数据,例如,服务器将噪声数据输入到训练好的生成器生成各个客户端的合成数据。
[0157]
服务器接收到编号为1,2,...,i...,n的客户端c
1 c2...ci...cn的数据分布信息g
1 g2...gi...gn,基于数据分布信息g
1 g2...gi...gn生成对应于每个客户端的合成数据,将第i个客户信息在服务器的合成数据记为d
′i;将合成数据集大小记为|d
′i|。
[0158]
服务器根据该n个客户端分别对应的合成数据,对目标客户端所属集群进行更新。
[0159]
该集群可以具体是根据服务器初始化的k个集群中的任一集群,每个集群对应一个聚类模型,聚类模型的参数为其中,表示第j个聚类模型的参数,k为正整数。
[0160]
服务器基于目标客户端对应的合成数据在服务器端进行多次迭代,并根据k个集群中聚类模型的经验损失函数计算出的最小损失来估计每个客户端所属集群,直到初始化的k个集群达到稳定分布状态,该稳定分布状态具体指目标客户端中的每个客户端所属集群不再变化,即每个集群内包含的客户端不再变化。
[0161]
在服务器确定初始化的k个集群达到稳定分布状态的情况下,n个客户端接收服务器发送的目标聚类模型,该目标聚类模型是服务器根据初始化的k个集群达到稳定分布状态下的每个集群内的聚类模型确定的。
[0162]
目标客户端接收到的服务器发送的目标聚类模型后,采用梯度下降法对其进行更新。
[0163]
执行如下第一循环过程,直至候选模型收敛。
[0164]
该第一循环过程,包括:
[0165]
目标客户端将更新后的目标聚类模型(即候选模型)发送给服务器。
[0166]
服务器对接收到的候选模型中的参数进行更新,并将更新后的候选模型发送给目标客户端。
[0167]
目标客户端采用第一下降法对接收到的服务器发送的更新后的候选模型进行更新,直至候选模型收敛,将收敛的候选模型作为目标客户端的个性化模型。
[0168]
本发明提供的基于联邦学习的模型更新方法,参与协作训练的目标客户端将数据分布信息上传至服务器,服务器根据其上传的数据分布信息,对目标客户端进行聚类划分,得到目标客户端所属集群,节省了目标客户端的计算资源和存储资源,减轻了目标客户端与服务器之间的通信开销,为每一个客户端学习一个最优的个性化模型(即收敛的候选模型)。
[0169]
进一步地,在一个实施例中,所述目标客户端的数据分布信息的获取方式,可以具体包括:
[0170]
基于知识蒸馏技术,预训练教师网络;
[0171]
将训练好的教师网络作为生成式对抗网络的判别器,所述生成式对抗网络部署在所述目标客户端;
[0172]
基于所述判别器训练所述生成式对抗网络中的生成器,直至所述生成式对抗网络的损失函数的取值小于预设值;
[0173]
根据所述训练好的生成器,确定所述目标客户端的数据分布信息。
[0174]
可选地,目标客户端训练生成式对抗网络,学习本地的数据分布信息,将所学数据分布信息上传至服务器,具体地:
[0175]
将参与联邦学习的n个客户端编号为c
1 c2...ci...cn;将第i个客户机上的数据集记为di;将该数据集包括的样本数记为|di|;将第i个客户机上的本地生成模型(即生成器)标记为gi;将本地生成模型的层数记为|gi|,将第i个客户机上的本地判别模型(即判别器)标记为将本地判别模型的层数记为将本地生成模型的权重记为其中p表示只应用本地聚合在本地模型(生成式对抗网络)的倒数第p层上;将第i个客户端上的初始化本地生成模型记为将生成式对抗网络的损失函数记为
[0176]
引入知识蒸馏技术,预训练教师网络,将第i个客户机上的教师网络标记为ti,将教师网络的层数记为|ti|,将教师网络的权重记为其根据真实数据训练教师网络出来的,将训练好的教师网络固定为生成式对抗网络的判别器即将生成式对抗网络中的判别器初始化为训练好的教师模型ti,即
[0177]
确定生成式对抗网络的目标函数
[0178][0179]
其中,是交叉熵损失函数,y
t
是教师网络对于生成图像得到的其属于每个类别的概率,t是取了概率最大的类别,并用one-hot向量表示,交叉熵来衡量和ti的相似度。教师网络提取的特征表示为对应于全连接层之前的输出,l1范数用来衡量激活神经元的个数。表示p所拥有的信息量,其中,k代表系数,可以灵活设置,p

代表给定的概率向量,p

={p
′1,p
′2,...,p
′o},o代表概率向量p

包括的概率个数。
[0180]
根据目标函数以及固定好的判别器训练生成器gi,即根据训练好的生成器得到数据分布信息。
[0181]
客户端ci将所学的数据分布信息上传至服务器。
[0182]
服务器接收到客户端上传的数据分布信息gi,在服务器端进行聚类划分,根据不同客户端上传的数据分布生成对应于各个客户端的合成数据,经过上述过程生成的数据分布信息的示意图如图6所示。
[0183]
图7是本发明提供的联邦学习的模型更新方法的流程示意图之三,如图7所示,包括:
[0184]
步骤1,目标客户端训练生成式对抗网络,学习本地数据分布信息,将所学数据分布信息上传至服务器;
[0185]
步骤2,服务器接收到客户端上传的数据分布信息,在服务器端进行聚类划分,根据不同客户端上传的数据分布信息生成对应于各个客户端的合成数据;
[0186]
步骤3,服务器初始化k个集群
[0187]
步骤4,基于目标客户端的合成数据在服务器端进行多次迭代。根据k个集群模型中经验损失函数计算出的最小损失来估计每个客户端的集群身份。
[0188]
步骤5,在每次迭代确认集群身份后,在每一个集群内,结合集群内的客户端的合成数据更新第k个聚类模型的参数。
[0189]
步骤6,重复步骤4和步骤5,直至k个集群达到稳定分布状态;
[0190]
步骤7,在达到稳定分布状态的各个集群内,得到每个集群的聚类模型,即目标聚类模型,根据客户端所属集群,将不同的目标聚类模型下发至各个对应的客户端;
[0191]
步骤8,客户端采用梯度下降的方式更新接收到服务器发送的目标聚类模型,并将更新后的目标聚类模型(即候选模型)发送到服务器;
[0192]
步骤9,服务器根据接收到的属于不同集群的客户端的候选模型,在集群内利用消息传递机制生成每个客户端的个性化模型,将其下发给对应的客户端;
[0193]
步骤10,重复步骤8和步骤9,执行t轮训练,直至每个客户端的个性化模型训练收敛。
[0194]
本发明提供的基于联邦学习的模型更新方法,通过生成式对抗网络和知识蒸馏技术学习本地客户端的数据分布,能够准确学习本地数据分布信息,加快生成模型的学习和收敛,节省客户端的资源。
[0195]
下面对本发明提供的基于联邦学习的模型更新系统进行描述,下文描述的基于联邦学习的模型更新系统与上文描述的基于联邦学习的模型更新方法可相互对应参照。
[0196]
图8是本发明提供的基于联邦学习的模型更新系统的结构示意图之一,如图8所示,应用于参与联邦学习的服务器,包括:
[0197]
第一发送模块810以及第一更新模块811;
[0198]
所述第一发送模块810,用于根据参与所述联邦学习的目标客户端的合成数据,对所述目标客户端所属集群进行更新,直至初始化的k个集群达到稳定分布状态,并将每个集群内的目标聚类模型发送给所述目标客户端,所述合成数据是根据接收到的所述目标客户端的数据分布信息得到的,所述稳定分布状态为所述目标客户端所属集群不再变化,所述目标客户端包括n个客户端,所述目标聚类模型是根据所述初始化的k个集群达到稳定分布状态下的每个集群内的聚类模型确定的;
[0199]
所述第一更新模块811,用于执行如下第一循环过程,直至所述目标客户端中的候选模型收敛,所述候选模型是所述目标客户端对接收到的每个集群内的目标聚类模型进行更新后得到的;
[0200]
所述第一循环过程,包括:
[0201]
接收目标客户端发送的候选模型,并对所述候选模型进行更新;
[0202]
所述第二发送模块,用于将更新后的候选模型发送给所述目标客户端,以使所述目标客户端对所述候选模型进行更新。
[0203]
本发明提供的基于联邦学习的模型更新系统,参与协作训练的目标客户端将数据分布信息上传至服务器,服务器根据其上传的数据分布信息,对目标客户端进行聚类划分,得到目标客户端所属集群,节省了目标客户端的计算资源和存储资源,减轻了目标客户端
与服务器之间的通信开销,为每一个客户端学习一个最优的个性化模型(即收敛的候选模型)。
[0204]
图9是本发明提供的基于联邦学习的模型更新系统的结构示意图之二,如图9所示,应用于参与联邦学习的目标客户端,包括:
[0205]
第二发送模块910、接收模块911以及第二更新模块912;
[0206]
所述第二发送模块910,用于将所述目标客户端的数据分布信息发送给参与所述联邦学习的服务器,以使所述服务器根据所述目标客户端的合成数据,对所述目标客户端所属集群进行更新,所述目标客户端包括n个客户端,所述合成数据是根据接收到的所述目标客户端的数据分布信息得到的;
[0207]
所述接收模块911,用于在所述服务器确定初始化的k个集群达到稳定分布状态的情况下,接收所述服务器发送的每个集群内的目标聚类模型,所述稳定分布状态为所述目标客户端所属集群不再变化,所述目标聚类模型是根据所述初始化的k个集群达到稳定分布状态下的每个集群内的聚类模型确定的;
[0208]
所述第二更新模块912,用于执行如下第一循环过程,直至候选模型收敛,所述候选模型是所述目标客户端对接收到的每个集群内的目标聚类模型进行更新后得到的;
[0209]
所述第一循环过程,包括:
[0210]
向所述服务器发送候选模型,以使所述服务器对接收到的所述候选模型进行更新;
[0211]
所述第二接收模块,用于接收所述服务器发送的更新后的候选模型,并对所述更新后的候选模型进行更新。
[0212]
本发明提供的基于联邦学习的模型更新系统,参与协作训练的目标客户端将数据分布信息上传至服务器,服务器根据其上传的数据分布信息,对目标客户端进行聚类划分,得到目标客户端所属集群,节省了目标客户端的计算资源和存储资源,减轻了目标客户端与服务器之间的通信开销,为每一个客户端学习一个最优的个性化模型(即收敛的候选模型)。
[0213]
图10是本发明提供的一种电子设备的实体结构示意图,如图10所示,该电子设备可以包括:处理器(processor)1010、通信接口(communication interface)1011、存储器(memory)1012和总线(bus)513,其中,处理器510,通信接口1011,存储器1012通过总线1013完成相互间的通信。处理器1010可以调用存储器1012中的逻辑指令,以执行如下方法:
[0214]
根据参与所述联邦学习的目标客户端的合成数据,对所述目标客户端所属集群进行更新,直至初始化的k个集群达到稳定分布状态,并将每个集群内的目标聚类模型发送给所述目标客户端,所述合成数据是根据接收到的所述目标客户端的数据分布信息得到的,所述稳定分布状态为所述目标客户端所属集群不再变化,所述目标客户端包括n个客户端,所述目标聚类模型是根据所述初始化的k个集群达到稳定分布状态下的每个集群内的聚类模型确定的;
[0215]
执行如下第一循环过程,直至所述目标客户端中的候选模型收敛,所述候选模型是所述目标客户端对接收到的每个集群内的目标聚类模型进行更新后得到的;
[0216]
所述第一循环过程,包括:
[0217]
接收目标客户端发送的候选模型,并对所述候选模型进行更新;
[0218]
将更新后的候选模型发送给所述目标客户端,以使所述目标客户端对所述候选模型进行更新。
[0219]
或,
[0220]
将所述目标客户端的数据分布信息发送给参与所述联邦学习的服务器,以使所述服务器根据所述目标客户端的合成数据,对所述目标客户端所属集群进行更新,所述目标客户端包括n个客户端,所述合成数据是根据接收到的所述目标客户端的数据分布信息得到的;
[0221]
在所述服务器确定初始化的k个集群达到稳定分布状态的情况下,接收所述服务器发送的每个集群内的目标聚类模型,所述稳定分布状态为所述目标客户端所属集群不再变化,所述目标聚类模型是根据所述初始化的k个集群达到稳定分布状态下的每个集群内的聚类模型确定的;
[0222]
执行如下第一循环过程,直至候选模型收敛,所述候选模型是所述目标客户端对接收到的每个集群内的目标聚类模型进行更新后得到的;
[0223]
所述第一循环过程,包括:
[0224]
向所述服务器发送候选模型,以使所述服务器对接收到的所述候选模型进行更新;
[0225]
接收所述服务器发送的更新后的候选模型,并对所述更新后的候选模型进行更新。
[0226]
此外,上述的存储器中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机电源屏(可以是个人计算机,服务器,或者网络电源屏等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0227]
进一步地,本发明公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的基于联邦学习的模型更新方法,例如包括:
[0228]
根据参与所述联邦学习的目标客户端的合成数据,对所述目标客户端所属集群进行更新,直至初始化的k个集群达到稳定分布状态,并将每个集群内的目标聚类模型发送给所述目标客户端,所述合成数据是根据接收到的所述目标客户端的数据分布信息得到的,所述稳定分布状态为所述目标客户端所属集群不再变化,所述目标客户端包括n个客户端,所述目标聚类模型是根据所述初始化的k个集群达到稳定分布状态下的每个集群内的聚类模型确定的;
[0229]
执行如下第一循环过程,直至所述目标客户端中的候选模型收敛,所述候选模型是所述目标客户端对接收到的每个集群内的目标聚类模型进行更新后得到的;
[0230]
所述第一循环过程,包括:
[0231]
接收目标客户端发送的候选模型,并对所述候选模型进行更新;
[0232]
将更新后的候选模型发送给所述目标客户端,以使所述目标客户端对所述候选模型进行更新。
[0233]
或,
[0234]
将所述目标客户端的数据分布信息发送给参与所述联邦学习的服务器,以使所述服务器根据所述目标客户端的合成数据,对所述目标客户端所属集群进行更新,所述目标客户端包括n个客户端,所述合成数据是根据接收到的所述目标客户端的数据分布信息得到的;
[0235]
在所述服务器确定初始化的k个集群达到稳定分布状态的情况下,接收所述服务器发送的每个集群内的目标聚类模型,所述稳定分布状态为所述目标客户端所属集群不再变化,所述目标聚类模型是根据所述初始化的k个集群达到稳定分布状态下的每个集群内的聚类模型确定的;
[0236]
执行如下第一循环过程,直至候选模型收敛,所述候选模型是所述目标客户端对接收到的每个集群内的目标聚类模型进行更新后得到的;
[0237]
所述第一循环过程,包括:
[0238]
向所述服务器发送候选模型,以使所述服务器对接收到的所述候选模型进行更新;
[0239]
接收所述服务器发送的更新后的候选模型,并对所述更新后的候选模型进行更新。
[0240]
另一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的基于联邦学习的模型更新方法,例如包括:
[0241]
根据参与所述联邦学习的目标客户端的合成数据,对所述目标客户端所属集群进行更新,直至初始化的k个集群达到稳定分布状态,并将每个集群内的目标聚类模型发送给所述目标客户端,所述合成数据是根据接收到的所述目标客户端的数据分布信息得到的,所述稳定分布状态为所述目标客户端所属集群不再变化,所述目标客户端包括n个客户端,所述目标聚类模型是根据所述初始化的k个集群达到稳定分布状态下的每个集群内的聚类模型确定的;
[0242]
执行如下第一循环过程,直至所述目标客户端中的候选模型收敛,所述候选模型是所述目标客户端对接收到的每个集群内的目标聚类模型进行更新后得到的;
[0243]
所述第一循环过程,包括:
[0244]
接收目标客户端发送的候选模型,并对所述候选模型进行更新;
[0245]
将更新后的候选模型发送给所述目标客户端,以使所述目标客户端对所述候选模型进行更新。
[0246]
或,
[0247]
将所述目标客户端的数据分布信息发送给参与所述联邦学习的服务器,以使所述服务器根据所述目标客户端的合成数据,对所述目标客户端所属集群进行更新,所述目标客户端包括n个客户端,所述合成数据是根据接收到的所述目标客户端的数据分布信息得到的;
[0248]
在所述服务器确定初始化的k个集群达到稳定分布状态的情况下,接收所述服务器发送的每个集群内的目标聚类模型,所述稳定分布状态为所述目标客户端所属集群不再变化,所述目标聚类模型是根据所述初始化的k个集群达到稳定分布状态下的每个集群内的聚类模型确定的;
[0249]
执行如下第一循环过程,直至候选模型收敛,所述候选模型是所述目标客户端对接收到的每个集群内的目标聚类模型进行更新后得到的;
[0250]
所述第一循环过程,包括:
[0251]
向所述服务器发送候选模型,以使所述服务器对接收到的所述候选模型进行更新;
[0252]
接收所述服务器发送的更新后的候选模型,并对所述更新后的候选模型进行更新。
[0253]
以上所描述的系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0254]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机电源屏(可以是个人计算机,服务器,或者网络电源屏等)执行各个实施例或者实施例的某些部分所述的方法。
[0255]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

技术特征:
1.一种基于联邦学习的模型更新方法,应用于参与联邦学习的服务器,其特征在于,包括:根据参与所述联邦学习的目标客户端的合成数据,对所述目标客户端所属集群进行更新,直至初始化的k个集群达到稳定分布状态,并将每个集群内的目标聚类模型发送给所述目标客户端,所述合成数据是根据接收到的所述目标客户端的数据分布信息得到的,所述稳定分布状态为所述目标客户端所属集群不再变化,所述目标客户端包括n个客户端,所述目标聚类模型是根据所述初始化的k个集群达到稳定分布状态下的每个集群内的聚类模型确定的;执行如下第一循环过程,直至所述目标客户端中的候选模型收敛,所述候选模型是所述目标客户端对接收到的每个集群内的目标聚类模型进行更新后得到的;所述第一循环过程,包括:接收目标客户端发送的候选模型,并对所述候选模型进行更新;将更新后的候选模型发送给所述目标客户端,以使所述目标客户端对所述候选模型进行更新。2.根据权利要求1所述的基于联邦学习的模型更新方法,应用于参与联邦学习的服务器,其特征在于,所述根据所述目标客户端的合成数据,对所述目标客户端所属集群进行更新,包括:初始化目标客户端所属集群;根据每个集群内的聚类模型的经验损失函数,获取每个客户端的合成数据在每个集群内的聚类模型的经验损失值;根据所述每个客户端的合成数据在每个集群内的聚类模型的经验损失值,对所述目标客户端所属集群进行更新,以确定所述k个集群达到稳定分布状态时,每个集群内包含的客户端,所述每个集群内包含的客户端为所述目标客户端中满足合成数据在每个集群内的聚类模型的经验损失值达到最小值的客户端。3.根据权利要求2所述的基于联邦学习的模型更新方法,应用于参与联邦学习的服务器,其特征在于,所述根据所述每个客户端的合成数据在每个集群内的聚类模型的经验损失值,对所述目标客户端所属集群进行更新,包括:执行如下第二循环过程,直至所述k个集群达到稳定分布状态;所述第二循环过程,包括:基于梯度下降法对每个集群内的聚类模型进行更新;基于每个集群包含的客户端的合成数据,更新每个集群内的包含的客户端在集群内的更新后的聚类模型的经验损失值;根据所述每个集群内的包含的客户端在集群内的更新后的聚类模型的经验损失值,对所述目标客户端所属集群进行更新。4.根据权利要求1所述的基于联邦学习的模型更新方法,应用于参与联邦学习的服务器,其特征在于,所述接收目标客户端发送的所述候选模型,并对所述候选模型进行更新,包括:根据第一优化目标函数与第二优化目标函数之和,确定所述候选模型的优化目标函数,所述第一优化目标函数为所述目标客户端的候选模型的损失函数之和,所述第二优化
目标函数为任一客户端的接收到的目标聚类模型与所述目标客户端中的其余客户端接收到的目标聚类模型之间差异的非线性函数之和;基于梯度下降法对所述第一优化目标函数进行优化;基于近似点法对第二优化目标函数进行优化;根据所述优化目标函数取最小值时的候选模型,对所述候选模型进行更新。5.一种基于联邦学习的模型更新方法,应用于参与联邦学习的目标客户端,其特征在于,包括:将所述目标客户端的数据分布信息发送给参与所述联邦学习的服务器,以使所述服务器根据所述目标客户端的合成数据,对所述目标客户端所属集群进行更新,所述目标客户端包括n个客户端,所述合成数据是根据接收到的所述目标客户端的数据分布信息得到的;在所述服务器确定初始化的k个集群达到稳定分布状态的情况下,接收所述服务器发送的每个集群内的目标聚类模型,所述稳定分布状态为所述目标客户端所属集群不再变化,所述目标聚类模型是根据所述初始化的k个集群达到稳定分布状态下的每个集群内的聚类模型确定的;执行如下第一循环过程,直至候选模型收敛,所述候选模型是所述目标客户端对接收到的每个集群内的目标聚类模型进行更新后得到的;所述第一循环过程,包括:向所述服务器发送候选模型,以使所述服务器对接收到的所述候选模型进行更新;接收所述服务器发送的更新后的候选模型,并对所述更新后的候选模型进行更新。6.根据权利要求5所述的基于联邦学习的模型更新方法,应用于参与联邦学习的目标客户端,其特征在于,所述目标客户端的数据分布信息的获取方式,包括:基于知识蒸馏技术,预训练教师网络;将训练好的教师网络作为生成式对抗网络的判别器,所述生成式对抗网络部署在所述目标客户端;基于所述判别器训练所述生成式对抗网络中的生成器,直至所述生成式对抗网络的损失函数的取值小于预设值;根据所述训练好的生成器,确定所述目标客户端的数据分布信息。7.一种基于联邦学习的模型更新系统,应用于参与联邦学习的服务器,其特征在于,包括:第一发送模块以及第一更新模块;所述第一发送模块,用于根据参与所述联邦学习的目标客户端的合成数据,对所述目标客户端所属集群进行更新,直至初始化的k个集群达到稳定分布状态,并将每个集群内的目标聚类模型发送给所述目标客户端,所述合成数据是根据接收到的所述目标客户端的数据分布信息得到的,所述稳定分布状态为所述目标客户端所属集群不再变化,所述目标客户端包括n个客户端,所述目标聚类模型是根据所述初始化的k个集群达到稳定分布状态下的每个集群内的聚类模型确定的;所述第一更新模块,用于执行如下第一循环过程,直至所述目标客户端中的候选模型收敛,所述候选模型是所述目标客户端对接收到的每个集群内的目标聚类模型进行更新后得到的;所述第一循环过程,包括:
接收目标客户端发送的候选模型,并对所述候选模型进行更新;所述第二发送模块,用于将更新后的候选模型发送给所述目标客户端,以使所述目标客户端对所述候选模型进行更新。8.一种基于联邦学习的模型更新系统,应用于参与联邦学习的目标客户端,其特征在于,包括:第二发送模块、接收模块以及第二更新模块;所述第二发送模块,用于将所述目标客户端的数据分布信息发送给参与所述联邦学习的服务器,以使所述服务器根据所述目标客户端的合成数据,对所述目标客户端所属集群进行更新,所述目标客户端包括n个客户端,所述合成数据是根据接收到的所述目标客户端的数据分布信息得到的;所述接收模块,用于在所述服务器确定初始化的k个集群达到稳定分布状态的情况下,接收所述服务器发送的每个集群内的目标聚类模型,所述稳定分布状态为所述目标客户端所属集群不再变化,所述目标聚类模型是根据所述初始化的k个集群达到稳定分布状态下的每个集群内的聚类模型确定的;所述第二更新模块,用于执行如下第一循环过程,直至候选模型收敛,所述候选模型是所述目标客户端对接收到的每个集群内的目标聚类模型进行更新后得到的;所述第一循环过程,包括:向所述服务器发送候选模型,以使所述服务器对接收到的所述候选模型进行更新;所述第二接收模块,用于接收所述服务器发送的更新后的候选模型,并对所述更新后的候选模型进行更新。9.一种电子设备,包括处理器和存储有计算机程序的存储器,其特征在于,所述处理器执行所述计算机程序时实现权利要求1-4或5-6任一项所述基于联邦学习的模型更新方法。10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1-4或5-6任一项所述基于联邦学习的模型更新方法。

技术总结
本发明提供一种基于联邦学习的模型更新方法及系统,方法包括:根据参与联邦学习的目标客户端的合成数据,对目标客户端所属集群进行更新,直至初始化的K个集群达到稳定分布状态,并将每个集群内的目标聚类模型发送给目标客户端,合成数据是根据接收到的目标客户端的数据分布信息得到的,稳定分布状态为目标客户端所属集群不再变化,目标聚类模型是根据初始化的K个集群达到稳定分布状态下的每个集群内的聚类模型确定的;执行第一循环过程,直至目标客户端中的候选模型收敛。本发明能够充分利用数据异构环境中所有客户端的数据,在有限的网络通信资源,客户端的有限计算资源和有限存储资源的情况下,为每一个客户端提供一个最优的个性化模型。的个性化模型。的个性化模型。


技术研发人员:孙玉砚 印君男 孙嘉伟 朱红松 孙利民
受保护的技术使用者:中国科学院信息工程研究所
技术研发日:2023.06.14
技术公布日:2023/9/9
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐