基于同态加密的联邦学习肺结节检测方法

阅读: 评论:0



1.本发明属于医学影像与电子信息的交叉领域,具体涉及一种基于同态加密的联邦学习肺结节检测方法。


背景技术:



2.癌症是对人类最具有威胁的病症,诊断后存活率极低。其中,肺癌是世界上人口死亡主要原因,在世界人口中发病率达到了11.6%,死亡人数占比18.4%。在肺癌早期常常以肺结节形式出现,因此肺结节检测是预防肺癌的有效手段。在过去的十几年中,人工智能领域的蓬勃发展,在医疗领域也得到了广泛的应用,其中肺结节检测也是人工智能领域的热点研究方向。然而随着社会的不断发展,人们对用户隐私和数据安全的关注也不断提高。在隐私安全、道德伦理等因素制约下,导致肺结节数据小规模、碎片化的分在在各个医疗机构,呈现孤岛分布。对于训练人工智能模型的数据量是庞大的,才能得到满意的性能水平。面对数据难以聚合在一起,传统机器学习方式面对缺少标签或者特征数值等重要信息难以训练出理想模型,成为智慧医疗的主要瓶颈。
3.如上文所述,在遵守各类隐私保护条例和法律法规的前提下,解决数据孤岛问题,是许多研究学者面临的首要挑战。在2016年,谷歌mcmahan等人提出了联邦学习(federated learning),不需要将数据聚合,通过参与方协作构建一个共享机器模型使得每一个参与方都能拥有若干的训练数据,参与方之间也不会相互知晓隐私数据内容,在保证数据隐私安全的同时打破了数据孤岛。mcmahan等人将其用于智能手机上的语言预测模型更新。然而,在训练中会存在半诚实敌手和恶意敌手遵循参与方协议挖掘和获取其他参与方数据隐私或改变协议甚至恶意攻击参与方获得隐私。因此,基于联邦学习的隐私保护技术逐渐成为热门的研究领域。
4.目前,隐私保护技术主要使用安全多方计算、差分隐私和同态加密。安全多方计算无法解决参与方信任问题数据泄漏的风险,差分隐私影响模型准确度,同态加密既保证了数据安全又不影响模型准确度。例如,申请公布号为cn202011413354.0,名称为“一种车联网中基于同态加密的联邦学习隐私保护方法”的专利申请,公开的方法步骤主要包括:本地车载训练模型更新权重参数;权重参数同态加密;密文上次到云服务器聚合模型,传输回本地车载;本地车载解密更新模型,实现对本地更新后的权重参数的全局更新。


技术实现要素:



5.本发明的目的在于设计针对现有技术的不足,提出了一种基于同态加密的联邦学习肺结节检测方法,在保证数据的隐私和安全前提下,不影响模型精度,并具有广泛的适用性。
6.本发明为实现上述目的,采用技术方案步骤如下:
7.(1)图像预处理:
8.步骤1:双三次插值将原始ct图像重采样至所需体素尺度。双三次插值需要构造
bicubic函数:(a一般取值为-0.5)。双三次插值算法是将近邻的16个像素点加权,插值计算的公式为:
9.步骤2:重采样图像采用二值化提取出肺实质区域。
10.步骤3:去除无关边界。提取出的肺实质区域通常保留ct检查床和空气等无关边界,通过将灰度图边界灰度值为1的部分清除。
11.步骤4:标记所有连通区域,保留左右肺叶两片连通区域。
12.步骤5:肺部细小血管和结节通过腐蚀得到规则的黑空洞,肺叶黑点区域采用闭运算去除,保留肺壁相连接的结节。
13.步骤6:采用凸包运算修补肺叶边缘区域凹陷得到肺部掩码,与原始ct图像叠加运算得到肺实质图像。
14.步骤7:防止ct影像中结节信号强度不同导致特征提取不准确,将肺实质及肺部组织数值区间归一化处理,归一化公式为:(t为样本的数据值,t
max
为该数据的最大值,t
min
为该数据的最小值)。
15.步骤8:最后经过线性变换,完成预处理操作。
16.(2)数据增强:
17.步骤1:使用双三次插值对肺实质图像进行随机缩放。通过定位结节中心点坐标,对不同尺寸的肺结节进行随机剪裁。根据不同结节半径设置不同翻转采样次数,得到肺结节立方体作为网络的输入。
18.(3)搭建联邦学习框架:
19.步骤1:框架包括一个中央服务器和客户端设备集合为m={m1,m2,m3…mn
},其中n≥2。
20.(4)本地客户端平均分发数据集:
21.步骤1:luna16数据集选取一定比例作为训练集,将其打乱平均分发给本地客户端,使其符合non-iid分布,其余部分作为测试集。
22.(5)构建肺结节检测模型:
23.步骤1:构建一个基于dpn的双路径肺结节检测模型,采用了p层的3d dpn作为编码器子网络。
24.(6)本地客户端参数初始化:
25.步骤1:设置参加训练的本地客户端占比为初始化全局聚合迭代次数s,初始化权值参数ω,本地客户端迭代次数为s次,本地客户端训练批大小为n,学习率为η。
26.(7)本地客户端对肺结节检测模型训练:
27.步骤1:本地客户端数据集为zn={z1,z2,z3…
zk},作为网络输入进行训练。
28.步骤2:本地客户端损失函数loss计算方式为结节分类损失l
cl
和候选结节坐标(x,y,z)与结节尺寸d回归损失l
reg
,公式为loss=l
cl
+l
reg

