CN115811402B - 基于隐私保护联邦学习的医疗数据分析方法及存储介质 - Google Patents

基于隐私保护联邦学习的医疗数据分析方法及存储介质 Download PDF

Info

Publication number
CN115811402B
CN115811402B CN202211417761.8A CN202211417761A CN115811402B CN 115811402 B CN115811402 B CN 115811402B CN 202211417761 A CN202211417761 A CN 202211417761A CN 115811402 B CN115811402 B CN 115811402B
Authority
CN
China
Prior art keywords
client
model
vector
server
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202211417761.8A
Other languages
English (en)
Other versions
CN115811402A (zh
Inventor
聂晨飞
康健
李强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jilin University
Original Assignee
Jilin University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Jilin University filed Critical Jilin University
Priority to CN202211417761.8A priority Critical patent/CN115811402B/zh
Publication of CN115811402A publication Critical patent/CN115811402A/zh
Application granted granted Critical
Publication of CN115811402B publication Critical patent/CN115811402B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Instructional Devices (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于隐私保护联邦学习的医疗数据分析方法及存储介质,属于医疗系统数据分析技术领域,本发明提出了一种针对医疗领域联邦学习中的隐私安全问题和模型投毒攻击问题进行联合解决的方法,在本发明中,零知识证明和数据相似度算法用来保证客户端模型的有效性,同态加密算法用于多个客户端协商生成随机掩码向量,该随机掩码向量用于保护客户端的隐私安全。该方法同时保证了联邦学习系统中的隐私安全性和模型安全性,同时不会引入过多的开销,在医疗领域具有现实意义和良好的应用前景。

Description

基于隐私保护联邦学习的医疗数据分析方法及存储介质
技术领域
本发明涉及医疗系统数据分析技术领域,特别是涉及一种基于隐私保护联邦学习的医疗数据分析方法及存储介质。
背景技术
机器学习技术在医疗领域已取得巨大发展,在医疗诊断,疾病预测以及健康管理等方面展示出巨大潜能。联邦学习作为一种分布式机器学习技术,可以使得不同的医疗机构在一个服务器的协调下共同完成机器学习模型的训练,同时保证各医疗机构的隐私数据不被泄露。在医疗领域的联邦学习训练过程中,医疗机构作为联邦学习系统中的客户端,其隐私数据被保存在本地,不与其他任何客户端/服务器共享,而仅与其他参与方交换梯度或模型参数信息,因此联邦学习为客户端的隐私数据提供了一个基线的保护。然而目前的联邦学习设计依然无法满足对数据隐私安全有着极高要求的医疗领域的联合建模任务,且同时面临着巨大的恶意威胁问题。
在实际应用中,联邦学习容易受到模型投毒攻击和隐私推理攻击的影响。模型投毒攻击是指在联邦学习训练期间,恶意客户端可以通过提交恶意或无效的客户端局部模型破坏模型的收敛过程,导致全局模型的可用性大大降低。隐私推理攻击是指服务器或其他恶意客户端企图从梯度或模型参数中推断出有关于其他参与方的隐私数据信息。上述问题在对数据隐私安全有着极高要求的医疗领域中尤为突出。目前针对联邦学习中的隐私保护问题,已有多种基于差分隐私,同态加密或安全多方计算的方案被提出。基于差分隐私的方案会对模型的可用性带来负面影响而基于同态加密和安全多方计算的方案又会给系统引入巨大的通信和计算开销。针对模型投毒攻击的问题也有多种基于相似度的方案,如Blanchard P,El Mhamdi E M,Guerraoui R,et al.Machine learning withadversaries:Byzantine tolerant gradient descent[J].Advances inNeuralInformation Processing Systems,2017,30,或基于统计学方法的方案,如Guerraoui R,Rouault S.The hidden vulnerability of distributed learning in byzantium[C]//International Conference on Machine Learning.PMLR,2018:3521-3530,被提出,这些方案在恶意客户端占比上升时的防御效果又会急剧下降。
同时,上述的这些方案仅是针对这两个安全问题的单一解决,即对模型投毒攻击的防御方案均是基于明文的,而基于明文的方案同时受到隐私推理攻击的影响。若简单地将这两类问题的解决方案集成到一个系统之中又会引入巨大的性能开销,使得方法的实用性大大降低。因此,现有的针对这两种问题的解决方案又很难集成到一个框架之中,如何解决隐私安全与模型安全的联合问题,成为医疗领域联邦学习技术投入实际应用的关键。
发明内容
为了解决现有的医疗领域联邦学习系统中存在的隐私安全和模型安全问题,本发明的目的是提出一种基于隐私保护联邦学习的医疗数据分析方法,该方法通过使用零知识证明以及同态加密等技术,在防御联邦学习系统中的模型投毒攻击的同时保护了客户端的隐私数据不被泄露,提升了联邦学习系统的鲁棒性和隐私安全性。
为实现上述目的,本发明采用如下技术方案:一种基于隐私保护联邦学习的医疗数据分析方法,所述方法由联邦学习系统执行,所述联邦学习系统包括服务器和本地拥有数据集的医疗机构所在客户端,所述方法包括如下步骤,且以下步骤顺序进行:
步骤1:服务器选定并发布学习任务,服务器收集一个公开且干净的数据集作为根数据集,并初始化全局模型wg和服务器参考模型wS;干净的数据集是指该数据集中的数据样本为真实的且格式良好,根数据集可通过使用公开数据集中的部分数据样本获得或使用客户端各自贡献自身部分数据样本组成;
步骤2:服务器协调所有客户端生成用于隐私保护的随机掩码向量r,客户端计算并向服务器提交随机掩码向量r的校验值;
具体生成步骤为:首先,由每个客户端本地随机生成一个随机数种子,然后,使用同态加密算法加密后并发送给服务器,接着,服务器收集所有客户端的加密种子后执行加法同态运算,并将结果广播给所有客户端;最后,客户端收到后解密结果得到明文随机数种子,并以该随机数种子生成随机掩码向量;
其中,客户端计算并提交随机掩码向量r的校验值,该校验值的计算方法如下:每个客户端维护一个长度为10的向量,记为M,其中Mjmod10=Mjmod10+rj,r为随机掩码向量,j为随机掩码向量中的第j个值;进一步地对向量M中的10个元素执行累积运算,结果即为该随机掩码向量r的校验值;进一步地,所有客户端将本地计算的随机掩码向量r的校验值发送到服务器,服务器取所有随机掩码向量r的校验值的众数作为最终的随机掩码向量r的校验值;
优选地,所述同态加密算法采用Paillier同态加密算法;
步骤3:服务器生成零知识证明电路;零知识证明电路完成对客户端模型的安全性以及掩码计算的正确性的验证。所有的验证约束均需要表示为只包含加法门和乘法门的算数电路,对于电路中的所有浮点数,使用定点数对其近似表示,具体方法为令浮点数扩大k倍后舍去小数部分。对客户端模型的安全性验证主要包含两个约束,即客户端模型与服务器参考模型wS在方向以及数值上相似,该相似性通过余弦相似度以及欧式距离来度量,即余弦相似度验证约束:
Figure BDA0003940679290000031
欧式距离验证约束:
Figure BDA0003940679290000032
对掩码计算的正确性进行验证的两条约束,分别为掩码向量校验值约束:和掩码计算约束;
其中,掩码向量校验值约束:Mjmod10=Mjmod10+rj
Figure BDA0003940679290000033
掩码计算约束:
Figure BDA0003940679290000034
/>
上述约束中,k表示浮点数的定点化表示时的扩大倍数,m表示模型参数的个数,j表示向量中的第j个值,M表示根据随机掩码向量r生成的中间向量,该向量包含10个元素,wi为第i个客户端的客户端模型,其为包含m个参数的单维向量,
Figure BDA0003940679290000035
表示客户端模型wi中的第j个值,wS为服务器参考模型,其为包含m个参数的单维向量,/>
Figure BDA0003940679290000036
表示服务器参考模型wS的第j个值,τc为余弦相似度阈值,τe为欧氏距离阈值,/>
Figure BDA0003940679290000037
为掩码后的第i个客户端的客户端模型,/>
Figure BDA0003940679290000038
表示第t轮的掩码后的第i个客户端的客户端模型;/>
Figure BDA0003940679290000039
表示第t轮的第i个客户端的客户端模型,t表示迭代的第t轮,li表示第i个客户端的掩码向量校验值,Mj表示向量M的第j个值,Mjmod10表示以元素索引j对10取模后的值作为下标所对应的向量M中的元素值,Mjmod10=Mjmod10+rj该公式表示含义为对于随机掩码向量r的第j个元素,首先计算j模10的值,该值将作为向量M的索引;对于向量M中的第j模10个元素的值将被更新为向量M中的第j模10个元素与随机掩码向量r的第j个元素求和,rj表示随机掩码向量的第j个值;
进一步,上述约束都将被表示为包含乘法门和加法门的算数电路形式,服务器通过该算数电路构建零知识证明电路并生成零知识证明的验证秘钥vk和证明秘钥pk,并将证明秘钥pk广播给所有客户端;
步骤4:服务器与客户端进行本地模型训练;
具体训练过程为:所有客户端从服务器处下载全局模型,并揭示全局模型的真实值,客户端利用本地的数据集训练模型,并将训练好的模型掩码后发送给服务器,同时,服务器使用根数据集训练一个参考模型,同时生成用于本轮的证明参数;
其中,全局模型的真实值揭示过程为客户端从下载的全局模型中减去随机掩码向量r,得到真实的全局模型值;
步骤5:所有客户端首先从服务器处下载本轮的证明参数,然后生成客户端模型的可用性证明,并将该证明提交到服务器;该证明的具体生成过程为:所有客户端首先从服务器处下载本轮的证明参数,证明参数包含本轮的服务器参考模型wS、余弦相似度阈值τc、欧氏距离阈值τe、随机掩码向量r的校验值,然后每个客户端以第t轮的客户端模型、掩码后的客户端模型、证明参数作为零知识证明电路的输入,并使用证明秘钥pk产生客户端模型的可用性证明;
步骤6:服务器验证每个证明和客户端模型的合法性,对于合法的客户端模型,其满足零知识证明电路的四条约束,因此验证结果将会输出1,通过验证的客户端模型将允许参与聚合;零知识证明电路的四条约束只要有一条约束验证失败,则其验证结果将会输出0,未通过验证的客户端模型将被丢弃;对所有通过验证的客户端模型执行
Figure BDA0003940679290000041
其中,n是通过验证的客户端模型的数量,wg为全局模型,/>
Figure BDA0003940679290000042
为第t+1轮掩码后的全局模型,/>
Figure BDA0003940679290000043
为第i个客户端第t轮的客户端模型;
步骤7:客户端和服务器重复步骤4至步骤6,直至达到固定的迭代轮数或全局模型收敛。
一种计算机可读存储介质,所述计算机可读存储介质存储计算机指令,所述计算机指令被执行时使所述计算机执行上述的基于隐私保护联邦学习的医疗数据分析方法的步骤。
通过上述设计方案,本发明可以带来如下有益效果:本发明提出了一种针对医疗领域的联邦学习中的隐私安全问题和模型投毒攻击问题进行联合解决的方法,在本发明中,零知识证明和数据相似度算法用来保证客户端模型的有效性,同态加密算法用于多个客户端协商生成随机掩码向量,该随机掩码向量用于保护客户端的隐私安全。该方法同时保证了联邦学习系统中的隐私安全性和模型安全性,同时不会引入过多的开销,对数据隐私和模型安全有极高要求的医疗领域具有现实意义和良好的应用前景。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明示意性实施例及其说明用于理解本发明,并不构成本发明的不当限定,在附图中:
图1为基于隐私保护联邦学习的医疗数据分析方法的系统结构图;
图2为基于隐私保护联邦学习的医疗数据分析方法的功能模块结构图;
图3为基于隐私保护联邦学习的医疗数据分析方法流程图;
图4为本发明的实施例对添加噪声攻击防御的结果对比图;
图5为本发明的实施例对符号翻转攻击防御的结果对比图。
具体实施方式
如图1、图2和图3所示,本发明综合使用零知识证明,数据相似度算法和同态加密实现基于隐私保护联邦学习的医疗数据分析方法。基于联邦学习的基础架构,多个客户端在一个服务器的协调下共同完成机器学习模型的训练。其中服务器可能被动推断有关客户端的隐私数据,客户端中可能会存在恶意的客户端,即企图提交无效的或伪造的客户端局部模型以破坏训练的收敛过程并降低全局模型的精度。在本发明中,零知识证明和数据相似度算法用来保证客户端模型的有效性,同态加密算法用于多个客户端协商生成随机掩码向量r,该随机掩码向量r用于保护客户端的隐私安全。
如图2所示,本发明中主要涉及两个功能模块,即隐私保护模块和可靠性证明模块。其中隐私保护模块使用同态加密技术和随机掩码向量r实现。本发明中使用的同态加密算法为Paillier同态加密算法,Paillier同态加密算法是一种加法同态加密方案,可支持在密文上进行加法运算。对于Paillier同态加密算法,本发明中描述为两个函数:Enc函数,即加密函数;Dec函数,即解密函数。Paillier同态加密算法保证了协商后的随机数种子依然对服务器保密,因此服务器无法得知客户端的随机掩码向量r,从而保证了客户端的隐私安全。可靠性证明模块使用数据相似度算法和零知识证明技术实现,数据相似度算法可衡量客户端的局部模型与服务器参考模型wS的相似性,进而确定客户端局部模型的可靠性;零知识证明技术可以保证客户端在不泄露自身隐私数据的前提下使服务器相信客户端局部模型与服务器参考模型wS的相似性。在本发明中,零知识证明算法采用Groth16方案,Groth16是一种简洁非交互式的零知识证明方案。为便于下述描述,本发明将Groth16方案归纳为三个函数,分别为:Setup函数,该函数用于生成零知识证明电路以及证明秘钥pk和验证秘钥vk;Prove函数,该函数由证明者使用证明秘钥pk以及证明参数,生成零知识证明π并输出;Verify函数,该函数由验证者使用验证秘钥vk,零知识证明π以及验证参数对证明进行验证,若验证通过输出1,否则输出0。由于零知识证明的非交互特点,本发明的计算开销不受客户端数量的影响,即能够在客户端数量增加的情况下仍然保持较低的计算开销。
如图3所示,基于隐私保护联邦学习的医疗数据分析方法,该方法的具体流程为:①选定根数据集及初始化模型;②生成随机掩码向量r;③生成零知识证明电路;④客户端与服务器本地训练;⑤客户端生成本地模型可靠性证明;⑥服务器验证证明并聚合安全模型;⑦判断是否达到迭代轮数或模型已收敛,若是,则结束,否则,返回客户端与服务器本地训练过程继续训练,直至达到迭代轮数或模型已收敛。
为使得本发明的目的、特征、优点能够更加的明显和易懂,下面结合多个医疗机构共同使用联邦学习完成一个心脏病预测系统的训练任务作为实施例,对本发明中的技术方案进行清楚完整地描述。本领域技术人员应当理解,下面所具体描述的内容是说明性的而非限制性的,不应以此限制本发明的保护范围。除非另作定义,此处使用的技术术语或者科学术语应当为本发明所属领域内具有一般技能的人士所理解的通常意义。为了避免混淆本发明的实质,公知的方法、过程、流程并没有详细叙述。
在多个医疗机构共同使用联邦学习完成一个心脏病预测系统的训练任务中,其中共有10个医疗机构作为客户端参与训练,每个参与的医疗机构拥有200个数据样本,每个数据样本包含14个属性,其中包含13个数据属性(年龄,性别,胸痛类型,静息血压,血浆胆固醇水平,空腹血糖,静息心电图,最大心率,运动诱发性心绞痛,ST抑制,最高运动ST段的斜率,大血管数量,地中海贫血症)和1个预测属性(是否患有心脏病)。每个参与医疗机构的数据对于其他参与方来说都属于隐私数据。在训练过程中,有3个医疗机构出于对隐私考虑或被攻击者控制等原因可能会向服务器提交无效甚至恶意的局部模型,本发明即可解决这样一个在隐私保护和防御恶意客户端双需求下的联合建模任务问题。
在任务设置中,每个参与医疗机构的本地训练迭代轮数为5轮,全局迭代轮数为200,恶意医疗机构可能发动两种模型投毒攻击:1)添加噪声攻击,即恶意客户端向真实的局部模型中添加随机噪声并提交;2)符号翻转攻击,即恶意客户端翻转真实局部模型的符号并提交。
该任务的参数设置如下表1所示:
表1参数名与参数值
Figure BDA0003940679290000071
/>
Figure BDA0003940679290000081
本发明中模型构建与联邦学习使用Python以及Pytorch实现,同态加密使用python-paillier库实现,零知识证明电路使用C++代码库libsnark实现。使用本发明解决该场景问题的过程如下:
步骤1:选定根数据集及初始化模型。
服务器收集一个公开且干净的心脏病诊断数据集作为根数据集,该数据集由服务器从公开的心脏病诊断数据集中随机抽样产生,该数据集包含100条数据样本,样本属性与客户端数据样本保持相同,同时服务器使用一个全连接神经网络初始化全局模型wg和服务器参考模型ws,其中ws=wg。该模型的结构如表2所示:
表2全连接网络结构
网络层 输入特征量 输出特征量 参数个数
全连接层 13 100 1400
ReLu激活函数层 100 100 0
全连接层 100 50 5050
ReLu激活函数层 50 50 0
全连接层 50 2 102
步骤2:生成随机掩码向量r。
服务器S协调所有客户端生成用于隐私保护的随机掩码向量r,首先,10个客户端C1…C10各自本地随机生成一个随机数种子,即S1…S10,然后使用Paillier同态加密算法加密得到[Si]=Enc(Si)并发送给服务器,[Si]表示第i个客户端加密后的随机数种子。
进一步,服务器收集所有客户端的[Si]后执行同态加法求和运算,即对所有[Si]求和得到
Figure BDA0003940679290000082
并将[S]广播给所有客户端。
进一步,客户端收到后解密[S]得到S=Dec([S]),并以S为随机数种子生成随机掩码向量r,随机掩码向量r的维度与全连接神经网络模型参数量一致,模型的参数量即为神经网络中所有神经元的权重以及偏置的数量总和,均为24060。
进一步,客户端计算随机掩码向量r的校验值
Figure BDA0003940679290000091
其中Mjmod10=Mjmod10+rj,即对随机掩码向量r的第j个值计算j除以10的余数,余数即表示向量M对应下标的元素,这两个元素相加后更新M向量的对应元素,计算完成后将li发送到服务器。
进一步,服务器收集所有客户端发送的li,并计算所有li的众数作为最终的l。
步骤3:生成零知识证明电路。
服务器生成用于对客户端模型进行安全性验证和计算正确性验证的零知识证明电路,该电路由四部分约束构成,首先需要对电路中所有出现的浮点数进行定点化表示,即令浮点数扩大216倍后舍去小数部分,例如对于浮点数0.356739784154定点化表示以后即为23379(计算过程为0.356739784154*216=23379.298494316544)对于余弦相似度验证约束和欧式距离验证约束,设置τc=0.99,τe=0.93,即客户端模型与服务器参考模型wS的余弦相似度不小于0.99同时欧式距离不大于0.93时可以通过此约束验证,此时验证约束可以表示为:
余弦相似度约束:
Figure BDA0003940679290000092
欧式距离验证约束:
Figure BDA0003940679290000093
掩码约束:
Figure BDA0003940679290000094
掩码向量校验值约束:Mjmod10=Mjmod10+rj
Figure BDA0003940679290000095
进一步,服务器生成零知识证明的验证秘钥vk和证明秘钥pk,即(vk,pk)=Setup(),并将证明秘钥pk广播给所有客户端。
步骤4:客户端与服务器本地训练。
所有客户端从服务器处下载第t轮的掩码后的全局模型
Figure BDA0003940679290000101
并揭示全局模型的真实值(除第一轮外),揭示过程为/>
Figure BDA0003940679290000102
Figure BDA0003940679290000103
表示第t轮的全局模型。
进一步,客户端利用自身的数据集进行5轮本地模型训练,并对训练好的模型
Figure BDA0003940679290000104
进行掩码,将掩码后的模型/>
Figure BDA0003940679290000105
发送给服务器,掩码过程为:/>
Figure BDA0003940679290000106
同时,服务器使用根数据集经过5轮训练后得到一个参考模型
Figure BDA0003940679290000107
同时生成用于本轮的证明参数/>
Figure BDA0003940679290000108
步骤5:客户端生成本地模型可靠性证明。
所有客户端首先从服务器处下载本轮的证明参数σt,然后以
Figure BDA0003940679290000109
生成客户端模型的可用性证明/>
Figure BDA00039406792900001010
即/>
Figure BDA00039406792900001011
并将该证明提交到服务器。
步骤6:服务器验证证明并聚合模型。
服务器验证每个证明
Figure BDA00039406792900001012
和客户端模型/>
Figure BDA00039406792900001013
的合法性,对于合法的客户端模型,其满足零知识证明电路的四条约束,因此验证结果将会输出1,即
Figure BDA00039406792900001014
对于恶意的客户端模型,只要有一条约束验证失败,其验证结果将会输出0,即/>
Figure BDA00039406792900001015
未通过验证的客户端模型将被丢弃。对所有验证结果输出为1的客户端模型,执行/>
Figure BDA00039406792900001016
其中,n是通过验证的客户端模型的数量,wg为全局模型,/>
Figure BDA0003940679290000111
为第t+1轮掩码后的全局模型,/>
Figure BDA0003940679290000112
为第i个客户端第t轮的客户端模型;
步骤7:客户端和服务器重复步骤4至步骤6,直至迭代轮数t达到200。
表2和表3展示了在使用本发明对心脏病数据进行分析并进行预测诊断时的预测准确率与不使用本发明时的预测准确率训练效果数据对比。对于添加噪声攻击,该攻击可令联邦学习训练的模型的准确率从97.21%下降到74.42%,在应用本发明后,模型的准确率可以提升到97.17%,几乎达到和无攻击时一样的水平。对于符号翻转攻击也有同样的效果。
表3添加噪声攻击结果对比
联邦学习方法 有无攻击 模型准确率
默认方法 无攻击 97.21%
默认方法 有攻击 74.42%
本发明方法 有攻击 97.17%
表4符号翻转攻击结果对比
联邦学习方法 有无攻击 模型准确率
默认方法 无攻击 97.19%
默认方法 有攻击 11.35%
本发明方法 有攻击 97.2%
图4和图5显示了模型的准确率随迭代的轮数变化的图像,对于添加噪声攻击和符号翻转攻击,其均会导致模型的准确率有不同程度的下降。在应用本发明提出的方法后,可以随迭代的轮数到达和无攻击时相同的模型准确率。由此可见,本发明提出的方法可以将联邦学习中的模型投毒攻击问题很好的解决,并且在该过程中可以保护用户的隐私数据不被泄露,在实际应用中也展示出很好的效果,具有良好的应用前景。

Claims (5)

1.一种基于隐私保护联邦学习的医疗数据分析方法,所述方法由联邦学习系统执行,所述联邦学习系统包括服务器和本地拥有数据集的医疗机构所在客户端,其特征在于,所述方法包括如下步骤,且以下步骤顺序进行:
步骤1:服务器选定并发布学习任务,服务器获取根数据集,并初始化全局模型wg和服务器参考模型wS
步骤2:服务器协调所有客户端生成用于隐私保护的随机掩码向量r,客户端计算并向服务器提交随机掩码向量r的校验值;
步骤3:服务器生成零知识证明电路,零知识证明电路用于对客户端模型的安全性以及掩码计算的正确性进行验证,同时服务器生成零知识证明的验证秘钥vk和证明秘钥pk,并将证明秘钥pk广播给所有客户端;所述零知识证明电路由四条约束构成,其中两条约束用于验证客户端模型的安全性,另外两条约束用于验证掩码计算的正确性;
对客户端模型的安全性进行验证的两条约束,分别为余弦相似度验证约束和欧式距离验证约束;
其中,余弦相似度验证约束:
Figure QLYQS_1
欧式距离验证约束:
Figure QLYQS_2
对掩码计算的正确性进行验证的两条约束,分别为掩码向量校验值约束和掩码计算约束;
其中,掩码向量校验值约束:Mjmod10=Mjmod10+rj
Figure QLYQS_3
掩码计算约束:
Figure QLYQS_4
上述约束中,k表示浮点数的定点化表示时的扩大倍数,m表示模型参数的个数,j表示向量中的第j个值,M表示根据随机掩码向量r生成的中间向量,该向量包含10个元素,wi为第i个客户端的客户端模型,其为包含m个参数的单维向量,
Figure QLYQS_5
表示客户端模型wi中的第j个值,wS为服务器参考模型,其为包含m个参数的单维向量,/>
Figure QLYQS_6
表示服务器参考模型wS的第j个值,τc为余弦相似度阈值,τe为欧氏距离阈值,/>
Figure QLYQS_7
为掩码后的第i个客户端的客户端模型,/>
Figure QLYQS_8
表示第t轮的掩码后的第i个客户端的客户端模型;/>
Figure QLYQS_9
表示第t轮的第i个客户端的客户端模型,t表示迭代的第t轮,li表示第i个客户端的掩码向量校验值,Mj表示向量M的第j个值,Mjmod10表示以元素索引j对10取模后的值作为下标所对应的向量M中的元素值,Mjmod10=Mjmod10+rj该公式表示含义为对于随机掩码向量r的第j个元素,首先计算j模10的值,该值将作为向量M的索引;对于向量M中的第j模10个元素的值将被更新为向量M中的第j模10个元素与随机掩码向量r的第j个元素求和,rj表示随机掩码向量的第j个值;
步骤4:服务器与客户端进行本地模型训练;
具体训练过程为:所有客户端从服务器处下载全局模型,并揭示全局模型的真实值,客户端利用本地的数据集训练模型,并将训练好的模型掩码后发送给服务器,同时,服务器使用根数据集训练一个参考模型,同时生成用于本轮的证明参数;
其中,全局模型的真实值揭示过程为客户端从下载的全局模型中减去随机掩码向量r,得到真实的全局模型值;
步骤5:所有客户端首先从服务器处下载本轮的证明参数,然后生成客户端模型的可用性证明,并将该证明提交到服务器;该证明的具体生成过程为:所有客户端首先从服务器处下载本轮的证明参数,证明参数包含本轮的服务器参考模型wS、余弦相似度阈值τc、欧氏距离阈值τe、随机掩码向量r的校验值,然后每个客户端以第t轮的客户端模型、掩码后的客户端模型、证明参数作为零知识证明电路的输入,并使用证明秘钥pk产生客户端模型的可用性证明;
步骤6:服务器验证每个证明和客户端模型的合法性,对于合法的客户端模型,其满足零知识证明电路的四条约束,验证结果将会输出1,通过验证的客户端模型将允许参与聚合;零知识证明电路的四条约束只要有一条约束验证失败,则其验证结果将会输出0,未通过验证的客户端模型将被丢弃;对所有通过验证的客户端模型执行
Figure QLYQS_10
其中,n是通过验证的客户端模型的数量,wg为全局模型,/>
Figure QLYQS_11
为第t+1轮掩码后的全局模型,
Figure QLYQS_12
为第i个客户端第t轮的客户端模型;
步骤7:客户端和服务器重复步骤4至步骤6,直至达到固定的迭代轮数或全局模型收敛。
2.根据权利要求1所述的基于隐私保护联邦学习的医疗数据分析方法,其特征在于:步骤2中,生成用于隐私保护的随机掩码向量r的过程如下:
首先,由每个客户端本地随机生成一个随机数种子,然后,使用同态加密算法加密后发送给服务器,接着,服务器收集所有客户端的加密种子后执行加法同态运算,并将结果广播给所有客户端;最后,客户端收到后解密结果得到明文随机数种子,并以该随机数种子生成随机掩码向量r。
3.根据权利要求2所述的基于隐私保护联邦学习的医疗数据分析方法,其特征在于:所述同态加密算法采用Paillier同态加密算法。
4.根据权利要求1所述的基于隐私保护联邦学习的医疗数据分析方法,其特征在于:步骤2中,随机掩码向量r的校验值计算方法如下:
1)每个客户端维护一个长度为10的向量,记为M,其中Mjmod10=Mjmod10+rj,即对于随机掩码向量r的第j个元素,首先计算j模10的值,该值将作为向量M的索引;对于向量M中的第j模10个元素的值将被更新为向量M中的第j模10个元素与随机掩码向量r的第j个元素求和值;r为随机掩码向量,j表示随机掩码向量r中的第j个元素;
2)对向量M中的10个元素执行累积运算,结果即为客户端生成的对该随机掩码向量r的校验值;
3)所有客户端将本地计算的随机掩码向量r的校验值发送到服务器,服务器取所有随机掩码向量r的校验值的众数作为最终的随机掩码向量r的校验值。
5.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储计算机指令,所述计算机指令被执行时使所述计算机执行权利要求1-4任一项所述的基于隐私保护联邦学习的医疗数据分析方法的步骤。
CN202211417761.8A 2022-11-14 2022-11-14 基于隐私保护联邦学习的医疗数据分析方法及存储介质 Active CN115811402B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211417761.8A CN115811402B (zh) 2022-11-14 2022-11-14 基于隐私保护联邦学习的医疗数据分析方法及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211417761.8A CN115811402B (zh) 2022-11-14 2022-11-14 基于隐私保护联邦学习的医疗数据分析方法及存储介质

Publications (2)

Publication Number Publication Date
CN115811402A CN115811402A (zh) 2023-03-17
CN115811402B true CN115811402B (zh) 2023-05-30

Family

ID=85483083

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211417761.8A Active CN115811402B (zh) 2022-11-14 2022-11-14 基于隐私保护联邦学习的医疗数据分析方法及存储介质

Country Status (1)

Country Link
CN (1) CN115811402B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116092683B (zh) * 2023-04-12 2023-06-23 深圳达实旗云健康科技有限公司 一种原始数据不出域的跨医疗机构疾病预测方法
CN116305289B (zh) * 2023-05-15 2023-08-15 湖南工商大学 医疗隐私数据处理方法、装置、计算机设备及存储介质
CN117425154B (zh) * 2023-10-19 2024-06-14 南京邮电大学 位置隐私保护的雷达网络连通性优化与目标跟踪方法
CN117236420B (zh) * 2023-11-14 2024-03-26 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) 基于数据子集的纵向联邦学习异常数据调试方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113434873A (zh) * 2021-06-01 2021-09-24 内蒙古大学 一种基于同态加密的联邦学习隐私保护方法
WO2021189974A1 (zh) * 2020-10-21 2021-09-30 平安科技(深圳)有限公司 模型训练方法、文本分类方法、装置、计算机设备和介质
CN114143080A (zh) * 2021-11-30 2022-03-04 兰州理工大学 基于零知识证明的区块链数据隐私保护和共享方法
CN114841363A (zh) * 2022-04-11 2022-08-02 北京理工大学 一种基于零知识证明的隐私保护与可验证的联邦学习方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021189974A1 (zh) * 2020-10-21 2021-09-30 平安科技(深圳)有限公司 模型训练方法、文本分类方法、装置、计算机设备和介质
CN113434873A (zh) * 2021-06-01 2021-09-24 内蒙古大学 一种基于同态加密的联邦学习隐私保护方法
CN114143080A (zh) * 2021-11-30 2022-03-04 兰州理工大学 基于零知识证明的区块链数据隐私保护和共享方法
CN114841363A (zh) * 2022-04-11 2022-08-02 北京理工大学 一种基于零知识证明的隐私保护与可验证的联邦学习方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《FedFog:面向非独立同分布数据的联邦学习架构》;邱天晨等;《计算机工程》;全文 *

Also Published As

Publication number Publication date
CN115811402A (zh) 2023-03-17

Similar Documents

Publication Publication Date Title
CN115811402B (zh) 基于隐私保护联邦学习的医疗数据分析方法及存储介质
Lyu et al. Towards fair and privacy-preserving federated deep models
Liu et al. Privacy-enhanced federated learning against poisoning adversaries
Hahn et al. Versa: Verifiable secure aggregation for cross-device federated learning
CN110211683B (zh) 一种基于区块链的支持向量机医疗数据隐私训练系统
CN113836556B (zh) 面向联邦学习的去中心化函数加密隐私保护方法及系统
Diamond Many-out-of-many proofs and applications to anonymous zether
Fang et al. A privacy-preserving and verifiable federated learning method based on blockchain
CN115563650A (zh) 基于联邦学习实现医疗数据的隐私保护系统
Dong et al. Fusion: Efficient and secure inference resilient to malicious servers
Wang et al. Privacy-preserving indoor localization based on inner product encryption in a cloud environment
Tian et al. DIVRS: Data integrity verification based on ring signature in cloud storage
Wang et al. RFLPV: A robust federated learning scheme with privacy preservation and verifiable aggregation in IoMT
CN117675270A (zh) 面向纵向联邦学习的多模态数据加密传输方法及系统
Zhou et al. VDFChain: Secure and verifiable decentralized federated learning via committee-based blockchain
Bangalore et al. Flag: A framework for lightweight robust secure aggregation
Keshavarzkalhori et al. Federify: a verifiable federated learning scheme based on zksnarks and blockchain
CN116244731A (zh) 一种可验证的隐私保护的卷积神经网络系统
CN115310120A (zh) 一种基于双陷门同态加密的鲁棒性联邦学习聚合方法
Wang et al. Privacy-preserving robust federated learning with distributed differential privacy
Wang et al. FRNet: An MCS framework for efficient and secure data sensing and privacy protection in IoVs
CN112003692A (zh) 一种基于区块链的多用户云数据完整性保护方法
Ke et al. SPEFL: efficient security and privacy enhanced federated learning against poisoning attacks
CN117077192B (zh) 一种隐私保护的联邦学习中搭便车攻击防御方法及装置
Shen et al. A Deep Model Intellectual Property Protection Method Supporting Public Verification

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant