CN110955907A - 一种基于联邦学习的模型训练方法 - Google Patents
一种基于联邦学习的模型训练方法 Download PDFInfo
- Publication number
- CN110955907A CN110955907A CN201911285233.XA CN201911285233A CN110955907A CN 110955907 A CN110955907 A CN 110955907A CN 201911285233 A CN201911285233 A CN 201911285233A CN 110955907 A CN110955907 A CN 110955907A
- Authority
- CN
- China
- Prior art keywords
- theta
- node
- server
- model
- nodes
- 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.)
- Granted
Links
- 238000012549 training Methods 0.000 title claims abstract description 65
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 23
- 238000012821 model calculation Methods 0.000 claims abstract description 16
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000012417 linear regression Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 4
- 238000005336 cracking Methods 0.000 description 2
- 238000005034 decoration Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
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)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
公开了一种基于联邦学习的模型训练方法。为了保护服务端的隐私(模型参数)不泄露,服务端采用同态加密算法对模型参数集合进行加密后下发给节点,节点基于同态加密原理,使用加密后的模型参数与本地训练样本进行加密状态下的模型计算,得到加密梯度。随后,节点基于同态加密原理,计算加密梯度与加密随机数的差,这个差实质上是加密的某个无意义的值。接着,节点将加密后的值上传给服务端。此外,服务端可以利用SA协议,在不获知每个节点上的随机数的前提下,获知各节点上的随机数之和。如此,服务端就可以根据每个节点上传的加密后的值与各随机数之和来还原出每个节点产生的梯度之和,从而可以更新模型参数。
Description
技术领域
本说明书实施例涉及信息技术领域,尤其涉及一种基于联邦学习的模型训练方法。
背景技术
联邦学习(Federated machine learning/Federated Learning),是指一种机器学习框架,能有效帮助多个节点(可以代表个人或机构)在满足数据隐私保护的要求下,联合训练模型。
在联邦学习框架下,服务端下发模型参数给多个节点,每个节点将本地的训练样本输入模型进行一次训练,本次训练结束后,每个节点会基于本次训练结果计算得到的梯度。随后,服务端基于安全聚合(SA,Secure Aggregation)协议,可以计算得到各节点的梯度之和。值得强调的是,服务端收到SA协议的限制,并不能获得单个节点上传的梯度。
如此,既可以使得服务端根据各节点上传的梯度之和调整模型参数,又可以实现节点的数据隐私保护。
然而,在有些场景下,模型参数也不适合暴露给节点。
发明内容
为了解决联邦学习框架下存在的模型参数难以保护的问题,本说明书实施例提供一种基于联邦学习的模型训练方法,技术方案如下:
根据本说明书实施例的第1方面,提供一种基于联邦学习的模型训练方法,应用于包括服务端与N个节点的联邦学习系统,N>1,所述方法包括:
在模型训练的第i次迭代中,执行:
所述服务端基于同态加密算法E对模型参数集合θ进行加密,得到E(θ),并将E(θ)下发给Mi个节点;其中,Mi≤N,所述Mi个节点中存在Qi个目标类型节点;
第j个目标类型节点根据E(θ)与本地训练样本,进行加密状态下的模型计算,得到加密梯度E(wij);其中,j=(1,2,…,Qi);
第j个目标类型节点确定随机数rj,并计算E(wij)-E(rij),得到E(sij),以及,向所述服务端上传E(sij);
根据本说明书实施例的第2方面,提供一种联邦学习系统,包括服务端与N个节点,N>1;
所述服务端,在模型训练的第i次迭代中,基于同态加密算法E对模型参数集合θ进行加密,得到E(θ),并将E(θ)下发给Mi个节点,其中,Mi≤N,所述Mi个节点中存在Qi个目标类型节点;
第j个目标类型节点,根据E(θ)与本地训练样本,进行加密状态下的模型计算,得到加密梯度E(wij),其中,j=(1,2,…,Qi);确定随机数rij,并计算E(wij)-E(rij),得到E(sij),以及,向所述服务端上传E(sij);
本说明书实施例所提供的技术方案,服务端采用同态加密算法对模型参数集合进行加密后下发给节点,节点基于同态加密原理,使用加密后的模型参数与本地训练样本进行加密状态下的模型计算,得到加密梯度。随后,节点基于同态加密原理,计算加密梯度与加密随机数的差,这个差实质上是加密的某个无意义的值。接着,节点将加密后的值上传给服务端。此外,服务端可以利用SA协议,在不获知每个节点上的随机数的前提下,获知各节点上的随机数之和。如此,服务端就可以根据每个节点上传的加密后的值与各随机数之和来还原出每个节点产生的梯度之和,从而可以更新模型参数,以便进入下一次迭代或者完成训练。
通过本说明书实施例,可以在基于联邦学习框架实现服务端与各节点联合训练模型的前提下,实现服务端向节点隐藏模型参数,从而避免节点根据模型参数破解模型。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书实施例。
此外,本说明书实施例中的任一实施例并不需要达到上述的全部效果。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1是本说明书实施例提供的一种基于联邦学习的模型训练方法的流程示意图;
图2是本说明书实施例提供的一种基于联邦学习的模型训练方法的原理示意图;
图3是本说明书实施例提供的一种联邦学习系统中的服务端的结构示意图;
图4是本说明书实施例提供的一种联邦学习系统中的节点的结构示意图;
图5是用于配置本说明书实施例方法的一种设备的结构示意图。
具体实施方式
在联邦学习框架下,通常由服务端负责根据节点上传的梯度更新模型参数,并将模型参数下发给节点,由节点基于模型参数与本地训练样本计算梯度。为了防止服务端根据节点上传的梯度推断出节点的本地训练样本,一般基于SA协议来实现节点将梯度上传给服务端,使得服务端仅会获取到各节点上传的梯度之和,却无法获取到单个节点上传的梯度。
可见,在现有的联邦学习架构下,节点可以向服务端隐藏本地训练样本,而服务端却不会向节点隐藏模型参数。
然而,在有些场景下,服务端也并不想将隐私(即模型参数)暴露给节点。例如,假设需要基于联邦学习架构训练诈骗交易识别模型,服务端一方面需要各节点提供诈骗交易作为样本训练该模型,另一方面也不希望节点获知模型参数,否则,模型参数容易暴露给恶意分子,导致基于该模型构筑的诈骗防线容易被攻破。
为了解决上述问题,在本说明书实施例中,基于同态加密算法,对模型参数进行加密后下发到节点,节点基于加密后的模型参数与本地训练样本计算梯度,基于同态加密原理,计算出的实际上是加密后的梯度。
此处需要说明,一方面,SA协议并不支持对加密后的数据进行上传,另一方面,如果节点直接将加密后的梯度上传,则服务端可以直接解密获得节点的梯度明文,反而造成节点的隐私泄露。
因此,在本说明书实施例中,并不会让节点直接将加密后的梯度上传给服务端,而是做如下处理:
1、节点确定一个随机数,基于同态加密算法(记为E)对随机数进行加密,然后计算加密后的梯度与加密后的随机数的差值,记为E(s)。将加密后的梯度记为E(w),w为梯度,将加密后的随机数记为E(r),r为随机数,可以理解,基于同态加密原理,如果E(w)-E(r)=E(s),则w-r=s。
2、节点将E(s)上传给服务端。如此,服务端即便对E(s)解密得到s,由于s是无意义的值,服务端也无法获知节点的隐私。
3、服务端基于SA协议,获取各节点的随机数之和。由于SA协议可以用于将至少两个节点的明文数据上传给服务端,并且确保服务端只能获知各节点上传的明文数据之和,而不能获知单个节点的明文数据。
4、服务端获取每个节点上传的E(s)之后,可以确定各节点上的s之和,将s之和与随机数之和相加,就能得到各节点上的梯度之和,以便对模型参数进行更新。
通过本说明书书实施例,服务端可以在基于联邦学习框架实现服务端与各节点联合训练模型的前提下,实现服务端向节点隐藏模型参数,从而避免节点根据模型参数破解模型。
为了使本领域技术人员更好地理解本说明书实施例中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行详细地描述,显然,所描述的实施例仅仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于保护的范围。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
图1是本说明书实施例提供的一种基于联邦学习的模型训练方法的流程示意图,包括以下步骤:
S100:服务端基于同态加密算法E对模型参数集合θ进行加密,得到E(θ)。
众所周知,在机器学习领域,一般采用迭代调参的方式来训练模型。步骤S100~S114是训练模型过程中的一次迭代,可以理解,训练模型的过程,实际上是循环执行步骤S100~S114的过程,当模型参数被更新到满足训练停止条件时,就会停止循环。
具体地,可以将训练停止条件设定为:循环执行步骤S100~S114的次数达到指定次数g,或者,一次迭代的损失函数值小于指定值。
为了描述的方便,本文将S100~S114视为第i次迭代执行的步骤。可以理解,如果训练停止条件为循环次数达到指定次数g,则i=(1,2,…,g)。
图1所示的方法应用于联邦学习系统,联邦学习系统包括服务端与N个节点(即节点设备),其中,N大于1。
在本文中,为了描述的方便,将同态加密算法记为E,经过同态加密算法加密过的数据记为E(*),*代表被加密的数据。此外,还将模型的模型参数集合记为θ。
S102:服务端将E(θ)下发给Mi个节点。
本说明书实施例的应用场景主要有两类,一类是服务端to B场景(服务端与至少两个机构进行联合学习),另一类是服务端to C场景(服务端与至少两个个人用户进行联合学习)。
在服务端to B场景下,节点的数量并不多,在每次迭代中,服务端可以将E(θ)下发给每个节点进行计算。
在服务端to C场景下,一般会有海量的个人用户参与训练,节点的数量很大,因此,在每次迭代中,服务端为了避免数据处理压力过大,可以选择部分节点下发E(θ),仅根据这部分节点反馈的训练效果来更新模型参数集合。
需要说明的是,服务端在每次迭代中选择的节点可以不同,选择的节点数量也可以不同。为了描述的方便,将第i次迭代中选择的节点数量记为Mi。
还需要说明的是,Mi可以小于N,也可以等于N。
此外,由于在后续的步骤S110中,服务端需要基于SA协议获取节点上传的数据,而SA协议中使用了秘密共享技术。对于秘密共享技术,其用于实现在L个节点中秘密共享数据,其需要满足L个节点中T个节点在线。因此,一般需要满足Mi大于等于Ti,Ti为:以在所述Mi个节点中实现秘密共享为目的,所述Mi个节点中处于在线状态的节点的数量的下限值,也就是第i次迭代中,SA协议指定的Mi个节点中处于在线状态的节点的数量的下限值。
S104:第j个目标类型节点根据E(θ)与本地训练样本,进行加密状态下的模型计算,得到加密梯度E(wij)。
在本说明书实施例中,在应用于服务端to C的场景的情况下,服务端向Mi个节点下发E(θ)之后,由于个人用户的节点设备并不一定总是在线(即不一定总是可以连接到网络,与服务端或其他节点进行数据交互),而如果某个节点不在线,则服务端并不能获取到该节点反馈的训练效果,因此,针对所述Mi个节点中的任一节点,如果该节点在接收到E(θ)之后,继续处于在线状态直至第i次迭代结束,则该节点的训练效果才能反馈给服务端。本文为了描述的方便,将所述Mi个节点中能够向服务端反馈训练效果的节点称为目标类型节点。
图1所示的方法流程中,只描述了一次迭代中每个目标类型节点执行的操作,并没有描述非目标类型节点执行的操作。然而,可以理解,对于所述Mi个节点中的非目标类型节点,其在接收到E(θ)之后,也可以执行类似于S104~S106的操作,只不过无法将执行结果上传给服务端。
此外,在本说明书实施例中,在应用于服务端to B的场景的情况下,由于每个机构的节点设备通常是稳定在线的,因此,所述Mi个节点可以都属于目标类型节点。
在本说明书实施例中,为了描述的方便,假设所述Mi个节点中存在Qi个目标类型节点,Qi≤Mi,并且,针对所述Qi个目标类型节点中第j个目标类型节点进行描述。其中,j=(1,2,…,Qi),可以理解,wij是第j个目标类型节点计算得到的梯度,E(wij)是第j个目标类型节点计算得到的梯度的加密值。
在本说明书实施例中,由于E(θ)是加密的模型参数,因此,目标类型节点仅能根据E(θ)与本地训练样本进行加密状态下的模型计算。此处需要说明的是,由于同态加密算法通常是加性的(主要包括加法与数乘),因此,为了使得根据E(θ)与本地训练样本进行加密状态下的模型计算后得到的结果尽可能保留本地训练样本的特征信息,训练模型所采用的机器学习算法通常是线性性质的。例如,可以采用线性回归的机器学习算法训练线性回归模型,也可以采用神经网络算法(激活函数经过线性转换)训练神经网络模型。
此处以线性回归算法为例进行说明。
S106:第j个目标类型节点确定随机数rij,并计算E(wij)-E(rij),得到E(sij)。
在本说明书实施例中,为了描述的方便,将第j个目标类型节点确定的随机数记为rij。此外,对于同一节点而言,可以在每次迭代中都重新生成随机数,也可以预先生成随机数,在每次迭代中复用该随机数。
基于同态加密原理,E(wij)-E(rij)的计算结果事实上是加密的某个无意义的值,为了描述的方便,将这个无意义的值记为sij,加密的sij即是E(sij)。显然,wij、rij、sij满足以下关系:wij=rij+sij。
S108:第j个目标类型节点向所述服务端上传E(sij)。
此处值得强调的是,即便服务端可以解密E(sij)获得sij,服务端也无法从sij中获取有价值的信息。
此外,在服务端to C的场景下,还需要判断目标类型节点的数量Qi是否达到Ti,如果Qi小于Ti,则各目标类型节点之间将无法基于SA协议向服务端反馈数据。
假设本说明书实施例中,为梯度下降法指定的学习率为α,第i次迭代中使用的样本总数为d,则可以采用如下公式更新θ,得到更新后的θ(记为θ’):
图2是本说明书实施例提供的一种基于联邦学习的模型训练方法的原理示意图。在图2中,示出了包括服务端与3个节点的联邦学习系统。服务端首先对模型参数集合进行加密,得到E(θ),然后将E(θ)下发给各节点。图2仅标注了服务端与节点2之间的交互,可以理解,服务端与节点1、节点3都会进行同样的交互。随后,服务端基于SA协议,获取各节点的随机数之后,并进而计算得到各节点的梯度之和,以便更新模型参数集合。
此外,本说明书实施例中的模型对应的输入数据可以包括以下一种:图像、文本、语音。也即,模型训练过程中使用的训练样本可以是图像,可以是文本,也可以语音。模型训练完成后,可以相应地用于对图像、文本或语音进行处理。
进一步地,所述文本可以包含实体对象信息。其中,实体对象可以是用户、商户等对象。
还需要说明的是,本文所述的用于处理图像的模型例如可以是图像分类模型、图像分割模型等,本文所述的用于处理文本的模型例如可以是机器人客服模型、实体对象风险识别模型、推荐模型等,本文所述的用于处理语音的模型可以是语音助手模型、语音识别模型等。
一种联邦学习系统,包括服务端与N个节点,N>1;
所述服务端,在模型训练的第i次迭代中,基于同态加密算法E对模型参数集合θ进行加密,得到E(θ),并将E(θ)下发给Mi个节点,其中,Mi≤N,所述Mi个节点中存在Qi个目标类型节点;
第j个目标类型节点,根据E(θ)与本地训练样本,进行加密状态下的模型计算,得到加密梯度E(wij),其中,j=(1,2,…,Qi);确定随机数rij,并计算E(wij)-E(rij),得到E(sij),以及,向所述服务端上传E(sij);
图3是本说明书实施例提供的一种联邦学习系统中的服务端的结构示意图,应用于模型训练的第i次迭代中,所述联邦学习系统还包括N个节点,N>1;
所述服务端包括:
模型参数加密模块301,基于同态加密算法E对模型参数集合θ进行加密,得到E(θ);
模型参数下发模块302,将E(θ)下发给Mi个节点,其中,Mi≤N,所述Mi个节点中存在Qi个目标类型节点,以使第j个目标类型节点根据E(θ)与本地训练样本,进行加密状态下的模型计算,得到加密梯度E(wij),其中,j=(1,2,…,Qi);进而使第j个目标类型节点确定随机数rij,并计算E(wij)-E(rij),得到E(sij),以及,向所述服务端上传E(sij);
图4是本说明书实施例提供的一种联邦学习系统中的节点的结构示意图,所述联邦学习系统包括N个节点与服务端,N>1;
在模型训练的第i次迭代中,第j个目标类型节点包括:
模型计算模块401,根据E(θ)与本地训练样本,进行加密状态下的模型计算,得到加密梯度E(wij);
随机数确定模块402,确定随机数rij;
上传模块403,计算E(wij)-E(rij),得到E(sij),以及,向所述服务端上传E(sij);
其中:
所述服务端基于同态加密算法E对模型参数集合θ进行加密,得到E(θ),并将E(θ)下发给Mi个节点;Mi≤N,所述Mi个节点中存在Qi个目标类型节点,j=(1,2,…,Qi);所述服务端根据E(sij)计算并基于安全聚合SA协议,计算所述服务端计算得到并基于更新θ。
本说明书实施例还提供一种计算机设备,其至少包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行所述程序时实现本说明书中的服务端或目标类型节点的方法。
图5示出了本说明书实施例所提供的一种更为具体的计算设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
本说明书实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本说明书中的服务端或目标类型节点的方法。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本说明书实施例可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务设备,或者网络设备等)执行本说明书实施例各个实施例或者实施例的某些部分所述的方法。
上述实施例阐明的系统、方法、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,在实施本说明书实施例方案时可以把各模块的功能在同一个或多个软件和/或硬件中实现。也可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本说明书实施例的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本说明书实施例原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本说明书实施例的保护范围。
Claims (13)
1.一种基于联邦学习的模型训练方法,应用于包括服务端与N个节点的联邦学习系统,N>1,所述方法包括:
在模型训练的第i次迭代中,执行:
所述服务端基于同态加密算法E对模型参数集合θ进行加密,得到E(θ),并将E(θ)下发给Mi个节点;其中,Mi≤N,所述Mi个节点中存在Qi个目标类型节点;
第j个目标类型节点根据E(θ)与本地训练样本,进行加密状态下的模型计算,得到加密梯度E(wij);其中,j=(1,2,…,Qi);
第j个目标类型节点确定随机数rj,并计算E(wij)-E(rij),得到E(sij),以及,向所述服务端上传E(sij);
2.如权利要求1所述的方法,针对所述Mi个节点中的任一节点,若该节点在接收到E(θ)之后,继续处于在线状态直至第i次迭代结束,则该节点属于目标类型节点。
5.如权利要求1所述的方法,用于训练线性回归模型。
6.如权利要求1~5任一项所述的方法,所述模型对应的输入数据包括:图像或文本或语音。
7.如权利要求6所述的方法,所述文本包含实体对象信息。
9.一种基于联邦学习的模型训练方法,应用于联邦学习系统中的服务端,所述联邦学习系统还包括N个节点,N>1,所述方法包括:
在模型训练的第i次迭代中,执行:
基于同态加密算法E对模型参数集合θ进行加密,得到E(θ),并将E(θ)下发给Mi个节点,其中,Mi≤N,所述Mi个节点中存在Qi个目标类型节点,以使第j个目标类型节点根据E(θ)与本地训练样本,进行加密状态下的模型计算,得到加密梯度E(wij),其中,j=(1,2,…,Qi);进而使第j个目标类型节点确定随机数rij,并计算E(wij)-E(rij),得到E(sij),以及,向所述服务端上传E(sij);
10.一种基于联邦学习的模型训练方法,应用于联邦学习系统中的节点,所述联邦学习系统包括N个节点与服务端,N>1;
所述方法包括:
在模型训练的第i次迭代中,第j个目标类型节点执行:
根据E(θ)与本地训练样本,进行加密状态下的模型计算,得到加密梯度E(wij);
确定随机数rij,并计算E(wij)-E(rij),得到E(sij),以及,向所述服务端上传E(sij);
其中:
11.一种联邦学习系统中的服务端,应用于模型训练的第i次迭代中,所述联邦学习系统还包括N个节点,N>1;
所述服务端包括:
模型参数加密模块,基于同态加密算法E对模型参数集合θ进行加密,得到E(θ);
模型参数下发模块,将E(θ)下发给Mi个节点,其中,Mi≤N,所述Mi个节点中存在Qi个目标类型节点,以使第j个目标类型节点根据E(θ)与本地训练样本,进行加密状态下的模型计算,得到加密梯度E(wij),其中,j=(1,2,…,Qi);进而使第j个目标类型节点确定随机数rij,并计算E(wij)-E(rij),得到E(sij),以及,向所述服务端上传E(sij);
12.一种联邦学习系统中的节点,所述联邦学习系统包括N个节点与服务端,N>1;
在模型训练的第i次迭代中,第j个目标类型节点包括:
模型计算模块,根据E(θ)与本地训练样本,进行加密状态下的模型计算,得到加密梯度E(wij);
随机数确定模块,确定随机数rij;
上传模块,计算E(wij)-E(rij),得到E(sij),以及,向所述服务端上传E(sij);
其中:
13.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现如权利要求9或10所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911285233.XA CN110955907B (zh) | 2019-12-13 | 2019-12-13 | 一种基于联邦学习的模型训练方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911285233.XA CN110955907B (zh) | 2019-12-13 | 2019-12-13 | 一种基于联邦学习的模型训练方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110955907A true CN110955907A (zh) | 2020-04-03 |
CN110955907B CN110955907B (zh) | 2022-03-25 |
Family
ID=69981669
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911285233.XA Active CN110955907B (zh) | 2019-12-13 | 2019-12-13 | 一种基于联邦学习的模型训练方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110955907B (zh) |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111652863A (zh) * | 2020-05-27 | 2020-09-11 | 刘君茹 | 一种医学影像检测方法、装置、设备和存储介质 |
CN111722043A (zh) * | 2020-06-29 | 2020-09-29 | 南方电网科学研究院有限责任公司 | 一种电力设备故障检测方法、装置及系统 |
CN111738359A (zh) * | 2020-07-24 | 2020-10-02 | 支付宝(杭州)信息技术有限公司 | 一种两方决策树训练方法和系统 |
CN111858955A (zh) * | 2020-07-01 | 2020-10-30 | 石家庄铁路职业技术学院 | 基于加密联邦学习的知识图谱表示学习增强方法和装置 |
CN111914277A (zh) * | 2020-08-07 | 2020-11-10 | 平安科技(深圳)有限公司 | 交集数据的生成方法和基于交集数据的联邦模型训练方法 |
CN111914038A (zh) * | 2020-09-21 | 2020-11-10 | 北京百度网讯科技有限公司 | 联邦计算方法、装置、设备及存储介质 |
CN112016698A (zh) * | 2020-08-28 | 2020-12-01 | 深圳前海微众银行股份有限公司 | 因子分解机模型构建方法、设备及可读存储介质 |
CN112149158A (zh) * | 2020-08-19 | 2020-12-29 | 成都飞机工业(集团)有限责任公司 | 一种基于同态加密技术的3d打印多数据库共享优化算法 |
CN112149160A (zh) * | 2020-08-28 | 2020-12-29 | 山东大学 | 基于同态伪随机数的联邦学习隐私保护方法及系统 |
CN112200713A (zh) * | 2020-10-28 | 2021-01-08 | 支付宝(杭州)信息技术有限公司 | 一种联邦学习中的业务数据处理方法、装置以及设备 |
CN112287377A (zh) * | 2020-11-25 | 2021-01-29 | 南京星环智能科技有限公司 | 基于联邦学习的模型训练方法、计算机设备及存储介质 |
CN112560088A (zh) * | 2020-12-11 | 2021-03-26 | 同盾控股有限公司 | 基于知识联邦的数据安全交换方法、装置及存储介质 |
CN112949760A (zh) * | 2021-03-30 | 2021-06-11 | 平安科技(深圳)有限公司 | 基于联邦学习的模型精度控制方法、装置及存储介质 |
CN113033823A (zh) * | 2021-04-20 | 2021-06-25 | 支付宝(杭州)信息技术有限公司 | 一种模型训练方法、系统及装置 |
CN113037460A (zh) * | 2021-03-03 | 2021-06-25 | 北京工业大学 | 基于同态加密和秘密共享的联邦学习隐私保护方法 |
CN113282933A (zh) * | 2020-07-17 | 2021-08-20 | 中兴通讯股份有限公司 | 联邦学习方法、装置和系统、电子设备、存储介质 |
WO2021232754A1 (zh) * | 2020-05-22 | 2021-11-25 | 深圳前海微众银行股份有限公司 | 联邦学习建模方法、设备及计算机可读存储介质 |
CN113704778A (zh) * | 2021-07-16 | 2021-11-26 | 杭州医康慧联科技股份有限公司 | 基于同态加密的机器学习线性模型预测方法 |
WO2021239006A1 (zh) * | 2020-05-27 | 2021-12-02 | 支付宝(杭州)信息技术有限公司 | 基于秘密共享的训练方法、装置、电子设备及存储介质 |
CN114172638A (zh) * | 2020-09-11 | 2022-03-11 | 军事科学院系统工程研究院网络信息研究所 | 基于多模型数据融合的量子加密通信方法 |
CN114257314A (zh) * | 2020-09-11 | 2022-03-29 | 军事科学院系统工程研究院网络信息研究所 | 基于多方安全计算的量子加密通信方法 |
CN114800545A (zh) * | 2022-01-18 | 2022-07-29 | 泉州华中科技大学智能制造研究院 | 一种基于联邦学习的机器人控制方法 |
WO2024187902A1 (zh) * | 2023-03-10 | 2024-09-19 | 支付宝(杭州)信息技术有限公司 | 一种模型训练方法、装置、存储介质以及电子设备 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016061635A1 (en) * | 2014-10-24 | 2016-04-28 | National Ict Australia Limited | Gradients over distributed datasets |
CN109189825A (zh) * | 2018-08-10 | 2019-01-11 | 深圳前海微众银行股份有限公司 | 横向数据切分联邦学习建模方法、服务器及介质 |
CN109325584A (zh) * | 2018-08-10 | 2019-02-12 | 深圳前海微众银行股份有限公司 | 基于神经网络的联邦建模方法、设备及可读存储介质 |
CN109598385A (zh) * | 2018-12-07 | 2019-04-09 | 深圳前海微众银行股份有限公司 | 反洗钱联合学习方法、装置、设备、系统及存储介质 |
CN109635462A (zh) * | 2018-12-17 | 2019-04-16 | 深圳前海微众银行股份有限公司 | 基于联邦学习的模型参数训练方法、装置、设备及介质 |
WO2019072316A2 (en) * | 2019-01-11 | 2019-04-18 | Alibaba Group Holding Limited | DISTRIBUTED MULTI-PART SECURITY MODEL LEARNING APPARATUS FOR PRIVACY PROTECTION |
CN109886417A (zh) * | 2019-03-01 | 2019-06-14 | 深圳前海微众银行股份有限公司 | 基于联邦学习的模型参数训练方法、装置、设备及介质 |
CN109992979A (zh) * | 2019-03-15 | 2019-07-09 | 暨南大学 | 一种岭回归训练方法、计算设备、介质 |
CN110032893A (zh) * | 2019-03-12 | 2019-07-19 | 阿里巴巴集团控股有限公司 | 基于秘密分享的安全模型预测方法和装置 |
CN110190945A (zh) * | 2019-05-28 | 2019-08-30 | 暨南大学 | 基于多加密的线性回归隐私保护方法及系统 |
CN110276210A (zh) * | 2019-06-12 | 2019-09-24 | 深圳前海微众银行股份有限公司 | 基于联邦学习的模型参数的确定方法及装置 |
-
2019
- 2019-12-13 CN CN201911285233.XA patent/CN110955907B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016061635A1 (en) * | 2014-10-24 | 2016-04-28 | National Ict Australia Limited | Gradients over distributed datasets |
CN109189825A (zh) * | 2018-08-10 | 2019-01-11 | 深圳前海微众银行股份有限公司 | 横向数据切分联邦学习建模方法、服务器及介质 |
CN109325584A (zh) * | 2018-08-10 | 2019-02-12 | 深圳前海微众银行股份有限公司 | 基于神经网络的联邦建模方法、设备及可读存储介质 |
CN109598385A (zh) * | 2018-12-07 | 2019-04-09 | 深圳前海微众银行股份有限公司 | 反洗钱联合学习方法、装置、设备、系统及存储介质 |
CN109635462A (zh) * | 2018-12-17 | 2019-04-16 | 深圳前海微众银行股份有限公司 | 基于联邦学习的模型参数训练方法、装置、设备及介质 |
WO2019072316A2 (en) * | 2019-01-11 | 2019-04-18 | Alibaba Group Holding Limited | DISTRIBUTED MULTI-PART SECURITY MODEL LEARNING APPARATUS FOR PRIVACY PROTECTION |
CN109886417A (zh) * | 2019-03-01 | 2019-06-14 | 深圳前海微众银行股份有限公司 | 基于联邦学习的模型参数训练方法、装置、设备及介质 |
CN110032893A (zh) * | 2019-03-12 | 2019-07-19 | 阿里巴巴集团控股有限公司 | 基于秘密分享的安全模型预测方法和装置 |
CN109992979A (zh) * | 2019-03-15 | 2019-07-09 | 暨南大学 | 一种岭回归训练方法、计算设备、介质 |
CN110190945A (zh) * | 2019-05-28 | 2019-08-30 | 暨南大学 | 基于多加密的线性回归隐私保护方法及系统 |
CN110276210A (zh) * | 2019-06-12 | 2019-09-24 | 深圳前海微众银行股份有限公司 | 基于联邦学习的模型参数的确定方法及装置 |
Cited By (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021232754A1 (zh) * | 2020-05-22 | 2021-11-25 | 深圳前海微众银行股份有限公司 | 联邦学习建模方法、设备及计算机可读存储介质 |
CN111652863A (zh) * | 2020-05-27 | 2020-09-11 | 刘君茹 | 一种医学影像检测方法、装置、设备和存储介质 |
WO2021239006A1 (zh) * | 2020-05-27 | 2021-12-02 | 支付宝(杭州)信息技术有限公司 | 基于秘密共享的训练方法、装置、电子设备及存储介质 |
CN111722043A (zh) * | 2020-06-29 | 2020-09-29 | 南方电网科学研究院有限责任公司 | 一种电力设备故障检测方法、装置及系统 |
CN111722043B (zh) * | 2020-06-29 | 2021-09-14 | 南方电网科学研究院有限责任公司 | 一种电力设备故障检测方法、装置及系统 |
CN111858955A (zh) * | 2020-07-01 | 2020-10-30 | 石家庄铁路职业技术学院 | 基于加密联邦学习的知识图谱表示学习增强方法和装置 |
CN111858955B (zh) * | 2020-07-01 | 2023-08-18 | 石家庄铁路职业技术学院 | 基于加密联邦学习的知识图谱表示学习增强方法和装置 |
CN113282933A (zh) * | 2020-07-17 | 2021-08-20 | 中兴通讯股份有限公司 | 联邦学习方法、装置和系统、电子设备、存储介质 |
CN111738359A (zh) * | 2020-07-24 | 2020-10-02 | 支付宝(杭州)信息技术有限公司 | 一种两方决策树训练方法和系统 |
CN111914277A (zh) * | 2020-08-07 | 2020-11-10 | 平安科技(深圳)有限公司 | 交集数据的生成方法和基于交集数据的联邦模型训练方法 |
CN111914277B (zh) * | 2020-08-07 | 2023-09-01 | 平安科技(深圳)有限公司 | 交集数据的生成方法和基于交集数据的联邦模型训练方法 |
CN112149158A (zh) * | 2020-08-19 | 2020-12-29 | 成都飞机工业(集团)有限责任公司 | 一种基于同态加密技术的3d打印多数据库共享优化算法 |
CN112149160A (zh) * | 2020-08-28 | 2020-12-29 | 山东大学 | 基于同态伪随机数的联邦学习隐私保护方法及系统 |
CN112016698A (zh) * | 2020-08-28 | 2020-12-01 | 深圳前海微众银行股份有限公司 | 因子分解机模型构建方法、设备及可读存储介质 |
CN114172638B (zh) * | 2020-09-11 | 2024-04-30 | 军事科学院系统工程研究院网络信息研究所 | 基于多模型数据融合的量子加密通信方法及系统 |
CN114172638A (zh) * | 2020-09-11 | 2022-03-11 | 军事科学院系统工程研究院网络信息研究所 | 基于多模型数据融合的量子加密通信方法 |
CN114257314A (zh) * | 2020-09-11 | 2022-03-29 | 军事科学院系统工程研究院网络信息研究所 | 基于多方安全计算的量子加密通信方法 |
CN114257314B (zh) * | 2020-09-11 | 2023-11-24 | 军事科学院系统工程研究院网络信息研究所 | 基于多方安全计算的量子加密通信方法 |
CN111914038B (zh) * | 2020-09-21 | 2024-04-16 | 北京百度网讯科技有限公司 | 联邦计算方法、装置、设备及存储介质 |
CN111914038A (zh) * | 2020-09-21 | 2020-11-10 | 北京百度网讯科技有限公司 | 联邦计算方法、装置、设备及存储介质 |
CN112200713A (zh) * | 2020-10-28 | 2021-01-08 | 支付宝(杭州)信息技术有限公司 | 一种联邦学习中的业务数据处理方法、装置以及设备 |
CN112200713B (zh) * | 2020-10-28 | 2023-04-21 | 支付宝(杭州)信息技术有限公司 | 一种联邦学习中的业务数据处理方法、装置以及设备 |
CN112287377A (zh) * | 2020-11-25 | 2021-01-29 | 南京星环智能科技有限公司 | 基于联邦学习的模型训练方法、计算机设备及存储介质 |
CN112560088B (zh) * | 2020-12-11 | 2024-05-28 | 同盾控股有限公司 | 基于知识联邦的数据安全交换方法、装置及存储介质 |
CN112560088A (zh) * | 2020-12-11 | 2021-03-26 | 同盾控股有限公司 | 基于知识联邦的数据安全交换方法、装置及存储介质 |
CN113037460B (zh) * | 2021-03-03 | 2023-02-28 | 北京工业大学 | 基于同态加密和秘密共享的联邦学习隐私保护方法 |
CN113037460A (zh) * | 2021-03-03 | 2021-06-25 | 北京工业大学 | 基于同态加密和秘密共享的联邦学习隐私保护方法 |
CN112949760A (zh) * | 2021-03-30 | 2021-06-11 | 平安科技(深圳)有限公司 | 基于联邦学习的模型精度控制方法、装置及存储介质 |
CN112949760B (zh) * | 2021-03-30 | 2024-05-10 | 平安科技(深圳)有限公司 | 基于联邦学习的模型精度控制方法、装置及存储介质 |
CN113033823A (zh) * | 2021-04-20 | 2021-06-25 | 支付宝(杭州)信息技术有限公司 | 一种模型训练方法、系统及装置 |
CN113704778A (zh) * | 2021-07-16 | 2021-11-26 | 杭州医康慧联科技股份有限公司 | 基于同态加密的机器学习线性模型预测方法 |
CN114800545B (zh) * | 2022-01-18 | 2023-10-27 | 泉州华中科技大学智能制造研究院 | 一种基于联邦学习的机器人控制方法 |
CN114800545A (zh) * | 2022-01-18 | 2022-07-29 | 泉州华中科技大学智能制造研究院 | 一种基于联邦学习的机器人控制方法 |
WO2024187902A1 (zh) * | 2023-03-10 | 2024-09-19 | 支付宝(杭州)信息技术有限公司 | 一种模型训练方法、装置、存储介质以及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110955907B (zh) | 2022-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110955907B (zh) | 一种基于联邦学习的模型训练方法 | |
CN111046433B (zh) | 一种基于联邦学习的模型训练方法 | |
CN111783114B (zh) | 区块链交易方法及装置、电子设备 | |
US11295303B2 (en) | Method, apparatus and electronic device for blockchain transactions | |
TWI734041B (zh) | 一種資料審計的方法及裝置 | |
CN110457912B (zh) | 数据处理方法、装置和电子设备 | |
TWI689841B (zh) | 資料加密、機器學習模型訓練方法、裝置及電子設備 | |
CN113239404B (zh) | 一种基于差分隐私和混沌加密的联邦学习方法 | |
CN111008709A (zh) | 联邦学习、资料风险评估方法、装置和系统 | |
CN111602161A (zh) | 基于通用账户模型和同态加密的区块链数据保护 | |
CN109981787B (zh) | 用于展示信息的方法和装置 | |
CN110414567A (zh) | 数据处理方法、装置和电子设备 | |
CN108694238A (zh) | 基于区块链的业务数据处理方法、装置及存储介质 | |
US9985937B1 (en) | Documents with location attributes for access and storage | |
US20190294804A1 (en) | Encrypted recordings of meetings between individuals | |
CN113609781A (zh) | 基于联邦学习的汽车生产模具优化方法、系统、设备及介质 | |
CN114861841A (zh) | 纵向联邦决策树训练方法及装置 | |
CN110765490A (zh) | 用于处理信息的方法和装置 | |
US20190325496A1 (en) | Methods, systems, apparatuses and devices for facilitating customizing a card | |
US10235529B1 (en) | Tracking of web-based document access requests | |
CN116432040B (zh) | 基于联邦学习的模型训练方法、装置、介质以及电子设备 | |
CN117349671A (zh) | 一种模型训练的方法、装置、存储介质及电子设备 | |
CN113033717A (zh) | 一种模型生成方法、装置以及用于模型生成的装置 | |
CN112949866A (zh) | 泊松回归模型的训练方法、装置、电子设备及存储介质 | |
CN112507323A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40026905 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |