一种结合自集成和跨模型集成的半监督联邦学习方法

未命名 07-15 阅读:145 评论:0


1.本发明涉及机器学习技术领域,尤其是涉及一种结合自集成和跨模型集成的半监督联邦学习方法。


背景技术:

2.联邦学习(federated learning)是一种分布式机器学习技术,其核心思想是通过在多个拥有本地数据的数据源之间进行分布式模型训练,在不需要交换本地个体或样本数据的前提下,仅通过交换模型参数或中间结果的方式,构建基于虚拟融合数据下的全局模型,从而实现数据隐私保护和数据共享计算的平衡,即“数据可用不可见”、“数据不动模型动”的应用新范式。
3.fedavg是当前最经典的也是应用最广泛的联邦学习框架。fedavg通过参数平均融合实现交换模型参数。尽管fedavg已经得到了广泛的应用,但它仍存在相当大的局限性。fedavg框架假设所有参与者都能提供完整的有标签的数据源,然而事实上标注数据通常要花费大量时间,例如对一张医学图像进行病变的像素级标注可能会花费数个小时,所以在实际情况中,一种常见的场景是每个参与方提供的数据中只有小部分提供了完整的标注,而剩余的大部分数据都是不带标注的。针对小部分数据带标注而大部分数据不带标注的场景,人们提出了半监督学习的概念,近年来随着人们在半监督学习领域的探索,基于一致性学习(consistency learning)的半监督方法已经取得了理论和实际上的重大突破。由于性能优越,一致性学习已成为半监督学习领域的主流方法。
4.但大部分基于一致性学习的半监督方法都是针对单个数据源设计的,目前还很少有研究者探索半监督学习在联邦场景下的应用。
5.fedop是第一个将半监督方法引入联邦学习场景的框架,fedop假设每个参与者的数据源中只有小部分带标注。在fedavg中,每轮本地训练都采用全监督的方法,而fedop则利用半监督的方法进行本地训练。其余例如参数融合、参数广播等过程,fedavg与fedop的处理方法基本相同。尽管fedop可以处理联邦半监督问题,但是它只是将fedavg和一致性学习简单结合起来,并没有充分利用联邦学习的各种特性,所以性能并不理想。


技术实现要素:

