System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 支持数据异构基于监督对比学习的联邦模型训练方法及系统技术方案_技高网

支持数据异构基于监督对比学习的联邦模型训练方法及系统技术方案

技术编号:40760032 阅读:3 留言:0更新日期:2024-03-25 20:12
本发明专利技术公开了一种支持数据异构的基于监督对比学习的联邦模型训练方法及系统。本发明专利技术通过在横向联邦学习中的每一轮训练过程中,中心服务器下发全局编码器,本地客户端利用全局编码器与本地编码器进行知识蒸馏与监督对比学习,得到训练完成的本地编码器后上传给中心服务器,中心服务器权重聚合得到的本地编码器得到新的全局编码器,并利用公共数据集得到一个通用的预测器。本发明专利技术让更多数据分布不同的设备能够参与联邦学习,同时保证了参与者的隐私安全,利用知识蒸馏加快了客户端的训练效率并提升学习性能,利用了监督对比学习利用了数据之间内在的联系,提高了模型的学习性能,增强了模型对数据异构的抗性。

【技术实现步骤摘要】

本专利技术涉及一种支持数据异构基于监督对比学习的联邦模型训练方法及系统


技术介绍

1、联邦学习是一种高效的分布式机器学习范式,它使得参与者能够合作训练一个全局模型而不会泄露自身的的本地数据。因此,在保证用户数据隐私的同时,为参与者提供了高性能的模型。

2、然而联邦学习在实际应用上普遍存在数据异构问题:参与联邦学习的用户之间数据有很大的差异,极大地影响了最终的模型的效果。这也被称为联邦学习得非独立同分布问题,是数据结构问题的一种。它的具体原因是在多个设备或计算节点上分布的数据集之间往往具有不同的特征分布或标签分布,同时特征之间并非相互独立。这种现象导致传统的联邦学习算法在处理非独立同分布数据集时存在两个问题。一、性能下降:例如,假设有两个客户端,其中一个客户端的数据主要集中在某一类,而另一个客户端的数据主要集中在另一类。如果直接对这两个客户端的数据进行聚合,可能会导致模型在某一类的分类性能很高,但在另一类的分类性能很低,也可能导致在这两类的性能都很低。二、客户端漂移问题:当模型进行本地更新时,因为非独立同分布的特性,扩大了本地模型与服务器全局模型之间的差异,导致模型更新不稳定,收敛速度慢。因此解决联邦学习的非独立同分布问题对联邦学习很有必要。

3、现有方法往往依赖于传统的交叉熵损失,只在本地客户端训练过程或者中心服务器上聚合的权重上进行单独地改良来缓解非独立同分布数据集带来的影响,上述方法通常假设每个客户端的内部类数量是平衡的,从实际来看这种假设并不常见。非独立同分布数据集在本身的数据构造上存在内部类的数量不均衡,随着非独立同分布程度的不同而使不同的类之间数量之间的差异增大。影响了本地训练的效果。

4、上述问题是在基于监督对比学习的联邦模型训练方法过程中应当予以考虑并解决的问题。


技术实现思路

1、本专利技术的目的是提供一种支持数据异构基于监督对比学习的联邦模型训练方法及系统,解决现有技术中存在的数据异构问题如各个客户端的类与数量分布不均导致模型训练速度慢且性能低、泛化性差,模型的训练效果与速度有待提高的问题。

2、本专利技术的第一方面,提供了一种支持数据异构基于监督对比学习的联邦模型训练方法,包括以下步骤:

3、s1、初始化客户端-中心服务器的横向联邦学习模型参数,在横向联邦学习全局模型训练的任一轮中,中心服务器将全局模型参数发送给参与训练的客户端,各个客户端根据全局模型的参数来更新本地模型的参数;

4、s2、客户端进行本地模型参数更新后,对数据异构的数据集进行数据增强,使用经过数据增强后的数据集对本地模型与全局模型进行神经网络训练,使客户端的模型参数得到更新;

5、s3、客户端将训练得到的编码器参数上传给中心服务器;

6、s4、中心服务器收到参与训练的各个客户端编码器参数后,对收到的所有客户编码器参数进行权重聚合,得到本轮联邦学习训练后的全局编码器,中心服务器进行预测器生成,得到适合全局编码器的全局预测器;

7、s5、中心服务器将全局编码器与全局预测器下发给各客户端,客户端将全局编码器与全局预测器组合成一个完整的模型,客户端更新本地编码器后继续进行本地模型的更新训练,得到更新训练的本地模型。

