减轻客户端漂移的联邦学习方法及客户端技术

技术编号:39846517 阅读:5 留言:0更新日期:2023-12-29 16:43
本公开实施例公开了一种减轻客户端漂移的联邦学习方法及客户端

【技术实现步骤摘要】
减轻客户端漂移的联邦学习方法及客户端、全局服务器


[0001]本公开涉及机器学习
,尤其涉及一种减轻客户端漂移的联邦学习方法及客户端

全局服务器


技术介绍

[0002]联邦学习
(Federated machine learning/Federated Learning

FL) 是一种分布式机器学习方法,让多个客户端能够协作训练共享模型,而无需公开其原始数据

[0003]在联邦学习中,目前主要存在的问题是客户端漂移,是指不同客户端学习的模型之间的不一致,这主要是由于其私有数据分布的差异而引起的

由于局部模型过度拟合,或者其数据集并收敛到局部最小值,因此从平均客户端模型派生的全局模型在收敛性和性能方面必须进行调整


技术实现思路

[0004]有鉴于此,本公开实施例提供了一种减轻客户端漂移的联邦学习方法及客户端

全局服务器,能够通过采用渐进解冻的训练策略和客户端之间参照锚点的确定策略,减轻客户端漂移

[0005]第一方面,本公开实施例提供了一种减轻客户端漂移的联邦学习方法,采用如下技术方案:接收全局模型作为第一本地模型,所述第一本地模型包括多个模块;冻结所述多个模块;对所述第一本地模型进行迭代训练,在迭代训练过程中对所述多个模块渐进解冻,得到第二本地模型;基于所述第二本地模型和所述第一本地模型计算得到更新值,所述更新值用于更新全局模型
/>[0006]优选的,每个模块均具有编码;所述在迭代训练过程中对所述多个模块渐进解冻,得到第二本地模型,包括:设置本地训练迭次数,所述本地训练迭次数的初始值为1;基于所述本地训练迭次数确定需要解冻的模块编码;解冻所述模块编码对应的模块,得到可训练模块;对所有的可训练模块进行更新;如果所述本地训练迭代次数等于预设训练次数,则表示所有模块均解冻并更新,得到第二本地模型

[0007]优选的,所述模块编码为:其中,为所述模块的总个数;为所述本地训练迭次数;为所述预设训练次数;为渐进解冻阶段的完成度百分比

[0008]优选的,所述对所有的可训练模块进行更新的公式为:其中,为第个客户端的第一本地模型的模块,所述模块为所有的可训练模块;为客户端的编号;为所述模块编码;为第个客户端的第一本地模型的学习率;为第个客户端的第一本地模型的损失函数

[0009]优选的,所述更新值的计算公式为:其中,为第个客户端的更新值;为第个客户端的第二本地模型;为所述第一本地模型

[0010]优选的,所述模块为一个网络层或多个网络层的组合

[0011]第二方面,本公开实施例还提供了一种客户端,采用如下技术方案:第一接收模块,用于接收全局模型作为第一本地模型,所述第一本地模型包括多个模块;冻结模块,用于冻结所述多个模块;渐进解冻模块,用于对所述第一本地模型进行迭代训练,在迭代训练过程中对所述多个模块渐进解冻,得到第二本地模型;计算模块,用于基于所述第二本地模型和所述第一本地模型计算得到更新值,所述更新值用于更新全局模型

[0012]第三方面,本公开实施例还提供了一种电子设备,采用如下技术方案:所述电子设备包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行以上任一所述的一种减轻客户端漂移的联邦学习方法

[0013]第四方面,本公开实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行以上任一所述的一种减轻客户端漂移的联邦学习方法

[0014]第五方面,本公开实施例还提供了一种减轻客户端漂移的联邦学习方法,采用如下技术方案:设置全局回合迭代轮次,所述全局回合迭代轮次的初始值为1;向各客户端发送全局模型;接收各客户端发送的更新值;基于所述更新值对所述全局模型进行更新;判断所述全局回合迭代轮次是否等于预设全局迭代次数;若是,则将所述全局模型作为最优模型;若否,则将所述全局回合迭代轮次加一,并返回所述向各客户端发送全局模型的
步骤;其中,所述全局模型包括多个模块

[0015]优选的,所述基于所述更新值对所述全局模型进行更新的公式为:其中,为所述全局模型;为所述全局模型的学习率;为客户端的编号集合;为客户端的编号;为第个客户端发送的更新值

