System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于混合蒸馏的高效异构联邦学习方法、系统、设备及介质技术方案_技高网

一种基于混合蒸馏的高效异构联邦学习方法、系统、设备及介质技术方案

技术编号:43394827 阅读:9 留言:0更新日期:2024-11-19 18:10
本发明专利技术属于联邦学习技术领域,并公开了一种基于混合蒸馏的高效异构联邦学习方法、系统、设备及介质,包括:服务器初始化全局模型参数,并设置预设总训练轮数及每轮参与训练的客户端数量;在各客户端中,加载对应的本地数据集,对本地数据集执行随机变换,生成客户端蒸馏数据;从各客户端的原始网络中采样若干子网络,各子网络在客户端蒸馏数据上进行训练,得到更新后的本地模型参数,将本地模型参数上传到服务器;服务器接收本地模型参数后结合预设辅助数据集进行服务器蒸馏,得到更新后的全局模型参数,并发送回客户端。本发明专利技术技术方案能够克服联邦学习异质性问题,同时能够在避免隐私泄露的情况下提高通信效率和攻击鲁棒性。

【技术实现步骤摘要】

本专利技术属于联邦学习,特别是涉及一种基于混合蒸馏的高效异构联邦学习方法、系统、设备及介质


技术介绍

1、随着计算机算力的提升,机器学习作为海量数据的分析处理技术,已经广泛服务于人类社会。然而,不同行业、部门之间存在数据壁垒,导致数据形成“孤岛”无法安全共享,而仅凭各部门独立数据训练的机器学习模型性能无法达到全局最优化。联邦学习技术被提出用于解决该问题,其通过将机器学习的数据存储和模型训练阶段转移至本地用户,仅与中心服务器交互模型更新的方式有效保障了用户的隐私安全,已广泛用于实践并取得良好效果。但也带来新的挑战,即不同方的数据分布通常是非独立同分布的(non-iid)。当客户端持有异构数据时,本地模型在训练期间往往会相互分歧,导致客户端出现漂移。因此,直接聚合模型参数和更新会导致全局模型性能显著下降。

2、自数据异构性问题提出以来,已经提出很多方法来缓解数据异构带来的各种问题。现有的联邦学习解决不同客户端数据异构的工作大多可以分为三类。第一类是数据级方法,通过私有数据处理例如数据增强和外部数据来平滑客户端本地数据的统计异质性。第二类是模型级方法,通过在模型级别进行操作,旨在学习每个客户端的本地模型,该模型适应其私有数据分布,同时学习全局信息,主要包括添加正则化,结合对比学习或元学习,提高一致性,共享部分结构等。第三类是服务器级方法,它需要服务器参与,例如参与客户端选择或客户端聚类。

3、将联邦学习与知识蒸馏相结合,即联邦蒸馏,它可以利用外部数据源和知识转移来提高联邦学习在异构环境下性能,它属于数据级和模型级方法。目前主要有两种结合方式,一种是客户端蒸馏,一种是在服务端进行蒸馏。在客户端蒸馏中,每个客户端从所有客户端获得平均的软预测,以约束本地更新并防止陷入局部最优。但是它需要客户端之间的数据交换,这可能会导致隐私泄露,并且容易受到恶意客户端的投毒攻击。在服务器蒸馏中,服务器聚合客户端模型后,并利用辅助数据集输出的平均软预测来微调全局模型。然而,现有的服务器蒸馏方法仅仅利用软预测来学习全局知识,它依赖局部预测器输出的集合进行蒸馏,使其对表现不佳的局部模型所注入的误导和模糊知识敏感,而共享软预测会更加剧这个问题。


技术实现思路

1、本专利技术的目的是提供一种基于混合蒸馏的高效异构联邦学习方法、系统、设备及介质,以解决上述现有技术存在的问题。

2、为实现上述目的,本专利技术提供了一种基于混合蒸馏的高效异构联邦学习方法,包括:

3、步骤一:使服务器初始化全局模型参数,并设置预设总训练轮数及每轮参与训练的客户端数量;

4、步骤二:在各客户端中,加载对应的本地数据集,对所述本地数据集执行随机变换,生成客户端蒸馏数据;从各客户端的原始网络中采样若干子网络,各子网络在客户端蒸馏数据上进行训练,训练完成后得到更新后的本地模型参数,将所述本地模型参数上传到服务器;

5、步骤三:所述服务器接收本地模型参数后结合预设辅助数据集进行服务器蒸馏,得到更新后的全局模型参数,并将更新后的全局模型发送回客户端;

6、重复步骤二至步骤三,直至模型收敛。

7、可选的,对所述本地数据集执行随机变换,具体包括:

8、对所述本地数据集执行缩放和旋转,得到所述客户端蒸馏数据。

9、可选的,各所述子网络具有不同的网络分数宽度。

10、可选的,各子网络在客户端蒸馏数据上进行训练,具体包括:

11、计算所述子网络的softmax输出与对应客户端局部模型的原始softmax输出的kl散度作为蒸馏损失,并根据子网络的预测置信度动态分配权重;

12、基于所述蒸馏损失和传统交叉熵损失,利用优化算法更新本地模型参数。

13、可选的,所述步骤三,具体包括:

14、服务器接收所有客户端更新后的本地模型参数,进行权重聚合,得到全局模型;

15、基于所述预设辅助数据集结合联合软预测蒸馏和特征蒸馏对全局模型进行蒸馏,得到更新后的全局模型参数,并将更新后的全局模型发送回客户端。

16、一种基于混合蒸馏的高效异构联邦学习系统,包括:

17、初始化模块,用于使服务器初始化全局模型参数,并设置预设总训练轮数及每轮参与训练的客户端数量;

18、客户端蒸馏模块,用于在各客户端中,加载对应的本地数据集,对所述本地数据集执行随机变换,生成客户端蒸馏数据;从各客户端的原始网络中采样若干子网络,各子网络在客户端蒸馏数据上进行训练,训练完成后得到更新后的本地模型参数,将所述本地模型参数上传到服务器;

19、服务器蒸馏模块,用于所述服务器接收本地模型参数后结合预设辅助数据集进行服务器蒸馏,得到更新后的全局模型参数,并将更新后的全局模型发送回客户端;重复客户端蒸馏和服务器蒸馏,直至模型收敛。

20、一种电子设备,包括存储器及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行根据所述的一种基于混合蒸馏的高效异构联邦学习方法。

21、一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时实现所述的一种基于混合蒸馏的高效异构联邦学习方法。

22、本专利技术的技术效果为:

23、本专利技术通过设计两阶段学习方案,该方案由客户端自蒸馏和服务器集成蒸馏组成,以减轻局部过拟合和提高在异构和长尾客户端数据上联邦学习的模型聚合和泛化性能。该方案不需要客户端之间的任何信息交换,也不需要全局数据分布进行联合优化,从而防止隐私泄露。

24、本专利技术提出的服务器蒸馏方法可以实现更好的表示学习和更平坦的损失景观来微调聚合模型,两者都有助于在不同程度的数据异构性和不同客户端数量下提高全局模型的准确性。

25、本专利技术设计的方法不仅克服联邦学习异质性问题,同时在避免隐私泄露的情况下提高通信效率和攻击鲁棒性。

本文档来自技高网...

【技术保护点】

1.一种基于混合蒸馏的高效异构联邦学习方法,其特征在于,包括:

2.根据权利要求1所述的一种基于混合蒸馏的高效异构联邦学习方法,其特征在于,对所述本地数据集执行随机变换,具体包括:

3.根据权利要求1所述的一种基于混合蒸馏的高效异构联邦学习方法,其特征在于,各所述子网络具有不同的网络分数宽度。

4.根据权利要求1所述的一种基于混合蒸馏的高效异构联邦学习方法,其特征在于,各子网络在客户端蒸馏数据上进行训练,具体包括:

5.根据权利要求1所述的一种基于混合蒸馏的高效异构联邦学习方法,其特征在于,所述步骤三,具体包括:

6.一种基于混合蒸馏的高效异构联邦学习系统,其特征在于,包括:

7.一种电子设备,其特征在于,包括存储器及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行根据权利要求1-5中任一项所述的一种基于混合蒸馏的高效异构联邦学习方法。

8.一种计算机可读存储介质,其特征在于,其存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-5中任一项所述的一种基于混合蒸馏的高效异构联邦学习方法。

...

【技术特征摘要】

1.一种基于混合蒸馏的高效异构联邦学习方法,其特征在于,包括:

2.根据权利要求1所述的一种基于混合蒸馏的高效异构联邦学习方法,其特征在于,对所述本地数据集执行随机变换,具体包括:

3.根据权利要求1所述的一种基于混合蒸馏的高效异构联邦学习方法,其特征在于,各所述子网络具有不同的网络分数宽度。

4.根据权利要求1所述的一种基于混合蒸馏的高效异构联邦学习方法,其特征在于,各子网络在客户端蒸馏数据上进行训练,具体包括:

5.根据权利要求1所述的一种基于混合蒸馏的高效异...

【专利技术属性】
技术研发人员:王艺
申请(专利权)人:东莞理工学院
类型:发明
国别省市:

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

1