一种面向医学影像诊断的异构联邦学习方法

未命名 09-22 阅读:65 评论:0


1.本发明涉及计算机应用技术领域,具体为一种面向医学影像诊断的异构联邦学习方法。


背景技术:

2.传统方式下,由于个人隐私数据保护的相关法律法规,医疗机构之间无法直接共享医疗数据来实现诊断模型的训练优化,然而,单方面的医院诊断影像记录或单方面的患者体检影像数据都不能建立完整、长期、高效的诊断模型。因此,联邦学习[1]—一种可以实现保护数据隐私的同时构建无偏模型的学习框架,在医学影像辅助诊断等医学场景的研究与应用逐渐发展了起来[2]。
[0003]
基于联邦学习技术的应用,多个客户端(如医疗机构、体检中心等)利用医疗影像数据进行模型训练,更新本地模型后将参数传送到中央服务器进行聚合,更新参数后传回并帮助客户端更新本地模型。数据始终保留在客户端本地[3],换言之,在保障隐私数据安全的前提下,联邦学习实现了客户端的数据大联合,提高样本数量与质量,完善检验指标体系,优化预测模型的效果,从而提高诊断准确度。
[0004]
但是,在联邦学习中,数据往往存在数据异质性、设备异构性以及模型异构性等问题[4],即各客户端的数据是非独立同分布的(non-iid)、各客户端设备的计算、存储、通信能力不一致以及各方学习的模型参数不一致。在医疗领域,不同医疗机构的设备差异会造成影像数据在存在格式、分辨率、尺寸、色彩等方面存在偏差,由此产生的数据异质性将导致服务器聚合参数模式在效率、效果、隐私保护层面都不能达到一个良好的结果。当局部目标与全局目标距离较远时,基于梯度空间的聚合方法不能保证局部模型的最终表现更好。
[0005]
目前,已经有许多研究试图解决数据异质性问题。feddyn[5]在每一轮为每个设备提出一个动态正则器,而fedprox[6]通过局部模型和全局模型之间的l2距离来限制局部更新。然而,这些联邦学习方法在non-iid的数据集上并不能取得很好的效果。同样地,为了解决由于客户端计算资源差异导致的模型异构性,arivazhagan[7]等人为本地模型设计了个性化层,satler[8]等人提出为不同的用户组设计不同的模型。但这些方法无法适应数据异构性,特别是当隐私数据发生特征漂移(feature shift)时。
[0006]
然而,嵌入向量既可以将数据表示为一组定长的向量,减轻不同格式数据的差异,也可以用来提取数据特征,帮助算法更好地理解不同形式的数据,利于模型捕捉影像数据中的复杂关系,进而提升模型准确性和性能。因此,共享嵌入信息代替共享模型参数的方法能够更好地应对异构性问题,不仅可以适应数据异构,又可以解决模型异构问题。为解决共享嵌入信息方法不能为数据提供安全保障的问题,sun[9]等人给参数增加了噪声以及考虑了参数的取值范围,但当客户端较少时噪声将无法抵消,将导致聚合全局模型在反向传播中存在梯度爆炸问题。
[0007]
因此,本方案提出了一种面向医疗影像诊断的保护隐私的异构联邦学习方法(hflpp,heterogeneous federated learning with privacy-preserving),旨在保护患者
隐私,实现对患者的医学影像辅助诊断。该方法让本地模型由预训练模型作为骨干和完全连接层作为头部来组成,主干可以提取头部的功能,类的嵌入向量代替基于梯度空间的参数在客户端之间共享,以优化头部。客户端可以更好地适应隐私数据,且服务器和客户端之间的通信效率更高,同时在类的嵌入向量中添加噪声以满足差分隐私的要求,使本地模型性能的影响更小。


技术实现要素:

[0008]
本发明采取的技术方案如下:
[0009]
本发明包括hflpp学习框架;
[0010]
hflpp学习框架的具体流程如下:
[0011]
1.服务器将全局嵌入向量发送给客户端;
[0012]
2.客户端使用隐私数据与全局嵌入向量更新本地模型和本地嵌入向量;
[0013]
3.客户端将本地嵌入向量发送到服务器;
[0014]
4.服务器使用本地嵌入向量更新全局嵌入向量;
[0015]
其中,本地模型由下列两个步骤组成:
[0016]
a.编码器实现xd→
x
da
:第i个客户端将原始数据xd传入固定骨干中,并获得特征向量x
da
,即将大小为d的原始数据x映射到大小为da的特征向量;
[0017]
b.映射f(

;θi)实现x
da