6.本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种结合自集成和跨模型集成的半监督联邦学习方法,本发明充分利用了联邦学习中并行产生多个本地模型的特点,在不增加任何负担的情况下为本地的一致性学习提供高质量的学习目标,从而大幅提了训练效果。
7.本发明的目的可以通过以下技术方案来实现:
8.一种结合自集成和跨模型集成的半监督联邦学习方法,包括以下步骤:
9.s1、每个参与方使用本地数据进行训练得到本地模型;
10.s2、所有参与方将训练好的本地模型上传到中央服务器进行参数融合,得到全局
模型;
11.s3、中央服务器将所述全局模型广播给所有参与方;
12.s4、参与方使用所述全局模型作为新的本地模型,并在新的本地模型上开始新的一轮本地训练;
13.s5、返回步骤s1,循环执行直至达到预设条件;
14.其中,步骤s1中采用基于一致性学习的半监督方法训练本地模型,具体为:
15.基于跨模型集成,将每个参与方本地模型的集成输出作为教师模型的预测结果供学生模型学习;
16.使用自集成方式更新教师模型的每个子模型。
17.进一步地,所述学生模型为多个本地模型进行参数融合后得到的全局模型。
18.进一步地,所述的预设条件为模型评价指标收敛。
19.进一步地,所述训练好的本地模型上传到中央服务器进行参数融合,具体为利用参数平均化进行参数融合。
20.进一步地,所述参数平均化的表达式为:
[0021][0022]
式中,θg为全局模型,θi为第i个参与方的本地模型,ni为第i个参与方提供的本地数据量,k为参与方数量。
[0023]
进一步地,所述学生模型的参数选取过程表示为:
[0024][0025]
式中,θs为学生模型。
[0026]
进一步地,所述学生模型的输出表示为:
[0027]ys
=f(x,θs)
[0028]
式中,θs为学生模型,x为模型输入。
[0029]
进一步地,所述教师模型的输出表示为:
[0030][0031]
式中θi为第i个参与方的本地模型,ni为第i个参与方的本地数据量,k为参与方数量,x为模型输入。
[0032]
进一步地,使用自集成方式更新教师模型的每个子模型,每个子模型的更新过程为:
[0033][0034]
式中,为当前迭代过程的教师模型参数,为上一迭代过程中教师模型的参数,为当前迭代过程的学生模型参数,α平滑参数(一般设置为0.95),k为参与方数量。
[0035]
进一步地,所述基于一致性学习的半监督方法中,扰动函数采用fixmatch。
[0036]
与现有技术相比,本发明具有以下有益效果:
[0037]
1、本发明充分利用了联邦学习中并行产生多个本地模型的特点,基于跨模型集成方案,使用多个本地模型的集成输出作为教师模型的预测结果供学生模型学习,在不增加任何负担的情况下为本地的一致性学习提供高质量的学习目标,从而大幅提了训练效果。
[0038]
2、本发明使用自集成的方式更新教师模型的每个子模型,使得教师模型不断更新,以免落后于学生模型,通过结合跨模型集成方案与自集成方案,在计算量相对较小的同时使得教师模型更加可靠,从而能够得到更好的训练效果。
附图说明
[0039]
图1为本发明的实施流程图;
[0040]
图2为本发明的学习框架整体结构示意图;
[0041]
图3为本发明的本地训练过程伪代码示意图;
[0042]
图4为采用本发明与市面上主流框架进行医学图像分割任务的效果对比图。
具体实施方式
[0043]
下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
[0044]
如图1所示本技术提出了一种结合自集成和跨模型集成的半监督联邦学习方法,包括以下步骤:
[0045]
s1、每个参与方使用本地数据进行训练得到本地模型;
[0046]
s2、所有参与方将训练好的本地模型上传到中央服务器进行参数融合,得到全局模型;
[0047]
s3、中央服务器将全局模型广播给所有参与方;
[0048]
s4、参与方使用全局模型作为新的本地模型,并在新的本地模型上开始新的一轮本地训练;
[0049]
s5、返回步骤s1,循环执行直至达到预设条件;
[0050]
其中,步骤s1中采用基于一致性学习的半监督方法训练本地模型,具体为:
[0051]
基于跨模型集成,将每个参与方本地模型的集成输出作为教师模型的预测结果供学生模型学习;
[0052]
使用自集成方式更新教师模型的每个子模型。
[0053]
基于该方法,可以构建一种结合了自集成(self ensemble)和跨模型集成(cross model ensemble)的联邦半监督学习框架fccmt(federated cross clients mean teacher)。
[0054]
本技术充分利用了联邦学习的特性:在本地训练中,利用上一轮其他节点的本地模型的集成输出(ensemble output)作为一致性学习的目标,同时本地训练的每个迭代中,所有节点的本地模型都与上一轮融合产生的全局模型进行自集成(self ensemble)。本技术的方案充分利用了联邦学习中并行产生多个本地模型的特点,在不增加任何负担的情况
下为本地的一致性学习提供了高质量的学习目标,从而大幅提了训练效果。
[0055]
名词解释:
[0056]
联邦学习:联邦学习(fl)是一种分布式机器学习技术,其核心思想是通过在多个拥有本地数据的数据源之间进行分布式模型训练,在不需要交换本地个体或样本数据的前提下,仅通过交换模型参数或中间结果的方式,构建基于虚拟融合数据下的全局模型,从而实现数据隐私保护和数据共享计算的平衡,即“数据可用不可见”、“数据不动模型动”的应用新范式;
[0057]
fedavg:fedavg是一种常见联邦学习框架,它通过参数平均化来实现各个参与方的模型融合。fedavg进行分布式联邦学习的过程如下:
[0058]
1)首先每个参与方用本地的数据进行训练得到一个本地的模型θi(下标i代表模型属于第i个参与方);
[0059]
2)所有参与方将本地模型上传到到一个中央参数服务器,服务器里利用参数平均化进行参数融合。参数平均化的过程可以用公式1表示:
[0060][0061]
3)参数服务器将融合完成的全局模型θg广播给所有参与方,所有参与方用全局模型覆盖本地模型,随后在新的本地模型上开始新的一轮本地训练;
[0062]
4)返回步骤一,如此循环直到模型评价指标收敛。
[0063]
半监督学习:半监督学习的基本设置是给定一个来自某未知分布的有标记示例集l={(x1,y1),(x2,y2),...,(x|l|,y|l|)}以及一个未标记示例集u={x1’,x2’,...,x|u|’},期望学得函数f:x

y可以准确地对示例x预测其标记y。这里xi,xj’∈x,均为d维向量,yi∈y,为示例xi的标记,|l|和|u|分别为l和u的大小,即它们所包含的示例数;
[0064]
一致性学习:一致性学习是半监督学习领域中目前最流行、性能最好的一条分支。一致性学习的核心思想在于在训练的损失函数上增加一个一致性正则项,一致性正则项用来规约模型针对收到不同种类扰动的样本输出相同的结果。一致性学习的损失函数可以参照公式2:
[0065][0066]
其中ls为传统监督学习中的监督损失,lc为一致性损失,fs,f
t
分别为学生(student)和教师(teacher)模型,π,π