29.其中,l
cl
为bec损失函数,l
reg
为smooth l1损失函数。
30.步骤6:本地客户端权值参数更新采用随机梯度下降法,权值参数使用同态加密并
上传给中央服务器。
31.我们的同态加密具体方法,给定一个非交换环r,随机选择r1,r2,r3,r4∈r,使得是可逆的。
32.我们假设隐私数据为b,我们随机选择h1,h2∈r,构建矩阵在此基础上我们可以得到加密密文c=ench(b)=vqv-1

33.加密密文c的解密是b=dech(c)=(v-1
cv)
11
,其中(v-1
cv)
11
表示矩阵(v-1
cv)的第一行第一列元素。
34.我们的同态加密算法符合同态加法和同态乘法操作。我们定义我们的同态加密算法符合同态加法和同态乘法操作。我们定义
[0035][0036]
因此我们可以得到
[0037][0038]
因此我们可以得到
[0039]
(8)中央服务器聚合权值参数:
[0040]
步骤1:中央服务器接收密文,采用加权平均算法聚合密文。加权平均算法公式为步骤1:中央服务器接收密文,采用加权平均算法聚合密文。加权平均算法公式为为中央服务器聚合后模型参数,ω
t+1
为本地客户端权值参数。
[0041]
步骤2:中央服务器将聚合后密文参数发送给本地客户端。
[0042]
步骤3:本地客户端解密密文,更新全局模型参数。
[0043]
步骤4:判断s
t
<s是否成立,若是s
t
=s
t
+1,继续训练模型;否则,模型训练完成。
[0044]
(9)获得肺结节检测结果:
[0045]
步骤1:将测试样本输入到训练好的同态加密的联邦学习肺结节检测模型中,得到所有测试样本的预测标签。
[0046]
本发明与现有技术相比,具有以下优点:
[0047]
一、本发明使用3d dpn26 faster r-cnn模型。双路径连接的优势得益于残差网络和密集连接。残差网络消除了深度学习中梯度消失现象。从学习到特性共享的角度来看,残余学习低冗余但存在特性复用,而密集连接生成新特征但冗余度过高。dpn结合了残余学习和密集连接的优势,使用双路径连接一部分特征映射进行密集连接,一部分用于残差网络,不需要重新学习冗余特征图,密集连接网络的参数少于残余特征图。
[0048]
二、本发明采用联邦学习算法,上传给中央服务器进行聚合,不需要将数据聚合,
通过参与方协作构建一个共享机器模型在保证了数据隐私和安全的前提,实现了模型的训练。
[0049]
三、本发明采用一种同态加密方法,对权值参数机进行加密处理,参与方接收到的是密文,防止半诚实敌手和恶意敌手,推理或破解原始数据信息,保障了数据层面的安全。除此之外,同态加密算法不影响模型训练精度,可以有效保证训练结果的准确性。
附图说明
[0050]
图1为本发明的方法流程图。
具体实施方式
[0051]
下面结合附图和具体实施例对本发明做进一步的描述,有必要在此指出的是以下实施例只是用于对本发明进行进一步的说明,不能理解为对本发明保护范围的限制,该领域的技术熟练人员根据上述发明内容所做出的一些非本质的改进和调整,仍属于本发明的保护范围。
[0052]
参照图1,本发明包括以下步骤:
[0053]
(1)图像预处理:
[0054]
步骤1:双三次插值将原始ct图像重采样至(1,1,1)体素尺度。双三次插值需要构造bicubic函数:(a一般取值为-0.5)。双三次插值算法是将近邻的16个像素点加权,插值计算的公式为:
[0055]
步骤2:重采样图像采用二值化提取出肺实质区域。
[0056]
步骤3:去除无关边界。提取出的肺实质区域通常保留ct检查床和空气等无关边界,通过将灰度图边界灰度值为1的部分清除。
[0057]
步骤4:标记所有连通区域,保留左右肺叶两片连通区域。
[0058]
步骤5:肺部细小血管和结节通过腐蚀得到规则的黑空洞,肺叶黑点区域采用闭运算去除,保留肺壁相连接的结节。
[0059]
步骤6:采用凸包运算修补肺叶边缘区域凹陷得到肺部掩码,与原始ct图像叠加运算得到肺实质图像。
[0060]
步骤7:防止ct影像中结节信号强度不同导致特征提取不准确,将肺实质及肺部组织数值区间归一化处理为[-1200,600],归一化公式为:(t为样本的数据值,t
mmax
为该数据的最大值,t
min
为该数据的最小值)。
[0061]
步骤8:最后经过线性变换至[0,255],完成预处理操作。
[0062]
(2)数据增强:
[0063]
步骤1:使用双三次插值对肺实质图像进行随机缩放至[0.75,1.25]。通过定位结节中心点坐标,对不同尺寸的肺结节进行随机剪裁。根据不同结节半径设置不同翻转采样次数,得到肺结节立方体作为网络的输入。
[0064]
(3)搭建联邦学习框架:
[0065]
步骤1:框架包括一个中央服务器和客户端设备集合为m={m1,m2,m3…mn
},其中n≥2,在本实施例中n=10。
[0066]
(4)本地客户端平均分发数据集:
[0067]
步骤1:luna16数据集选取80%作为训练集,将其打乱平均分发给本地客户端,使其符合non-iid分布,其余部分作为测试集。
[0068]
(5)构建3d dpn26 faster r-cnn肺结节检测模型:
[0069]
步骤1:构建一个基于dpn的双路径肺结节检测模型,采用了26层的3d dpn作为编码器子网络。
[0070]
(6)本地客户端参数初始化:
[0071]
步骤1:设置参加训练的本地客户端占比为50%,初始化全局聚合迭代次数s=0,全局聚合200轮,初始化权值参数ω,本地客户端迭代次数为4次,本地客户端训练批大小为4,初始学习率为0.01经过一定训练次数减少学习率大小。
[0072]
(7)本地客户端对肺结节检测模型训练:
[0073]
步骤1:本地客户端数据集为zn={z1,z2,z3…
zk},作为网络输入进行训练。
[0074]
步骤2:本地客户端损失函数loss计算方式为结节分类损失l
cl
和候选结节坐标(x,y,z)与结节尺寸d回归损失l
reg
,公式为loss=l
cl
+l
reg

