CN114239862A - 一种保护用户数据隐私的抗拜占庭攻击的联邦学习方法 - Google Patents

一种保护用户数据隐私的抗拜占庭攻击的联邦学习方法 Download PDF

Info

Publication number
CN114239862A
CN114239862A CN202111589802.7A CN202111589802A CN114239862A CN 114239862 A CN114239862 A CN 114239862A CN 202111589802 A CN202111589802 A CN 202111589802A CN 114239862 A CN114239862 A CN 114239862A
Authority
CN
China
Prior art keywords
server
gradient
service providing
providing server
data
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.)
Pending
Application number
CN202111589802.7A
Other languages
English (en)
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.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
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 University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN202111589802.7A priority Critical patent/CN114239862A/zh
Publication of CN114239862A publication Critical patent/CN114239862A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6263Protecting personal data, e.g. for financial or medical purposes during internet communication, e.g. revealing personal data from cookies

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提供一种保护用户数据隐私的抗拜占庭攻击的联邦学习方法,将服务器端分为两部分,计算服务器和服务提供服务器,由这两个服务器共同完成安全计算,各自得到有效性检测结果、反映服务器梯度方向与本地梯度方向相似性的余弦相似度结果,此过程中两中服务器无法通过各自的数据推算参与方的数据集内容,保护了用户数据隐私。同时,服务器端得到的通过有效性检测结果以及余弦相似度结果得到的聚合可信分数能有效完成接收数据筛选,剔除无效数据后更新全局模型。发明在进行联邦学习时技能保护用户数据隐私有能够抵御强拜占庭攻击,具有较高的扩展性和性能表现,能够满足不同规模的数据场景。

Description