分别为两种不同的扰动。λ为正则项,监督损失部分与传统的监督学习完全相同,一致性损失部分的目的在于让学生模型和教师模型在不同的扰动下输出相似的结果。需要注意的是一致性损失只作用在那些无标签(unlabeled)的样本上。
[0067]
图2展示了本技术提出的框架(fccmt)的整体架构结构示意图。fccmt的基础骨干部分(见图2的左侧部分)与fedavg相似。都是通过先训练本地模型,再将本地模型上传到一个可信的中央服务器进行参数融合得到一个全局模型θg,随后中央服务器把全局模型θg广播给所有参与方。收到全局模型后,每个参与方用全局模型替换掉本地模型,并在替换后的本地模型的基础上开始新的一轮训练。如此循环直到模型评价指标收敛。
[0068]
fccmt与fedavg的主要区别体现在本地训练的过程上。在fedavg中,由于所有参与方的所有数据都是带有完整的标注的,所有fedavg中每个参与方的本地训练都可以采用全监督的方式。而在fccmt中,允许一个参与方只提供部分带标注的数据和部分不带标注的数据,为了应对这种情况,在fccmt的本地训练中,采用基于一致性学习的半监督方法进行训练。基于一致性学习的半监督训练需要产生两个模型:教师模型和学生模型,训练过程中需要让这两个模型在不同的扰动下输出相同的结果。
[0069]
一致性学习效果的好坏很大程度上依赖教师模型是否合适。一个“强力”的教师模型往往能为学生模型的学习提供高质量的学习目标。业界对于如何生成一个可靠的教师模型主要有两种技术方案:
[0070]
一种为跨模型集成方案,即训练多个学生模型,并将多个学生模型的输出进行集成(投票)得到“教师输出”,该种方案的优点在于生成的教师模型输出足够可靠,所以最终的训练效果会比较好,但缺点在于它需要额外训练多个无关的模型,带来了很大的计算负担。
[0071]
另一种技术方案为自集成方案,即将学生模型在时域上的参数平均作为教师模型,该方案的数学表达可以参照公式3,即先用学生模型的初始值去初始化教师模型随后每经过一个迭代,教师模型的参数都更新为上一个迭代中教师模型的参数与当前迭代中学生模型参数的加权平均,见公式3。该方案的优点在于生成教师模型时不需要额外的训练过程,但是和第一种方案相比,自集成方案中的教师模型通常不够强力,从而导致最终训练效果不佳。总的来说,针对单数据源的训练场景,必须要在训练效果和计算量上进行取舍。
[0072][0073]
与单数据源场景不同,联邦场景下的半监督学习天然地并行生成了多个子模型(每个参与方的本地模型都是一个子模型),挖掘这些子模型的用处可以显著提升训练效果,现有的一系列关于联邦半监督的研究,例如fedop仅仅是将fedavg中的本地训练从全监督方法替换为半监督方法,并没有充分利用好这些并行生成的本地模型。
[0074]
在本技术提出的方法中,创新性地利用这些子模型的集成输出作为教师模型的预测结果供学生模型学习,需要注意的是,此处的学生模型指的是多个本地模型进行参数融合后得到的全局模型。公式4、公式5、公式6分别展示了学生模型参数的选取过程、学生模型的输出、教师模型的输出。
[0075][0076]ys
=f(x,θs)(5)
[0077][0078]
在训练的过程中,教师模型也需要不断地更新以免落后学生模型。在本技术的框架中,教师模型是由一系列子模型共同组成的,为此本技术创新性地提出了一种基于自集
成的更新教师模型的方法,即在用自集成的方式更新教师模型的每个子模型,参考图2右半部分,学生模型每迭代一次,教师模型的每个子模型都向最新的学生模型进行指数平均移动(ema)。公式7展示了指数平均移动(ema)的数学定义,假设有k个参与方,则教师模型共有有k个子模型,这些子模型在每轮本地迭代中按照公式7进行更新:
[0079][0080]
为了更直观地说明fccmt的工作流程,图3中给出了fccmt本地训练的详细过程的伪代码,每次本地迭代中,先取一批带标注的数据(x
l
,y
l
),和两批不带标注的数据首先计算带标注数据的监督损失l
sup
,随后用上一轮收到的本地模型对做预测并将预测的输出做加权平均(集成),得到紧接着如图2中间部分所示利用扰动函数进行半监督损失计算,计算过程如下,先计算学生模型的输出θ
l
为学生模型的参数。(mix表示将随机抽掉一块拼接到上),再计算教师模型的输出最后计算这两个输出的二范数距离||y
t-ys||2,该二范数距离作为无监督损失。无监督损失和监督损失构的加权和构成了总损失,在总损失上进行梯度下降后便完成了一轮迭代,完成一轮迭代后便如之前提到的按照公式7让教师模型的每个子模型向新生成的学生模型做指数平均移动。
[0081]
本技术中提出的方法有很强的通用性,可以用在多种不同的场景下,为了验证方法的有效性,本实施例在医学图像分割任务上进行了实验:本实施例选取了视盘分割和皮肤病分割两个任务,在refuge和isic2018两个数据集上进行了模拟,采用10%带标注的数据和90%不带标注的数据,并把数据分为4等分来模拟联邦场景。图4展示了本实施例的实验结果,可以看到和市面上的主流框架对比,本发明提出的框架的输出结果更接近真值(ground truth)。
[0082]
当然本技术提出的方法也可以用在其他任务上(例如分类、回归、目标检测、时序预测等领域上)。本技术文档中的医学图像分割任务仅作为一个案例展示。
[0083]
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。