x
db
:第i个客户端将x
da
输入到未固定的网络并获取x
db
,即嵌入空间的映射过程;
[0018]
映射网络的输出计算表示为:
[0019]
z(x)=f(r(x,φ
*
);θi)
ꢀꢀꢀ
(2)
[0020]
其中,r表示骨干的嵌入函数;x表示来自本地数据集的样本;表示预训练骨干的参数,对于第i个客户端,由θi参数化的映射网络f旨在将骨干的输出映射到另一个嵌入空间;
[0021]
本地嵌入向量由同一类j的样本投影平均值表示:
[0022][0023]
其中,表示第i个客户端的j类嵌入向量;d
i,j
表示第i个客户端的j类样本;第i个客户端在完成本地计算后,将本地嵌入向量传送到服务器进行信息聚合,然后服务器对全局嵌入向量进行共享;
[0024]
全局嵌入向量收到本地嵌入向量集后,服务器计算全局原型为:
[0025][0026]
其中,nj表示所有客户端中j类样本的集合,|nj|表示nj的数量,全局嵌入向量集表示为服务器端和各个客户端利用秘密分享多方安全计算方法聚合本地嵌入向量的信息得到全局嵌入向量;
[0027]
基于秘密分享的多方安全计算加法通过shamir秘密分享算法实现,该算法将本地嵌入向量的信息作为秘密值分成多个部分,每个部分分配给一个参与方,只有当足够数量的参与方共同合作才能还原出原始秘密值,在加法计算中,每个参与方将自己持有的秘密值相加,然后将加法结果交由服务器端进行还原,得到最终的加法结果,服务器端只能还原加法结果的密文而无法从中获取相加的原始向量参数;
[0028]
为了满足差分隐私,集中差分隐私比本地差分隐私需要更少的噪声,因此通过阈值同态加密方法分解噪声;
[0029]
本地目标hflpp的本地损失包含两部分:第一部分是监督学习中的交叉熵损失,表示利用交叉熵损失函数得出的本地模型输出的预测值与真实标签值之间的差距;第二部分是嵌入向量的对比损失,表示本地向量与全局向量的差距;
[0030]
当第i个客户端执行本地训练时,它从服务器接收全局嵌入向量,并在本地训练期间更新本地模型和本地嵌入向量;对于原始数据x,从本地模型中提取嵌入向量,即cy=z(x)=f(r(x,φ
*
);θi),与nt-xent损失[10]类似,将嵌入向量的对比损失定义为:
[0031][0032]
其中,t表示“温度”参数,t取值范围在1至10之间,可用于调节以适应不同数据分布;测量距离的工具可以是l1,l2以及余弦,一个批次(x,y)的损失表示为:
[0033][0034]
其中,λ是一个超参数,用于控制嵌入向量对比损失的权重,其取值由客户端本地向量分布和全局向量分布之间的kl散度来确定,大小与散度大小负相关,对于kl散度越大的客户端,其本地嵌入向量分布与全局嵌入向量分布差异越大,因而对比损失的价值越小;根据损失更新本地模型参数,本地目标为最小化下式:
[0035][0036]
其中,λ是一个超参数,用于控制嵌入向量对比损失的权重,其取值由客户端本地向量分布和全局向量分布之间的kl散度根据如下公式确定:
[0037][0038]
由上式可见,在一定范围内,λ取值大小与kl散度大小呈负相关。其中,kl散度衡量本地嵌入向量分布与全局嵌入向量分布之间的差异,kl散度越大表明两种向量分布差异越大,其计算公式如下:
[0039][0040]
其中hcy和hc上划线为根据向量样本得到的近似多元分布,hcy为根据本地嵌入向量cy的向量样本得到的近似多元分布,其计算方式为根据模型训练过程中的批量大小b确定分箱数量b/4,对向量样本进行分箱,统计每箱中的样本出现频率hcy(i)(i=1,2,...,b/
4)作为概率的近似值。hc上划线为根据全局嵌入向量c上划线的向量样本得到的近似多元分布,其计算方式为根据模型训练过程中的批量大小b确定分箱数量b/4,对向量样本进行分箱,统计每箱中的样本出现频率hc上划线(i)(i=1,2,...,b/4)作为概率的近似值。
[0041]
当第i个客户端执行本地训练时,客户端使用随机梯度下降来更新本地模型和带有隐私数据的本地嵌入向量,而目标定义为公式(7);每一轮,服务器将全局嵌入向量发送给客户端,并使用加权平均值来更新全局嵌入向量。
[0042]
有益效果:
[0043]
1.嵌入向量中的参数很少,因此隐私保护的通信成本和计算开销较小;
[0044]
2.嵌入向量被用作规范化项(regularization term)的参数,这削弱了数据异质性对局部模型准确性的影响;
[0045]
3.嵌入向量用作聚合参数,因此本地模型不需要同构。
[0046]
因此,面临在医学影像诊断领域中的医学影像数据异质性问题,hflpp通过共享嵌入向量的方法可以有效地减轻本地更新造成的特征漂移,具有良好的预测准确性,参数的减少提升了通信效率,同时,在性能没有明显下降的前提下满足了患者隐私保护的需求。
附图说明
[0047]
图1是保护隐私的异构联邦学习框架。
[0048]
图2基于ssmpc的向量参数聚合。
[0049]
图3hflpp的本地损失流程图。
具体实施方式
[0050]
hflpp学习框架的具体流程如下:
[0051]
1.服务器将全局嵌入向量发送给客户端;
[0052]
2.客户端使用隐私数据与全局嵌入向量更新本地模型和本地嵌入向量;
[0053]
3.客户端将本地嵌入向量发送到服务器;
[0054]
4.服务器使用本地嵌入向量更新全局嵌入向量;
[0055]
其中,本地模型由下列两个步骤组成:
[0056]
a.编码器实现xd→
x
da
:第i个客户端将原始数据xd传入固定骨干中,并获得特征向量x
da
,即将大小为d的原始数据x映射到大小为da的特征向量;
[0057]
b.映射f(

;θi)实现x
da

x
db
:第i个客户端将x
da
输入到未固定的网络并获取x
db
,即嵌入空间的映射过程;
[0058]
映射网络的输出计算表示为:
[0059]
z(x)=f(r(x,φ
*
);θi)
ꢀꢀꢀ
(2)
[0060]
其中,r表示骨干的嵌入函数;x表示来自本地数据集的样本;表示预训练骨干的参数,对于第i个客户端,由θi参数化的映射网络f旨在将骨干的输出映射到另一个嵌入空间;
[0061]
本地嵌入向量由同一类j的样本投影平均值表示:
[0062][0063]
其中,表示第i个客户端的j类嵌入向量;d
i,j
表示第i个客户端的j类样本;第i个客户端在完成本地计算后,将本地嵌入向量传送到服务器进行信息聚合,然后服务器对全局嵌入向量进行共享;
[0064]
全局嵌入向量收到本地嵌入向量集后,服务器计算全局原型为:
[0065][0066]
其中,nj表示所有客户端中j类样本的集合,|nj|表示nj的数量,全局嵌入向量集表示为服务器端和各个客户端利用秘密分享多方安全计算方法聚合本地嵌入向量的信息得到全局嵌入向量;
[0067]
基于秘密分享的多方安全计算加法通过shamir秘密分享算法实现,该算法将本地嵌入向量的信息作为秘密值分成多个部分,每个部分分配给一个参与方,只有当足够数量的参与方共同合作才能还原出原始秘密值,在加法计算中,每个参与方将自己持有的秘密值相加,然后将加法结果交由服务器端进行还原,得到最终的加法结果,服务器端只能还原加法结果的密文而无法从中获取相加的原始向量参数;
[0068]
为了满足差分隐私,集中差分隐私比本地差分隐私需要更少的噪声,因此通过阈值同态加密方法分解噪声;
[0069]
本地目标hflpp的本地损失包含两部分:第一部分是监督学习中的交叉熵损失,表示利用交叉熵损失函数得出的本地模型输出的预测值与真实标签值之间的差距;第二部分是嵌入向量的对比损失,表示本地向量与全局向量的差距;
[0070]
当第i个客户端执行本地训练时,它从服务器接收全局嵌入向量,并在本地训练期间更新本地模型和本地嵌入向量;对于原始数据x,从本地模型中提取嵌入向量,即cy=z(x)=f(r(x,φ
*
);θi),与nt-xent损失[10]类似,将嵌入向量的对比损失定义为:
[0071][0072]
其中,t表示“温度”参数,t取值范围在1至10之间,可用于调节以适应不同数据分布;测量距离的工具可以是l1,l2以及余弦,一个批次(x,y)的损失表示为:
[0073][0074]
根据损失更新本地模型参数,本地目标为最小化下式:
[0075][0076]
其中,λ是一个超参数,用于控制嵌入向量对比损失的权重,其取值由客户端本地向量分布和全局向量分布之间的kl散度根据如下公式确定:
[0077]
[0078]
由上式可见,在一定范围内,λ取值大小与kl散度大小呈负相关。其中,kl散度衡量本地嵌入向量分布与全局嵌入向量分布之间的差异,kl散度越大表明两种向量分布差异越大,其计算公式如下:
[0079][0080]
其中h为根据向量样本得到的近似多元分布,其计算方式为根据模型训练过程中的批量大小b确定分箱数量b/4,对向量样本进行分箱,统计每箱中的样本出现频率h(i)(i=1,2,...,b/4)作为概率的近似值。
[0081]
当第i个客户端执行本地训练时,客户端使用随机梯度下降来更新本地模型和带有隐私数据的本地嵌入向量,而目标定义为公式(7);每一轮,服务器将全局嵌入向量发送给客户端,并使用加权平均值来更新全局嵌入向量。
[0082]
提到的参考文献如下:
[0083]
[1]mcmahan h b,moore e,ramage d,et al.federated learning of deep networks using model averaging[j].arxiv preprint arxiv:1602.05629,2016.
[0084]
[2]haque,and s.h.ab hamid,“defending against the novel coronavirus(covid-19)outbreak:how can the internet of things(iot)help to save theworld?”health policy technol.,vol.9,no.2,p.136,jun.2020.
[0085]
[3]kairouz,peter,et al.“advances and open problems in federated learning.”foun-dations and trends in machine learning 14.1

2(2021):1-210.
[0086]
[4]hangdong,k.,&bo,m.(2023).fedhp:heterogeneous federatedlearning with privacy-preserving.arxiv,abs/2301.11705.
[0087]
[5]durmus,alp emre,et al.“federated learning based on dynamicregularization.”international conference on learning representations.2021.
[0088]
[6]li,tian,et al.“federated optimization in heterogeneous networks.”proceedings ofmachine learning and systems 2(2020):429-450.
[0089]
[7]arivazhagan,manoj ghuhan,et al.“federated learning withpersonalization layers.”arxiv preprint arxiv:1912.00818(2019).
[0090]
[8]sattler,felix,klaus-robert mu ller,and wojciech samek.”clusteredfederated learning:model-agnostic distributed multitask optimization underprivacy con-straints.”ieee transactions on neural networks and learning systems32.8(2020):3710-3722.
[0091]
[9]sun,lichao,and lingjuan lyu.“federated model distillation withnoise-free differential privacy.”arxiv preprint arxiv:2009.05537(2020).
[0092]
[10]sohn,kihyuk.”improved deep metric learning with multi-class n-pairloss objective.”advances in neural information processing systems 29(2016).

技术特征:
1.一种面向医学影像诊断的异构联邦学习方法,其特征在于:包括hflpp学习框架;hflpp学习框架的具体流程如下:1.服务器将全局嵌入向量发送给客户端;2.客户端使用隐私数据与全局嵌入向量更新本地模型和本地嵌入向量;3.客户端将本地嵌入向量发送到服务器;4.服务器使用本地嵌入向量更新全局嵌入向量;其中,本地模型由下列两个步骤组成:a.编码器实现x
d

x
da
:第i个客户端将原始数据x
d
传入固定骨干中,并获得特征向量x
da
,即将大小为d的原始数据x映射到大小为d
a
的特征向量;b.映射f(

;θi)实现x
da