8、作为一种优选方案,步骤s2中,对数据异构的数据集进行两次数据增强,包括随机裁剪与水平翻转。

9、作为一种优选方案,步骤s2中,本地客户端本地进行的神经网络训练结合了监督对比学习与知识蒸馏。

10、作为一种优选方案,步骤s2中,客户端将数据增强后的数据经过本地编码器、全局编码器与进行监督对比、知识蒸馏两种损失结合的本地训练,更新本地客户端编码器参数,具体为:

11、s21、经过二次数据增强后生成的两个数据各自都进入本地编码器与全局编码器得到本地表征与全局表征;

12、s22、本地表征与全局表征经过相同的投影头得到本地嵌入与全局嵌入;

13、s23、进行监督对比学习,得到监督对比学习损失;

14、s24、进行知识蒸馏,得到知识蒸馏损失;

15、s25、将监督对比损失与知识蒸馏损失相加得到最终损失,使用最终损失更新本地客户端编码器参数。

16、作为一种优选方案,步骤s4中,所述全局预测器获得过程如下:

17、s41、中心服务器聚合本轮参与的客户端上传的编码器参数得到全局编码器;

18、s42、中心服务器将全局编码器的参数冻结,使全局编码器参数在接下来的训练中只参与训练而不更新自身的参数;

19、s43、中心服务器将自身的公共数据集对全局编码器与全局预测器使用交叉熵损失进行神经网络训练,更新全局编码器,得到适合本轮全局编码器的全局预测器。

20、本专利技术的第二方面,提供了支持数据异构基于监督对比学习的联邦模型训练设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现上述支持数据异构基于监督对比学习的联邦模型训练方法。

21、本专利技术的第三方面,提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行上述支持数据异构基于监督对比学习的联邦模型训练方法。

22、本专利技术的有益效果是:监督对比学习损失使得联邦学习各个客户端共享具有泛化性全局编码器的模型参数,提高了对非独立同分布数据的抗性,提升了精度。同时结合了知识蒸馏技术,提升了精度,极大地提升了训练效率。

本文档来自技高网...

【技术保护点】

1.支持数据异构基于监督对比学习的联邦模型训练方法,其特征在于:包括以下步骤:

2.如权利要求1所述的支持数据异构基于监督对比学习的联邦模型训练方法,其特征在于:步骤S2中,对数据异构的数据集进行两次数据增强,包括随机裁剪与水平翻转。

3.如权利要求1或2所述的支持数据异构基于监督对比学习的联邦模型训练方法,其特征在于:步骤S2中,本地客户端本地进行的神经网络训练结合了监督对比学习与知识蒸馏。

4.如权利要求3所述的支持数据异构基于监督对比学习的联邦模型训练方法,其特征在于:步骤S2中,客户端将数据增强后的数据经过本地编码器、全局编码器与进行监督对比、知识蒸馏两种损失结合的本地训练,更新本地客户端编码器参数,具体为:

5.如权利要求1所述的支持数据异构基于监督对比学习的联邦模型训练方法,其特征在于:步骤S4中,所述全局预测器获得过程如下:

6.支持数据异构基于监督对比学习的联邦模型训练设备,其特征在于,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现上述权利要求1-5任一所述的支持数据异构基于监督对比学习的联邦模型训练方法。

7.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序用于执行上述权利要求1-5任一所述的支持数据异构基于监督对比学习的联邦模型训练方法。

...

【技术特征摘要】

1.支持数据异构基于监督对比学习的联邦模型训练方法,其特征在于:包括以下步骤:

2.如权利要求1所述的支持数据异构基于监督对比学习的联邦模型训练方法,其特征在于:步骤s2中,对数据异构的数据集进行两次数据增强,包括随机裁剪与水平翻转。

3.如权利要求1或2所述的支持数据异构基于监督对比学习的联邦模型训练方法,其特征在于:步骤s2中,本地客户端本地进行的神经网络训练结合了监督对比学习与知识蒸馏。

4.如权利要求3所述的支持数据异构基于监督对比学习的联邦模型训练方法,其特征在于:步骤s2中,客户端将数据增强后的数据经过本地编码器、全局编码器与进行监督对比、知识蒸馏两种损失结合的本...

【专利技术属性】
技术研发人员:韩嵩戴其羽任思琪赵帅王硕苹丁鸿鑫周树浩
申请(专利权)人:浙江工商大学
类型:发明
国别省市:

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

1