[0016]第六方面,本公开实施例还提供了一种全局服务器,采用如下技术方案:设置模块,用于设置全局回合迭代轮次,所述全局回合迭代轮次的初始值为1;发送模块,用于向各客户端发送全局模型;第二接收模块,用于接收各客户端发送的更新值;更新模块,用于基于所述更新值对所述全局模型进行更新;判断模块,用于判断所述全局回合迭代轮次是否等于预设全局迭代次数;若是,则执行作为模块;若否,则执行加一模块;作为模块,用于将所述全局模型作为最优模型;加一模块,用于将所述全局回合迭代轮次加一,并返回所述向各客户端发送全局模型的步骤;其中,所述全局模型包括多个模块

[0017]本公开实施例提供的减轻客户端漂移的联邦学习方法,在每一轮全局回合中,均采用渐进解冻的训练方法,通过冻结整个第一本地模型开始本地训练,然后从第一个模块逐渐解冻到最后一个模块;在渐进解冻过程中,冻结模块的参数值可以作为客户端之间共享的锚点或者基准点,减少一些模块的更新次数,确保冻结的模块在作为共享参考后的可训练性,保证了平衡一致性和适应性,本公开利用第一本地模型参数值作为锚点,通过平衡共享的参照物,整个客户端在系统层面可以实现对齐,有效解决了联邦学习中客户端漂移的问题

[0018]上述说明仅是本公开技术方案的概述,为了能更清楚了解本公开的技术手段,而可依照说明书的内容予以实施,并且为让本公开的上述和其他目的

特征和优点能够更明显易懂,以下特举较佳实施例,并配合附图,详细说明如下

附图说明
[0019]为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图

[0020]图1为本公开实施例提供的一种减轻客户端漂移的联邦学习方法的流程示意图;图2为本公开实施例提供的
Transformer
网络模型的结构示意图;图3为本公开实施例提供的模块解冻的过程示意图;图4为本公开实施例提供的对模块渐进解冻的流程示意图;图5为本公开实施例提供的客户端的原理框图;图6为本公开实施例提供的一种电子设备的结构示意图;
图7为本公开实施例提供的一种减本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.
一种减轻客户端漂移的联邦学习方法,其特征在于,所述方法包括:接收全局模型作为第一本地模型,所述第一本地模型包括多个模块;冻结所述多个模块;对所述第一本地模型进行迭代训练,在迭代训练过程中对所述多个模块渐进解冻,得到第二本地模型;基于所述第二本地模型和所述第一本地模型计算得到更新值,所述更新值用于更新全局模型
。2.
根据权利要求1所述的减轻客户端漂移的联邦学习方法,其特征在于,每个模块均具有编码;所述在迭代训练过程中对所述多个模块渐进解冻,得到第二本地模型,包括:设置本地训练迭次数,所述本地训练迭次数的初始值为1;基于所述本地训练迭次数确定需要解冻的模块编码;解冻所述模块编码对应的模块,得到可训练模块;对所有的可训练模块进行更新;如果所述本地训练迭代次数等于预设训练次数,则表示所有模块均解冻并更新,得到第二本地模型
。3.
根据权利要求2所述的减轻客户端漂移的联邦学习方法,其特征在于,所述模块编码为:其中,为所述模块的总个数;为所述本地训练迭次数;为所述预设训练次数;为渐进解冻阶段的完成度百分比
。4.
根据权利要求2所述的减轻客户端漂移的联邦学习方法,其特征在于,所述对所有的可训练模块进行更新的公式为:其中,为第个客户端的第一本地模型的模块,所述模块为所有的可训练模块;为客户端的编号;为所述模块编码;为第个客户端的第一本地模型的学习率;为第个客户端的第一本地模型的损失函数
。5.
根据权利要求1所述的减轻客户端漂移的联邦学习方法,其特征在于,所述更新值的计算公式为:其中,为第个客户端的更新值;为第个客户端的第二本地模型;为所述第一本地模型
。6.
根据权利要求1所述的减轻客户端漂移的联邦学习方法,其特征在于,所述模块为一个网络层或多个网络层的组合
...

【专利技术属性】
技术研发人员:刘德生龙真真王斌周宇
申请(专利权)人:中科晶锐苏州科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1