x
db
:第i个客户端将x
da
输入到未固定的网络并获取x
db
,即嵌入空间的映射过程;映射网络的输出计算表示为:z(x)=f(r(x,φ
*
);θ
i
)
ꢀꢀꢀ
(2)其中,r表示骨干的嵌入函数;x表示来自本地数据集的样本;表示预训练骨干的参数,对于第i个客户端,由θ
i
参数化的映射网络f旨在将骨干的输出映射到另一个嵌入空间;本地嵌入向量由同一类j的样本投影平均值表示:其中,表示第i个客户端的j类嵌入向量;d
i,j
表示第i个客户端的j类样本;第i个客户端在完成本地计算后,将本地嵌入向量传送到服务器进行信息聚合,然后服务器对全局嵌入向量进行共享;全局嵌入向量收到本地嵌入向量集后,服务器计算全局原型为:其中,n
j
表示所有客户端中j类样本的集合,|n
j
|表示n
j
的数量,全局嵌入向量集表示为服务器端和各个客户端利用秘密分享多方安全计算方法聚合本地嵌入向量的信息得到全局嵌入向量;基于秘密分享的多方安全计算加法通过shamir秘密分享算法实现,该算法将本地嵌入向量的信息作为秘密值分成多个部分,每个部分分配给一个参与方,只有当足够数量的参与方共同合作才能还原出原始秘密值,在加法计算中,每个参与方将自己持有的秘密值相加,然后将加法结果交由服务器端进行还原,得到最终的加法结果,服务器端只能还原加法结果的密文而无法从中获取相加的原始向量参数;为了满足差分隐私,集中差分隐私比本地差分隐私需要更少的噪声,因此通过阈值同态加密方法分解噪声;本地目标hflpp的本地损失包含两部分:第一部分是监督学习中的交叉熵损失,表示利用交叉熵损失函数得出的本地模型输出的预测值与真实标签值之间的差距;第二部分是嵌
入向量的对比损失,表示本地向量与全局向量的差距;当第i个客户端执行本地训练时,它从服务器接收全局嵌入向量,并在本地训练期间更新本地模型和本地嵌入向量;对于原始数据x,从本地模型中提取嵌入向量,即c
y
=z(x)=f(r(x,φ
*
);θ
i
),嵌入向量的对比损失定义为:其中,t表示“温度”参数,t取值范围在1至10之间,可用于调节以适应不同数据分布;测量距离的工具可以是l1,l2以及余弦,一个批次(x,y)的损失表示为:其中,λ是一个超参数,用于控制嵌入向量对比损失的权重,其取值由客户端本地向量分布和全局向量分布之间的kl散度来确定,大小与散度大小负相关,对于kl散度越大的客户端,其本地嵌入向量分布与全局嵌入向量分布差异越大,因而对比损失的价值越小;根据损失更新本地模型参数,本地目标为最小化下式:其中,λ是一个超参数,用于控制嵌入向量对比损失的权重,其取值由客户端本地向量分布和全局向量分布之间的kl散度根据如下公式确定:由上式可见,在一定范围内,λ取值大小与kl散度大小呈负相关。其中,kl散度衡量本地嵌入向量分布与全局嵌入向量分布之间的差异,kl散度越大表明两种向量分布差异越大,其计算公式如下:其中hcy和hc上划线为根据向量样本得到的近似多元分布,hcy为根据本地嵌入向量cy的向量样本得到的近似多元分布,其计算方式为根据模型训练过程中的批量大小b确定分箱数量b/4,对向量样本进行分箱,统计每箱中的样本出现频率hcy(i)(i=1,2,...,b/4)作为概率的近似值。hc上划线为根据全局嵌入向量c上划线的向量样本得到的近似多元分布,其计算方式为根据模型训练过程中的批量大小b确定分箱数量b/4,对向量样本进行分箱,统计每箱中的样本出现频率hc上划线(i)(i=1,2,...,b/4)作为概率的近似值。2.根据权利要求1所述得一种面向医学影像诊断的异构联邦学习方法,其特征在于:当第i个客户端执行本地训练时,客户端使用随机梯度下降来更新本地模型和带有隐私数据的本地嵌入向量,而目标定义为公式(7);每一轮,服务器将全局嵌入向量发送给客户端,并使用加权平均值来更新全局嵌入向量。

技术总结
本发明公开了一种面向医学影像诊断的异构联邦学习方法。本发明包括HFLPP学习框架;HFLPP学习框架的具体流程为:1.服务器将全局嵌入向量发送给客户端;2.客户端使用隐私数据与全局嵌入向量更新本地模型和本地嵌入向量;3.客户端将本地嵌入向量发送到服务器;4.服务器使用本地嵌入向量更新全局嵌入向量。面临在医学影像诊断领域中的医学影像数据异质性问题,HFLPP通过共享嵌入向量的方法可以有效地减轻本地更新造成的特征漂移,具有良好的预测准确性,参数的减少提升了通信效率,同时,在性能没有明显下降的前提下满足了患者隐私保护的需求。的需求。的需求。


技术研发人员:李文波 章为 易忠杰
受保护的技术使用者:中南大学湘雅二医院
技术研发日:2023.05.08
技术公布日:2023/9/20
版权声明

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

航空之家 https://www.aerohome.com.cn/

航空商城 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

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

评论

相关推荐