System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及联邦学习,特别是涉及一种基于联邦学习客户端选择的分类模型训练方法及系统。
技术介绍
1、联邦学习系统通常包括一个中央服务器和多个客户端。客户端使用本地数据来训练本地模型,然后将模型参数上传至服务器,服务器通过聚合多个客户端的模型参数来形成全局模型。然而,由于通信带宽的限制,不是所有客户端都能参与每一轮的训练。在实际训练过程中,通常只选择其中的一小部分客户端参与训练。这些客户端的数据来源和处理方式通常是高度异质的,因此选择哪些客户端参与训练成为影响联邦学习性能的关键问题。
2、目前,最常见的客户端方法是随机选择策略,即在每个训练轮次中随机选择固定数量的客户端。另外一种方法考虑客户端在训练过程中的损失值,当客户端的训练损失越大时,表示当前模型无法较好地学习本地数据,则该方法选择训练损失最大的若干个客户端参与训练。但是,这两种方法都没有考虑客户端数据分布的多样性和公平性约束,导致对联邦学习的性能改进非常有限,进而导致基于联邦学习客户端选择训练获得的分类模型精度较低。
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种基于联邦学习客户端选择的分类模型训练方法、系统、设备及介质。
2、第一方面,本申请实施例提供了一种基于联邦学习客户端选择的分类模型训练方法,所述方法包括:
3、初始化全局模型,并初始化虚拟队列、客户端相似度矩阵以及客户端选中频率矩阵;
4、在每一次迭代训练过程中,基于所述虚拟队列、所述客户端相似度矩阵以及所述客
5、将所述全局模型发送至所述k个客户端进行并行训练,获得各所述客户端的梯度,并基于各所述客户端的梯度得到聚合后的全局模型;
6、更新所述虚拟队列、所述客户端相似度矩阵以及所述客户端选中频率矩阵,并重复所述迭代训练过程直至达到设定的迭代次数,获得训练好的全局模型;
7、使用训练好的全局模型对目标数据集进行分类,得到分类结果。
8、在其中一个实施例中,所述在每一次迭代训练过程中,基于所述虚拟队列、所述客户端相似度矩阵以及所述客户端选中频率矩阵,确定参与本轮训练的k个客户端还包括:
9、若本轮训练为第一轮训练,则选择客户端备选集合中所有的客户端参与本轮训练,并更新所述虚拟队列、所述客户端相似度矩阵以及所述客户端选中频率矩阵。
10、在其中一个实施例中,所述在每一次迭代训练过程中,基于所述虚拟队列、所述客户端相似度矩阵以及所述客户端选中频率矩阵,在客户端备选集合中确定参与本轮训练的k个客户端包括:
11、初始化客户端选择集合为空集;
12、基于所述客户端相似度矩阵以及所述客户端选中频率矩阵,确定所述客户端备选集合中任一第一客户端所对应的第二客户端;
13、在每一次选择客户端的过程中,判断各所述第一客户端以及对应的第二客户端是否在当前的客户端选择集合中,得到当前的被选中的结果;
14、基于所述当前的被选中的结果、所述虚拟队列以及所述客户端相似度矩阵,每次在所述客户端备选集合中确定一个被选择客户端,将所述被选择客户端从所述客户端备选集合移出,并将其添加至所述客户端选择集合中;直至所述客户端选择集合中包含k个客户端。
15、在其中一个实施例中,基于所述客户端相似度矩阵以及所述客户端选中频率矩阵,确定所述客户端备选集合中任一第一客户端所对应的第二客户端包括:
16、对于所述客户端备选集合中任一第一客户端,基于所述客户端相似度矩阵以及所述客户端选中频率矩阵,搜索与所述第一客户端的相似度小于第一约束参数,且与所述第一客户端在之前所有训练轮次中被选中频率差别最大的客户端为第二客户端。
17、在其中一个实施例中,所述基于所述被选中的结果、所述虚拟队列以及所述客户端相似度矩阵,每次在所述客户端备选集合中确定一个被选择客户端的计算公式如下:
18、;
19、;
20、;
21、;
22、其中, i m为被选择客户端, z i (t)和 q i (t)为虚拟队列, v为权衡因子,为公平约束参数, x i,t为第一客户端在第t轮训练中是否在当前的客户端选择集合中,为第二客户端在第 t轮训练中是否在当前的客户端选择集合中,
23、表示客户端 i与客户端 j之间的相似度,客户端 i在所述客户端备选集合中,所述客户端 j在所述客户端选择集合中, s t为所述客户端选择集合。
24、在其中一个实施例中,所述更新所述虚拟队列、所述客户端相似度矩阵以及所述客户端选中频率矩阵包括:
25、根据k个客户端进行并行训练的获得的梯度,更新所述客户端相似度矩阵,所述客户端相似度矩阵中第 i行、第 j列的元素更新方式为:
26、;
27、其中,为第 t轮训练中第 i个客户端进行并行训练后获得的梯度值,为第 t轮训练中第 j个客户端进行并行训练后获得的梯度值, s t为所述客户端选择集合;
28、所述虚拟队列 z i( t)和 q i( t)的更新方式为:
29、;
30、;
31、其中,为公平约束参数, x i,t为第一客户端在第 t轮训练中是否被选中的结果,为第二客户端在第 t轮训练中是否被选中的结果;
32、基于所述参与本轮训练的k个客户端,将所述客户端选中频率矩阵中的对应元素进行更新。
33、在其中一个实施例中,所述基于各所述客户端的梯度得到聚合后的全局模本文档来自技高网...
【技术保护点】
1.一种基于联邦学习客户端选择的分类模型训练方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述在每一次迭代训练过程中,基于所述虚拟队列、所述客户端相似度矩阵以及所述客户端选中频率矩阵,确定参与本轮训练的K个客户端还包括:
3.根据权利要求2所述的方法,其特征在于,所述在每一次迭代训练过程中,基于所述虚拟队列、所述客户端相似度矩阵以及所述客户端选中频率矩阵,在客户端备选集合中确定参与本轮训练的K个客户端包括:
4.根据权利要求3所述的方法,其特征在于,基于所述客户端相似度矩阵以及所述客户端选中频率矩阵,确定所述客户端备选集合中任一第一客户端所对应的第二客户端包括:
5.根据权利要求3所述的方法,其特征在于,所述基于所述当前的被选中的结果、所述虚拟队列以及所述客户端相似度矩阵,每次在所述客户端备选集合中确定一个被选择客户端的计算公式如下:
6.根据权利要求5所述的方法,其特征在于,所述更新所述虚拟队列、所述客户端相似度矩阵以及所述客户端选中频率矩阵包括:
7.根据权利要求1所述的方法
8.一种基于联邦学习客户端选择的分类模型训练系统,其特征在于,所述系统包括:
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至权利要求7中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至权利要求7中任一项所述的方法。
...【技术特征摘要】
1.一种基于联邦学习客户端选择的分类模型训练方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述在每一次迭代训练过程中,基于所述虚拟队列、所述客户端相似度矩阵以及所述客户端选中频率矩阵,确定参与本轮训练的k个客户端还包括:
3.根据权利要求2所述的方法,其特征在于,所述在每一次迭代训练过程中,基于所述虚拟队列、所述客户端相似度矩阵以及所述客户端选中频率矩阵,在客户端备选集合中确定参与本轮训练的k个客户端包括:
4.根据权利要求3所述的方法,其特征在于,基于所述客户端相似度矩阵以及所述客户端选中频率矩阵,确定所述客户端备选集合中任一第一客户端所对应的第二客户端包括:
5.根据权利要求3所述的方法,其特征在于,所述基于所述当前的被选中的结果、所述虚拟队列以及...
【专利技术属性】
技术研发人员:李清明,缪居正,刘扶芮,周丽,马振国,严笑然,
申请(专利权)人:之江实验室,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。