技术特征:
1.一种结合自集成和跨模型集成的半监督联邦学习方法,其特征在于,包括以下步骤:s1、每个参与方使用本地数据进行训练得到本地模型;s2、所有参与方将训练好的本地模型上传到中央服务器进行参数融合,得到全局模型;s3、中央服务器将所述全局模型广播给所有参与方;s4、参与方使用所述全局模型作为新的本地模型,并在新的本地模型上开始新的一轮本地训练;s5、返回步骤s1,循环执行直至达到预设条件;其中,步骤s1中采用基于一致性学习的半监督方法训练本地模型,具体为:基于跨模型集成,将每个参与方本地模型的集成输出作为教师模型的预测结果供学生模型学习;使用自集成方式更新教师模型的每个子模型。2.根据权利要求1所述的一种结合自集成和跨模型集成的半监督联邦学习方法,其特征在于,所述学生模型为多个本地模型进行参数融合后得到的全局模型。3.根据权利要求1所述的一种结合自集成和跨模型集成的半监督联邦学习方法,其特征在于,所述的预设条件为模型评价指标收敛。4.根据权利要求1所述的一种结合自集成和跨模型集成的半监督联邦学习方法,其特征在于,所述训练好的本地模型上传到中央服务器进行参数融合,具体为利用参数平均化进行参数融合。5.根据权利要求4所述的一种结合自集成和跨模型集成的半监督联邦学习方法,其特征在于,所述参数平均化的表达式为:式中,θ
g
为全局模型,θ
i
为第i个参与方的本地模型,n
i
为第i个参与方提供的本地数据量,k为参与方数量。6.根据权利要求5所述的一种结合自集成和跨模型集成的半监督联邦学习方法,其特征在于,所述学生模型的参数选取过程表示为:式中,θ
s
为学生模型。7.根据权利要求1所述的一种结合自集成和跨模型集成的半监督联邦学习方法,其特征在于,所述学生模型的输出表示为:y
s
=f(x,θ
s
)式中,θ
s
为学生模型,x为模型输入。8.根据权利要求1所述的一种结合自集成和跨模型集成的半监督联邦学习方法,其特征在于,所述教师模型的输出表示为:
式中,θ
i
为第i个参与方的本地模型,n
i
为第i个参与方的本地数据量,k为参与方数量,x为模型输入。9.根据权利要求1所述的一种结合自集成和跨模型集成的半监督联邦学习方法,其特征在于,使用自集成方式更新教师模型的每个子模型,每个子模型的更新过程为:式中,为当前迭代过程的教师模型参数,为上一迭代过程中教师模型的参数,为当前迭代过程的学生模型参数,α为平滑参数,k为参与方数量。10.根据权利要求1所述的一种结合自集成和跨模型集成的半监督联邦学习方法,其特征在于,所述基于一致性学习的半监督方法中,扰动函数采用fixmatch。

技术总结
本发明涉及一种结合自集成和跨模型集成的半监督联邦学习方法,包括以下步骤:S1、每个参与方使用本地数据进行训练得到本地模型;S2、所有参与方将训练好的本地模型上传到中央服务器进行参数融合,得到全局模型;S3、中央服务器将全局模型广播给所有参与方;S4、参与方使用全局模型作为新的本地模型,并在新的本地模型上开始新的一轮本地训练;S5、返回步骤S1,循环执行直至达到预设条件。与现有技术相比,本发明利用了联邦学习中并行产生多个本地模型的特点,通过结合跨模型集成方案与自集成方案,在计算量相对较小的同时使得教师模型更加可靠,从而能够得到更好的训练效果。从而能够得到更好的训练效果。从而能够得到更好的训练效果。


技术研发人员:赵生捷 温庭杰 张荣庆
受保护的技术使用者:同济大学
技术研发日:2023.03.23
技术公布日:2023/7/12
版权声明

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

飞行汽车 https://www.autovtol.com/

分享:

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

相关推荐