一种保护用户数据隐私的抗拜占庭攻击的联邦学习方法
技术领域
本发明涉及信息安全与联邦学习技术,特别涉及能综合防止隐私推断与拜占庭攻击的一种联邦学习技术。
技术背景
随着深度学习技术的发展,医疗诊断行业越来越多地使用该技术辅助医疗人员和研究机构对病例做出诊断和诊疗结论,例如使用深度学习识别X光片中的病灶部位等。对于一个深度学习模型来说,其模型的准确性极大程度取决于训练使用的数据,训练数据的数量和质量越多,最终得到的模型准确性越高。然而,医疗数据通常是敏感隐私数据,医院不能直接将明文数据直接发送给模型持有者(一般为第三方技术企业),深度学习模型参数属于企业的商业机密,也不能直接发送给企业之外的医疗机构;同时,一家医院的优质数据质量有限,无法保证训练效果,因此通常会寻求由多家医疗机构共同提供数据进行模型的训练。
联邦学习在上述场景下表现出了出色的性能,该技术能够使多家医疗机构在仅知道模型结构的情况下在本地使用持有的数据进行训练,再由中心服务器聚合梯度,得到训练结果。但是这种分布式学习系统在实际部署中仍然面临两种安全方面的问题:(1)隐私推断,(2)拜占庭攻击。第一种安全威胁的实施者会在忠诚地执行任务时尝试通过节点上传的数据(比如本地计算出的梯度等)来推断本地节点使用的原数据(隐私敏感数据),这种威胁会导致隐私从安全性较低的联邦学习方法中泄露,在利用深度学习进行医疗诊断的场景下最为常见;第二种威胁的实施者通常是参与运算的节点,其可能会向上层服务器发送错误格式甚至是错误内容的数据来破坏模型的完整性和正确性,导致模型无法正确收敛或准确性下降,进而引发诸如分类错误等后果。
近年来,为了解决联邦学习可能遇到的上述两种威胁,有的工作提出在联邦学习中使用安全计算的规则和防范拜占庭攻击的聚合规则来提升系统的安全性。具体来说,为了解决隐私泄露问题,数个工作使用了同态加密技术来加密计算参与方上传的梯度。由于同态加密技术的特性,服务提供者可以跳过解密阶段,直接对密文进行处理;也有工作使用了安全多方计算来保证隐私不被泄露。为了抵御拜占庭攻击,目前主流的解决方案是在全局神经网络模型更新权重之前对联邦学习参与节点上传的梯度数据进行数据分析(例如将数个梯度向量的方向和大小进行对比,筛选出向量方向相反的梯度),进而移除异常节点,只采信正常节点的数据进行模型更新。
但是这些工作大都存在两方面的局限性:(1)大部分工作有严重的性能瓶颈,导致实用性不强,无法部署在真实场景中;(2)这些工作预设的威胁模型不够全面,导致可以防范的攻击类型有限。此外,现有的工作都将隐私问题和拜占庭攻击看作两个独立的问题进行分析,没有考虑二者之间的内在关联性。实际上,已经有研究指出了攻击者可以利用精心设计的拜占庭攻击来窃取参与方的隐私数据,甚至破坏整个联邦学习系统,而隐私泄露问题也会为攻击者提供了有利的信息,从而发动更具普适性的拜占庭攻击。基于上述考虑,一种简单的做法是在联邦学习中同时使用现有的隐私保护和抵抗拜占庭攻击的技术,然而过程中使用到的大量密码学操作(例如在判断本地上传的梯度是否有效时使用的大规模矩阵乘法和复杂的非线性函数)将会严重影响性能。
发明内容
本发明所要解决的技术问题是,提供一种实用性更强的,能够同时达到隐私保护和抵抗拜占庭攻击的联邦学习方法。
本发明为解决上述技术问题所采用的技术方案是,一种保护用户数据隐私的抗拜占庭攻击的联邦学习方法,包括以下步骤:
1)服务器端初始化全局模型的网络参数,所述服务器端由计算服务器和服务提供服务器组成;计算服务器与n个联邦学习参与方协商生成随机数种子,使得计算服务器与各参与方能同步生成相同随机数;
2)服务器端广播全局模型;
3)n个联邦学习参与方接收到全局模型以后开始使用本地数据集进行训练,经过一轮训练后得到本地梯度gi,联邦学习参与方通过加法秘密共享的方式生成随机数作为本地梯度<gi>1,按照gi=<gi>0+〈gi1计算出本地梯度〈gi0,再将〈gi0经加密后传输至服务提供服务器;其中,i表示第i个联邦学习参与方,i=1,…,n,〈·〉0表示由服务提供服务器获得的部分数据,<·>1表示由计算服务器获得的部分数据;
4)计算服务器通过与参与方同步生成随机数的方式得到本地梯度<gi>1,服务提供服务器接收并解密得到本地梯度后<gi>0;计算服务器和服务提供服务器各自对第i个联邦学习参与方本地梯度进行有效性检查,通过有效性检测,则服务提供服务器设置布尔标识符
Figure BDA0003429456920000021
为1,计算服务器设置布尔标识符
Figure BDA0003429456920000022
为1,否则服务提供服务器设置布尔标识符
Figure BDA0003429456920000023
为0,计算服务器设置布尔标识符
Figure BDA0003429456920000024
为0;B表示布尔数;
5)服务器端计算服务器梯度gs,之后服务提供服务器和计算服务器联合进行服务器梯度gs方向与本地梯度〈gi0与〈gi1方向的余弦相似度〈cosi>0和〈cosi1
6)服务器端的通过
Figure BDA0003429456920000031
分别计算得到可信分数的两个部分〈TSi>0和<TSi>1
7)服务提供服务器和计算服务器
Figure BDA0003429456920000032
通过各自计算得到聚合梯度的两个部分<g>0和<g>1
8)计算服务器计算聚合可信分数
Figure BDA0003429456920000033
将<TSi>1和<g>1发送至服务提供服务器;
9)服务提供服务器计算全局权重
Figure BDA0003429456920000034
其中聚合可信分数
Figure BDA0003429456920000035
Figure BDA0003429456920000036
聚合梯度g通过聚合<g>0与<g>1得到,聚合可信分数TS通过聚合<TS>0与〈TS〉1得到;
10)利用本轮计算得到的全局权重gglobal更新全局模型,并广播更新后的全局模型直至完成全局模型的训练。
在本发明中,我们将联邦学习方法可能遇到的威胁归纳为两种威胁模型。第一种是恶意的参与节点,此类节点和普通节点一样拥有本地的训练数据集,梯度(非法或内容错误),训练算法,损失函数以及本地学习速率。通常来说,恶意节点会通过活跃地向服务器发送恶意梯度数据来破坏全局模型。第二种是诚实但好奇的服务器(本发明中可能是SP或者CS)。此类服务器会忠实地执行协议,但是会被动地通过上传数据来推测目标参与方的数据集内容。这两种威胁模型和实际部署中会遇到的威胁情况一致。
本发明利用多方安全计算技术提出了一种适用于用于医疗诊断场景等对需要保护隐私数据的场景下的联邦学习方法,该方法达到了保护敏感医疗资料和机器学习模型隐私性的效果,同时通过将服务器端分为两部分,计算服务器和服务提供服务器,由这两个服务器共同完成安全计算,各自得到有效性检测结果、反映服务器梯度方向与本地梯度方向相似性的余弦相似度结果,此过程中两中服务器无法通过各自的数据推算参与方的数据集内容,保护了用户数据隐私。同时,服务器端得到的通过有效性检测结果以及余弦相似度结果得到的聚合可信分数能有效完成接收数据筛选,剔除无效数据后更新全局模型,达到抵御强拜占庭攻击的效果。
进一步的,了防止某些攻击者通过数乘等操作大幅扩大本地梯度的幅度,均会对全局模型输出的本地梯度与服务器梯度进行归一化处理,并将归一化之后的梯度向量作为对应的本地梯度或服务器梯度使用。
进一步的,本发明还优化了适合加密情况下的进行上述有效性检测与余弦相似度计算的安全计算过程,从而提升了方法中的密文操作性能。
本发明的有益效果是,在进行联邦学习时技能保护用户数据隐私有能够抵御强拜占庭攻击,具有较高的扩展性和性能表现,能够满足不同规模的数据场景。
附图说明
图1为本发明示意图。
具体实施方式
为了达到本发明技术目标,本发明设计的方法结构由以下几个部分构成:
1)参与方:假设所有参与节点一共n个,节点记作P1,P2,...,Pn每个节点Pi都拥有一份本地的数据集Di。在医疗场景下,参与方通常是持有敏感医疗数据的医疗机构。
2)服务提供服务器:该服务器记作SP,该服务器拥有一份可靠数据集Ds,SP可以通过Ds来判断参与节点Pi上传的梯度gi是否可靠。同时,SP负责协调整个训练过程,并和计算服务器CS共同完成两方安全计算的过程。在医疗场景下,服务提供服务器通常由机器学习模型的拥有者提供。
3)计算服务器:该服务器记作CS,负责与SP共同完成两方安全计算的过程。在医疗场景下,计算服务器通常由机器学习模型的拥有者提供。
针对在大规模医疗数据场景下能够同时达到隐私保护和抵抗拜占庭攻击的联邦学习方法,同时针对联邦学习过程中的加密操作,设计出高性能的加密协议,从而提升系统的工作效率,逾越性能瓶颈,使得整个模型的实用性更强。
在本发明的联邦学习过程主要包括以下几个步骤:
1)SP初始化全局模型,并广播至P1,P2,...,Pn
2)P1,P2,...,Pn分别在本地使用本地训练集Di进行对模型进行训练,并将模型的梯度,加密上传至SP;
3)SP对收到的密文进行筛选,剔除无效的数据,和CS完成两方安全计算,更新全局模型。
实施中涉及到的密码协议是基于以下基础算法实现的:
1)线性同态加密:可将多条明文加密成一条密文,对经过同态加密的数据进行处理得到一个输出,将这一输出进行解密,其结果与用同一方法处理未加密的原始数据得到的输出结果一致。具体来说,该方案包括以下四部分。
a)密钥对生成:KeyGen(1k)→(pk,sk),在一个密钥参数k的输入下,KeyGen作为随机算法生成一个公钥pk,以及对应的私钥sk;
b)加密算法:Enc(pk,m)→c,该加密算法使用公钥pk将压缩明文m加密为密文c;
c)解密算法:Dec(sk,c)→m,该解密算法使用私钥sk将密文c恢复成明文m;
d)转换函数:Eval(pk,c1,c2,func)→c,该函数在输入是两段密文c1,c2和一个线性函数func的情况下,可以输出经公钥pk加密,明文为func(m1,m2)的密文c,其中m1,m2代表密文c1,c2所对应的明文。
具体地,在实施例中,我们使用了最新的BFV同态加密方案。
2)秘密共享:通常分为加法秘密共享和布尔秘密共享两种方案。对于加法共享来说,为了共享环
Figure BDA0003429456920000051
上的内容x,一方均匀随机地取环
Figure BDA0003429456920000052
上的内容r,并将
Figure BDA0003429456920000053
发送到另一方,我们通常将此方法共享的x记作
Figure BDA0003429456920000054
Figure BDA0003429456920000055
x=〈x〉0+〈x〉1;对于布尔共享来说,若分享的内容为环
Figure BDA0003429456920000056
上的内容x,则两方拥有的内容分别记为
Figure BDA0003429456920000057
Figure BDA0003429456920000058
且满足
Figure BDA0003429456920000059
上述数学操作可以通过使用Beaver三元组来实现。
3)不经意传输:在1-out-of-2的不经意传输协议中,一方作为发送方拥有两条数据x0,x1,另一方作为接收方拥有1比特选择位b。通过不经意传输协议,接收方在不获知x1-b的情况下获得xb,而接收方的选择对发送方是不透明的。进一步地,目前使用更多的是扩展不经意传输协议,可通过少量的不经意传输实现任意量不经意传输。在此基础上,有一个非常重要的变式是相关不经意传输。具体来说,发送者输入一个相关函数f(·),即可通过协议本身随机获得一个x0以及对应的x1=f(x0)。借此发送方与接收方直接的通信带宽消耗将减少一半。
4)伪随机数生成器:将一个平均取样的随机数种子作为输入,生成一条一定长度的伪随机字符串。伪随机数生成器可保证在随机数种子保密的情况下其输出在生成域中无法在多项式时间内被分辨出,可用来减少联邦学习参与方和服务器之间的一半通信消耗。
基于以上技术,本发明中涉及到了以下操作内容:
1)
Figure BDA00034294569200000510
用于两方安全计算中进行乘法运算。为了求z=xy,计算参与的两方分别拥有两个乘数中的部分内容作为输入,即一方拥有〈x〉0和<y>0,另一方拥有<x〉1和<y>1,其中<·>0,1表示各方在两方安全计算过程中各自所拥有的内容,且通常满足x=frecover(<x>0,<x>1),y=frecover(<y>0,<y>1),frecover(·)表示恢复函数,一般为加法函数或者XOR函数。经过
Figure BDA0003429456920000061
后,两方各自拥有输出的<z>0=<x>0<y>0和<z>1=<x>1<y>1。在整个过程中,任意一方都无法获得对方所拥有的原乘数的内容,即无法推断出x或y中的任意一个。
2)DReLU函数与
Figure BDA0003429456920000062
DReLU函数的定义为
Figure BDA0003429456920000063
Figure BDA0003429456920000064
表示两方安全计算中的DReLU函数运算。为了求z=DReLU(x),计算参与的两方分别拥有<x>0和<x>1作为输入,经过该协议,两方各自拥有输出的<z>0=DReLU(<x>0)和<z>1=DReLU(<x>1),且DReLU(x)=frecover(<z>0,<z>1)。在整个过程中,任意一方都无法推断出另一方拥有的那份数据。
3)ReLU函数与
Figure BDA0003429456920000065
ReLU函数的定义为
Figure BDA0003429456920000066
一般来说,ReLU函数可以通过求
ReLU(x)=x·DReLU(x)
所得到。
Figure BDA0003429456920000067
表示两方安全计算中的ReLU函数运算。为了求z=ReLU(x),计算参与的两方分别拥有<x>0和<x>1作为输入,经过该协议,两方各自拥有输出的<z>0=ReLU(<x>0)和<z>1ReLU(<x>1),且ReLU(x)=frecover(<z>0,<z>1)。在整个过程中,任意一方都无法推断出另一方拥有的那份数据。
4)
Figure BDA0003429456920000068
该协议用于两方安全计算中的布尔整数乘法。为了求z=xBy,其中xB是一个布尔数,由0和1组成,即xB∈{0,1},计算参与的两方分别拥有两个乘数中的部分内容作为输入,即一方拥有<xB>0和<y>0,另一方拥有<xB>1和<y>1,经过
Figure BDA0003429456920000069
后,两方各自拥有输出的<z>0=<xB>0<y>0和<z>1=<xB>1<y>1。在整个过程中,任意一方都无法获得对方所拥有的原乘数的内容,即无法推断出xB或y中的任意一个。
实施例设计的密文环境下可抵抗拜占庭攻击的联邦学习方法,具体由以下步骤组成:
1)初始化基于神经网络的全局模型参数,每个参与方通过Diffie-Hellman密钥协商与CS生成随机数种子,保证了CS与参与方随机数生成的同步性。
2)本地参与节点计算得到本地梯度gi,i表示节点序号变量,i=1,…,n。
3)梯度向量归一化:为了防止某些攻击者通过数乘等操作大幅扩大本地梯度的幅度,我们首先得到归一化的梯度向量:
Figure BDA0003429456920000071
其中||·||表示对向量求
Figure BDA0003429456920000079
范数,归一化操作结束之后,重新赋值
Figure BDA0003429456920000072
将本地梯度替换成归一化之后的梯度向量。
4)有效性检查:考虑到恶意的参与方可能会以错误的格式上传本地梯度,尤其在于是否对向量梯度进行归一化操作,所以我们通过判别每个本地向量的
Figure BDA00034294569200000712
范数平方||·||2是否处于一定区间内,由下式计算:
flagi=1{|||gi||2-1|<∈}
其中∈是一个预设的常数阈值。我们目前根据以往得到的向量数据设置了其大小,该常数的上界可由定点数表示的数学分析计算得到。如果flagi的值为1,则认为计算参与方按照协议执行了归一化操作,否则flagi的值将为0;
本发明中设计的有效性检查方案涉及到一次绝对值计算、一次求平方
Figure BDA00034294569200000713
范数以及一次比较操作。
实际进行有效性检查时,SP和CS生成并分享Beaver乘法三元组,SP拥有(<ai>0,<ai>0,<ci>0)和<gi>0,CS拥有(<ai>1,<ai>1,<ci>1)和<gi>1,其中<·>0表示两方安全计算过程中SP所拥有的内容,<·>1表示两方安全计算过程中CS所拥有的内容,<ai>0为SP生成的随机数,<ai>1为CS生成的随机数,由于要符合Beaver乘法三元组的形式,在Beaver乘法三元组中前两个元素的位置均嵌入相同随机数。SP和CS调用乘法协议
Figure BDA0003429456920000073
公开gi+ai进行两方安全计算,计算结束时SP得到<||gi||2>0,CS得到<||gi||2>1。同时,观察到本地梯度gi也将在用在梯度聚合阶段,所以此时生成的Beaver三元组可继续用于后续部分。
随后,SP和CS进行各自进行flagi的计算,具体来说,SP以<||gi||2+∈-1>,PC以<∈+1-||gi||2>为输入,通过
Figure BDA0003429456920000074
协议,二者分别获得
Figure BDA0003429456920000075
Figure BDA0003429456920000076
5)SP将服务器梯度gs进行归一化得到
Figure BDA0003429456920000077
重新赋值
Figure BDA0003429456920000078
后开始矩阵预处理,方向相似性检验:进行服务器梯度gs和本地梯度gi的方向相似性检验,排除梯度方向明显与正常方向相异的提交数据,即求cosi=<gi,gs>。基于性能考虑,本发明中的方向相似性检验采用了CS与SP进行两方安全计算的方案。该步骤具体分为两个阶段:
a)无需参与方就能完成的离线阶段:本地梯度矩阵记为R=(g1,g2,…,gn)T,求余弦相似度涉及到矩阵相乘,即求Rgs=<R>0gs+<R>1gs。由于<R>1可以直接由CS通过伪随机数生成器生成,所以CS可以直接在离线阶段中得到<R>1gs。具体来说,在离线阶段,CS利用步骤1)和参与节点协商生成的随机数种子可生成<R>1=(r1,r2,…,rn)以及一个CS自有的随机向量δ;同时,SP向CS发送经CS公钥加密的服务器梯度,即E(gs),CS通过转换函数向SP发回经SP公钥加密过的内容E(<R>1gs-δ)。离线阶段使得服务器端的部分预处理工作可以在参与节点计算本地梯度时进行,而不必单纯等待参与方向服务器端发送<R>0等数据。
b)需要与参与方进行交互的在线阶段:等到参与节点已经处理完成本地梯度,即将上传时,工作进入在线阶段。在此阶段中,SP将获取到参与方发送的<R>0。具体来说,每个参与方使用已经和CS提前协商好的随机数种子生成<gi>0=gi-ri,将<gi>0上传至SP,SP则可以得到<R>0=(<g1>0,<g2>0,…,<gn>0)。之后,SP即可计算得到<cosi>0=<Rgs>0=<R>1gs-δ+<R>0gs。CS拥有的δ即<cosi>1=<Rgs>1,至此,CS和SP通过两方安全计算,安全地完成了Rgs的计算。
对比传统的联邦学习方法,离线-在线方案的设计使得系统所需的通信带宽减少了一半。余弦相似度即于在线阶段中计算完成,得到cosi=(Rgs)[i-=<Rgs>0+<Rgs>1,[i-表示向量(Rgs)的第i个分量。
6)可信分数计算:对每一上传的梯度向量gi,计算其可信分数TSi。在本方法中,可信分数由下式计算得到:
Figure BDA0003429456920000081
其中,
Figure BDA0003429456920000082
用来表示参与方是否对本地的梯度向量归一化并正常上传,而ReLU(cosi)则用来剔除方向异常的梯度向量。
在实际过程中,我们以DReLU协议为基础来构建新的ReLU协议。具体来说,在获得上一步的结果之后,SP将<cosi>0作为输入,CS将<cosi>1作为输入,二者调用用于两方安全计算的
Figure BDA0003429456920000083
协议,分别获得秘密分享方案下各自拥有的数据,即<ReLU(cosi)>0和<ReLU(cosi)>1。我们使用的
Figure BDA0003429456920000086
将与服务器梯度向量gs方向差异过大的本地梯度gi全部置为零(即ReLU(cosi)为零),从而避免了恶意参与方对整体联邦学习结果的影响。
此外,我们还基于相关不经意传输技术设计了布尔整数乘积协议,以此将通信的性能消耗减少了一半。在获得上一步的结果后,SP和CS调用用于两方安全计算的布尔整数乘法协议
Figure BDA0003429456920000084
以各自拥有的<ReLU(cosi)>和<flagi>为输入,得到
Figure BDA0003429456920000085
Figure BDA0003429456920000091
在我们的两方安全计算方案中,SP和CS将分别获得<TSi>0和<TSi>1
7)权重聚合:此阶段中我们对上传的有效梯度进行梯度聚合。聚合得到的最终梯度定义如下:
Figure BDA0003429456920000092
其中,基于服务器梯度gs所使用的数据集是纯净数据集的设计,与服务器梯度方向更接近的本地梯度向量gi将会获得更高的权重TSi。在最终的聚合中,本地的梯度向量gi均以经过了归一化,所以本发明中最终的梯度幅度在很大程度上将由服务器梯度的幅度||gs||所决定。
在聚合的具体实施过程中,我们设计了用于计算向量数乘的协议来计算TSi·gi。在该协议中,我们复用了有效性计算中生成的三元组里的ai来组成该协议中的三元组(di,ai,fi),并共享了TSi·gi,进行两方安全计算,协议结束时SP将得到<TSi·gi>0,CS将得到<TSi·gi1。相对于传统的方案来说,对于d维的向量,我们的方案对于带宽的要求有了d+1倍的改善,这对于现有的神经网络,比如ResNet来说,是举足轻重的突破。随后,SP和CS各自在其本地计算
Figure BDA0003429456920000094
CS将其计算结果<TS>1和<g>1发送至SP,由SP计算全局权重
Figure BDA0003429456920000093
聚合梯度g通过聚合<g>0与<g>1得到,聚合可信分数TS通过聚合<TS>0与<TS>1得到;
8)为所有参与方更新全局模型的权重,即ω←ω-ηgglobal,η为机器学习的步长;
9)继续重复第2)步到第9)步,直至达成训练目标或满足结束条件。
至此,本发明的具体实施步骤全部完成。

Claims (2)

1.一种保护用户数据隐私的抗拜占庭攻击的联邦学习方法,其特征在于,包括以下步骤:
1)服务器端初始化全局模型的网络参数,所述服务器端由计算服务器和服务提供服务器组成;计算服务器与n个联邦学习参与方协商生成随机数种子,使得计算服务器与各参与方能同步生成相同随机数;
2)服务器端广播全局模型;
3)n个联邦学习参与方接收到全局模型以后开始使用本地数据集进行训练,经过一轮训练后得到本地梯度gi,联邦学习参与方生成随机数作为本地梯度<gi>1,同时,计算服务器通过与参与方使用相同的随机数生成种子同步地生成随机数,得到本地梯度<gi>1;联邦学习参与方按照gi=<gi>0+<gi>1计算出本地梯度<gi>0,再将<gi>0经加密后传输至服务提供服务器;其中,i表示第i个联邦学习参与方,i=1,…,n,<·>0表示由服务提供服务器获得的部分数据,<·>1表示由计算服务器获得的部分数据;
4)服务提供服务器接收并解密得到本地梯度<gi>0,计算服务器和服务提供服务器各自对第i个联邦学习参与方本地梯度进行有效性检查,通过有效性检测,则服务提供服务器设置布尔标识符
Figure FDA0003429456910000011
为1,计算服务器设置布尔标识符
Figure FDA0003429456910000012
为1,否则服务提供服务器设置布尔标识符
Figure FDA0003429456910000013
为0,计算服务器设置布尔标识符
Figure FDA0003429456910000014
为0;B表示布尔数;
5)服务提供服务器通过训练服务器数据集得到服务器梯度gs,之后服务提供服务器和计算服务器联合进行服务器梯度gs方向与本地梯度<gi>0与<gi>1方向的余弦相似度<cosi>0和<cosi>1计算;
6)服务器端的通过
Figure FDA0003429456910000015
分别计算得到可信分数的两个部分<TSi>0和<TSi>1
7)服务提供服务器和计算服务器
Figure FDA0003429456910000016
通过各自计算得到聚合梯度的两个部分<g>0和<g>1
8)计算服务器计算聚合可信分数
Figure FDA0003429456910000017
将<TSi>1和<g>1发送至服务提供服务器;
9)服务提供服务器计算全局权重
Figure FDA0003429456910000018
其中聚合可信分数
Figure FDA0003429456910000019
Figure FDA00034294569100000110
聚合梯度g通过聚合<g>0与<g>1得到,聚合可信分数TS通过聚合<TS>0与<TS>1得到;
10)利用本轮计算得到的全局权重gglobal更新全局模型,并广播更新后的全局模型直至完成全局模型的训练。
2.如权利要求1所述方法,其特征在于,步骤5)中服务提供服务器和计算服务器联合进行服务器梯度gs方向与本地梯度<gi>0与<gi>1方向的余弦相似度<cosi>0和<cosi>1计算具体分为离线步骤和在线步骤;
离线步骤在步骤3)中计算服务器通过与参与方同步生成随机数的方式得到本地梯度<gi>1后即可进行;在线阶段在服务提供服务器接收并解密得到本地梯度后<gi>0之后进行;
离线阶段:计算服务器利用同步生成随机数的方式得到<R>1=(<g1>1,<g2>1,…,<gi>1,…,<gn>1)以及一个随机向量δ;同时,服务提供服务器向计算服务器发送经计算服务器的公钥加密的服务器梯度E(gs);之后,计算服务器通过转换函数向服务提供服务器发回经服务提供服务器的公钥加密过的内容E(<R>1gs-δ);
在线阶段:服务提供服务器获取到参与方发送的<R>0=(<g1>0,<g2>0,…,<gi>0,…,<gn>0),再已知的利用解密得到的内容(<R>1gs-δ)以及服务器梯度gs来计算数据<cosi>0=<R>1gs-δ+<R>0gs;计算服务器拥有的数据<cosi>1=δ。
CN202111589802.7A 2021-12-23 2021-12-23 一种保护用户数据隐私的抗拜占庭攻击的联邦学习方法 Pending CN114239862A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111589802.7A CN114239862A (zh) 2021-12-23 2021-12-23 一种保护用户数据隐私的抗拜占庭攻击的联邦学习方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111589802.7A CN114239862A (zh) 2021-12-23 2021-12-23 一种保护用户数据隐私的抗拜占庭攻击的联邦学习方法

Publications (1)

Publication Number Publication Date
CN114239862A true CN114239862A (zh) 2022-03-25

Family

ID=80762008

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111589802.7A Pending CN114239862A (zh) 2021-12-23 2021-12-23 一种保护用户数据隐私的抗拜占庭攻击的联邦学习方法

Country Status (1)

Country Link
CN (1) CN114239862A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114900283A (zh) * 2022-04-01 2022-08-12 西安电子科技大学 基于多方安全计算的深度学习用户梯度聚合方法
CN115438753A (zh) * 2022-11-03 2022-12-06 电子科技大学 一种基于生成的衡量联邦学习协议数据安全性的方法
CN116822647A (zh) * 2023-05-25 2023-09-29 大连海事大学 一种基于联邦学习的模型解释方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111966698A (zh) * 2020-07-03 2020-11-20 华南师范大学 一种基于区块链的可信联邦学习方法、系统、装置及介质
CN112100659A (zh) * 2020-09-14 2020-12-18 电子科技大学 一种区块链联邦学习系统及拜占庭攻击检测方法
CN112966741A (zh) * 2021-03-05 2021-06-15 北京理工大学 一种可防御拜占庭攻击的联邦学习图像分类方法
CN113112027A (zh) * 2021-04-06 2021-07-13 杭州电子科技大学 一种基于动态调整模型聚合权重的联邦学习方法
CN113420888A (zh) * 2021-06-03 2021-09-21 中国石油大学(华东) 一种基于泛化域自适应的无监督联邦学习方法
CN113434873A (zh) * 2021-06-01 2021-09-24 内蒙古大学 一种基于同态加密的联邦学习隐私保护方法
WO2021203980A1 (zh) * 2020-11-20 2021-10-14 平安科技(深圳)有限公司 一种气象事件预测方法、装置及相关设备

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111966698A (zh) * 2020-07-03 2020-11-20 华南师范大学 一种基于区块链的可信联邦学习方法、系统、装置及介质
CN112100659A (zh) * 2020-09-14 2020-12-18 电子科技大学 一种区块链联邦学习系统及拜占庭攻击检测方法
WO2021203980A1 (zh) * 2020-11-20 2021-10-14 平安科技(深圳)有限公司 一种气象事件预测方法、装置及相关设备
CN112966741A (zh) * 2021-03-05 2021-06-15 北京理工大学 一种可防御拜占庭攻击的联邦学习图像分类方法
CN113112027A (zh) * 2021-04-06 2021-07-13 杭州电子科技大学 一种基于动态调整模型聚合权重的联邦学习方法
CN113434873A (zh) * 2021-06-01 2021-09-24 内蒙古大学 一种基于同态加密的联邦学习隐私保护方法
CN113420888A (zh) * 2021-06-03 2021-09-21 中国石油大学(华东) 一种基于泛化域自适应的无监督联邦学习方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
KAMALA VARMA 等: "LEGATO: A LayerwisE Gradient AggregaTiOn Algorithm for Mitigating Byzantine Attacks in Federated Learning" *
MENG HAO 等: "Efficient, Private and Robust Federated Learning" *
姜建林: "基于可信执行环境的联邦学习模型安全聚合技术研究" *
成艺: "联合学习环境下保护隐私的数据聚合技术研究" *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114900283A (zh) * 2022-04-01 2022-08-12 西安电子科技大学 基于多方安全计算的深度学习用户梯度聚合方法
CN115438753A (zh) * 2022-11-03 2022-12-06 电子科技大学 一种基于生成的衡量联邦学习协议数据安全性的方法
CN115438753B (zh) * 2022-11-03 2023-01-06 电子科技大学 一种基于生成的衡量联邦学习协议数据安全性的方法
CN116822647A (zh) * 2023-05-25 2023-09-29 大连海事大学 一种基于联邦学习的模型解释方法
CN116822647B (zh) * 2023-05-25 2024-01-16 大连海事大学 一种基于联邦学习的模型解释方法

Similar Documents

Publication Publication Date Title
US9736128B2 (en) System and method for a practical, secure and verifiable cloud computing for mobile systems
CN110138802B (zh) 用户特征信息获取方法、装置,区块链节点、网络,及存储介质
US9158925B2 (en) Server-aided private set intersection (PSI) with data transfer
CN108712260A (zh) 云环境下保护隐私的多方深度学习计算代理方法
CN110572253A (zh) 一种联邦学习训练数据隐私性增强方法及系统
CN114239862A (zh) 一种保护用户数据隐私的抗拜占庭攻击的联邦学习方法
Shahid et al. PSDS–proficient security over distributed storage: a method for data transmission in cloud
CN112287377A (zh) 基于联邦学习的模型训练方法、计算机设备及存储介质
Gupta et al. Single secret image sharing scheme using neural cryptography
Peng Danger of using fully homomorphic encryption: A look at Microsoft SEAL
CN114491578B (zh) 一种用于隐私计算的安全数据聚合方法
WO2020165932A1 (ja) 情報処理装置、秘密計算方法及びプログラム
WO2021106077A1 (ja) ニューラルネットワークの更新方法、端末装置、計算装置及びプログラム
CN111581648B (zh) 在不规则用户中保留隐私的联邦学习的方法
Sun et al. Lightweight internet of things device authentication, encryption, and key distribution using end-to-end neural cryptosystems
Karakoç et al. Secure aggregation against malicious users
Olumide et al. A hybrid encryption model for secure cloud computing
CN117421762A (zh) 基于差分隐私和同态加密的联邦学习隐私保护方法
Shin et al. Securing a local training dataset size in federated learning
CN117675270A (zh) 面向纵向联邦学习的多模态数据加密传输方法及系统
CN115865313A (zh) 一种轻量级隐私保护纵向联邦学习模型参数聚合方法
Zhou et al. A survey of security aggregation
Bose et al. A Fully Decentralized Homomorphic Federated Learning Framework
Shang et al. Decentralized distributed federated learning based on multi-key homomorphic encryption
CN116822661B (zh) 基于双服务器架构的隐私保护可验证联邦学习方法

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20220325