[0075]
其中,l
cl
为bec损失函数,l
reg
为smooth l1损失函数。
[0076]
步骤6:本地客户端权值参数更新采用随机梯度下降法,权值参数使用同态加密并上传给中央服务器。
[0077]
我们的同态加密具体方法,给定一个非交换环r,随机选择r1,r2,r3,r4∈r,使得是可逆的。
[0078]
我们假设隐私数据为b,我们随机选择h1,h2∈r,构建矩阵在此基础上我们可以得到加密密文c=ench(b)=vqv-1

[0079]
加密密文c的解密是b=dech(c)=(v-1
cv)
11
,其中(v-1
cv)
11
表示矩阵(v-1
cv)的第一行第一列元素。
[0080]
我们的同态加密算法符合同态加法和同态乘法操作。我们定义我们的同态加密算法符合同态加法和同态乘法操作。我们定义
[0081][0082]
因此我们可以得到
[0083][0084]
因此我们可以得到
[0085]
(8)中央服务器聚合权值参数:
[0086]
步骤1:中央服务器接收密文,采用加权平均算法聚合密文。加权平均算法公式为步骤1:中央服务器接收密文,采用加权平均算法聚合密文。加权平均算法公式为为中央服务器聚合后模型参数,ω
t+1
为本地客户端权值参数。
[0087]
步骤2:中央服务器将聚合后密文参数发送给本地客户端。
[0088]
步骤3:本地客户端解密密文,更新全局模型参数。
[0089]
步骤4:判断s
t
《200是否成立,若是s
t
=s
t
+1,继续训练模型;否则,模型训练完成。
[0090]
(9)获得肺结节检测结果:
[0091]
步骤1:将测试样本输入到训练好的同态加密的联邦学习肺结节检测模型中,得到所有测试样本的预测标签。
[0092]
本发明通过联邦学习算法解决了数据难以聚合在一起导致传统机器学习方式面对缺少标签或者特征数值等重要信息难以训练出理想模型,采用一种同态加密算法防止半诚实敌手和恶意敌手推理和获取数据隐私,在保证数据的隐私和安全前提下不影响模型精度,适用于不同环境的隐私保护场景。
[0093]
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

技术特征:


1.一种基于同态加密的联邦学习肺结节检测方法,其特征在于,包括如下步骤:步骤1,图像预处理:采用双三次插值重采样、二值化、图像连通、腐蚀和凸包运算等方法获得肺实质;肺实质图像结节信号强度不同导致特征提取不准确采用归一化处理,具体归一化公式为:(t为样本的数据值,t
max
为该数据的最大值,t
min
为该数据的最小值);步骤2,数据增强:使用双三次插值对肺实质图像进行随机缩放;通过定位结节中心点坐标,对不同尺寸的肺结节进行随机剪裁;根据不同结节半径设置不同翻转采样次数,得到肺结节立方体作为网络的输入;步骤3,搭建联邦学习模框架:框架包括一个中央服务器和客户端设备集合为m={m1,m2,m3…
m
n
},其中n≥2;步骤4,向本地客户端分发数据集:在luna16数据集选取一定比例作为训练集,将其打乱平均分发给本地客户端,使其符合non-iid分布,其余部分作为测试集;步骤5,构建肺结节检测模型:构建一个基于dpn的双路径肺结节检测模型,采用了p层的3d dpn作为编码器子网络;步骤6,本地客户端参数初始化:设置参加训练的本地客户端占比为初始化全局聚合迭代次数s,初始化权值参数ω,本地客户端迭代次数为s次,本地客户端训练批大小为n,学习率为η;步骤7,本地客户端对肺结节检测模型训练:(1)本地客户端数据集为z
n
={z1,z2,z3…
z
k
},作为网络输入进行训练;(2)本地客户端损失函数loss计算方式为结节分类损失l
cl
和候选结节坐标x,y,z)与结节尺寸d回归损失l
reg
,公式为loss=l
cl
+l
reg
;其中,l
cl
为bec损失函数,l
reg
为smooth l1损失函数;(3)本地客户端权值参数更新采用随机梯度下降法,权值参数使用同态加密并上传给中央服务器;步骤8,中央服务器聚合权值参数:(1):中央服务器接收密文,采用加权平均算法聚合密文;(2):中央服务器将聚合后密文参数发送给本地客户端;(3):本地客户端解密密文,更新全局模型参数;(4):判断s
t
<s是否成立,若是s
t
=s
t
+1,继续训练模型;否则,模型训练完成;步骤9,获得肺结节检测结果:将测试样本输入到训练好的同态加密的联邦学习肺结节检测模型中,得到所有测试样本的预测标签。2.根据权利要求1所述的基于同态加密的联邦学习肺结节检测,其特征在于,步骤5中基于dpn的双路径肺结节检测模型,构建一个基于3d dpn双路径网络,采用了26层的3d dpn作为编码器子网络。3.根据权利要求1所述的同态加密,其特征在于,步骤7中给定一个非交换环r,随机选
择r1,r2,r3,r4∈r,使得是可逆的;假设权值参数为b,我们随机选择h1,h2∈r,构建矩阵在此基础上我们可以得到加密密文c=enc
h
(b)=vqv-1
;步骤8中,加密密文c的解密是b=dec
h
(c)=(v-1
cv)
11
,其中v-1
cv)
11
表示矩阵(v-1
cv)的第一行第一列元素;我们的同态加密算法符合同态加法和同态乘法操作;我们定义我们的同态加密算法符合同态加法和同态乘法操作;我们定义我们的同态加密算法符合同态加法和同态乘法操作;我们定义我们的同态加密算法符合同态加法和同态乘法操作;我们定义因此我们可以得到因此我们可以得到因此我们可以得到

技术总结


本发明提出了一种基于同态加密的联邦学习肺结节检测方法,实现步骤为:采用形态学等方法将肺部CT图像分割出肺实质;图像几何操作对肺实质进行数据增强,用于训练和测试;训练集样本平均分发给客户端且符合Non-IID分布;搭建联邦学习框架;构建3D DPN26Faster R-CNN肺结节检测模型;本地客户端参数初始化;本地客户端模型训练更新权重参数;本地客户端权重参数采用同态加密并上传中央服务器;中央服务器聚合加密的权重参数,分发给本地客户端;客户端解密进行模型更新;获得肺结节检测结果。本发明通过UNet网络分割肺实质实现了端到端的操作,采用同态加密保证了半诚实敌手和恶意敌手无法窃取数据信息且不影响模型精度,适用于不同环境的隐私保护场景。于不同环境的隐私保护场景。于不同环境的隐私保护场景。


技术研发人员:

刘立新 范科峰 曾登辉 黄登豪

受保护的技术使用者:

桂林电子科技大学

技术研发日:

2022.09.05

技术公布日:

2022/11/18

本文发布于:2022-11-25 20:06:14,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/2/3208.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:同态   步骤   客户端   模型
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图