CN114118442A - 基于纵向联邦学习的模型训练方法、系统、设备及介质 - Google Patents
基于纵向联邦学习的模型训练方法、系统、设备及介质 Download PDFInfo
- Publication number
- CN114118442A CN114118442A CN202111405979.7A CN202111405979A CN114118442A CN 114118442 A CN114118442 A CN 114118442A CN 202111405979 A CN202111405979 A CN 202111405979A CN 114118442 A CN114118442 A CN 114118442A
- Authority
- CN
- China
- Prior art keywords
- model
- training
- current participant
- value
- asynchronous
- 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
Links
Images
Classifications
-
- 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)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种基于纵向联邦学习的模型训练方法、系统、设备及介质,所述方法包括步骤:当前参与方获取自身对应的待训练模型和训练样本;所述当前参与方基于所述待训练模型,计算得到所述训练样本对应的第一预测值,并将所述第一预测值发送至异步辅助器;所述异步辅助器基于所述预设损失函数、预设标签值和所述第二预测值,计算得到当前参与方基于所述训练样本的真实值;所述当前参与方基于所述第一预测值和所述真实值,计算得到梯度;所述当前参与方基于所述梯度,对所述待训练模型的参数进行更新,更新后的模型作为下一轮迭代的待训练模型或者当前参与方的最终模型;本申请实现了上述模型的异步训练,提高了模型训练效率。
Description
技术领域
本发明涉及人工智能技术领域,具体地说,涉及一种基于纵向联邦学习的模型训练方法、系统、设备及介质。
背景技术
联邦学习指的是多个数据拥有方(即参与方)在原始数据不出本地的情况下也可进行模型训练并得到最终模型的计算过程,并且保证模型效果与聚合训练效果的差距足够小。根据数据分布情况,可以把联邦学习分为横向联邦学习、纵向联邦学习以及联邦迁移学习。
对于纵向联邦学习,由于同一样本的不同特征分属于不同的训练参与方,并且样本标签与特征也是处于分离的状态,即训练参与方拥有相同的样本空间和不同的特征空间。现有技术中提出的基于纵向联邦学习的模型同步训练方法在进行训练时,每轮迭代更新都需要联合全部参与方的计算值去拟合样本标签值,所有参与方同步更新模型参数。由于各个参与方的数据量、计算速度和网络延迟都不一致,训练时间由处理最慢的参与方决定,从而形成木桶效应,影响训练效率。
发明内容
针对现有技术中的问题,本发明的目的在于提供一种基于纵向联邦学习的模型训练方法、系统、设备及介质,解决现有的基于纵向联邦学习的模型训练方法训练效率较低的问题。
为实现上述目的,本发明提供了一种基于纵向联邦学习的模型训练方法,所述方法由多个参与方、异步辅助器和密钥服务器实现,所述方法用于对当前参与方的模型参数进行多轮迭代更新,其中一轮迭代更新包括:
当前参与方获取自身对应的待训练模型和训练样本;
所述当前参与方基于所述待训练模型,计算得到所述训练样本对应的第一预测值,并将所述第一预测值发送至异步辅助器;所述异步辅助器存储有预设损失函数、所述训练样本对应的预设标签值和所述多个参与方中的其余参与方基于所述训练样本的第二预测值;
所述异步辅助器基于所述预设损失函数、预设标签值和所述第二预测值,计算得到当前参与方基于所述训练样本的真实值;
所述当前参与方基于所述第一预测值和所述真实值,计算得到梯度;
所述当前参与方基于所述梯度,对所述待训练模型的参数进行更新,更新后的模型作为下一轮迭代的待训练模型或者当前参与方的最终模型。
可选地,所述当前参与方基于所述第一预测值和所述真实值,计算得到梯度,包括:
所述异步辅助器基于所述第一预测值和所述真实值,计算得到损失值;
所述当前参与方基于所述损失值,计算得到梯度。
可选地,所述当前参与方基于所述损失值,计算得到梯度,包括:
所述异步辅助器基于所述损失值,计算得到所述当前参与方对应的训练偏差;
所述当前参与方基于所述训练偏差,计算得到梯度。
可选地,在所述当前参与方获取自身对应的待训练模型和训练样本的步骤之前,所述方法还包括:
密钥服务器生成同态加密密钥,并将所述同态加密密钥分发至当前参与方、其余参与方以及异步辅助器;
所述将所述第一预测值发送至异步辅助器,包括:
当前参与方基于所述同态加密密钥对所述第一预测值加密后,发送至异步辅助器。
可选地,所述当前参与方基于所述损失值,计算得到梯度,包括:
所述异步辅助器将所述训练偏差发送至密钥服务器;
所述密钥服务器对所述训练偏差进行解密,得到解密后的训练偏差;
所述密钥服务器将所述解密后的训练偏差发送至所述当前参与方;
所述当前参与方基于所述解密后的训练偏差,计算得到梯度。
可选地,在将所述第一预测值发送至异步辅助器的步骤之后,所述方法还包括:
所述异步辅助器对存储的关联当前参与方的第一预测值进行更新。
可选地,所述异步辅助器计算得到当前参与方基于所述训练样本的真实值的公式为:
其中,F(P)表示当前参与方P对应的真实值,L(y,h(B))表示预设损失函数,y表示训练样本对应的预设标签值,h(B)表示其余参与方B基于所述训练样本的第二预测值。
可选地,所述异步辅助器基于所述第一预测值和所述真实值,计算得到损失值的公式为:
其中,LP表示当前参与方P对应的损失值,f(P)表示当前参与方P对应的第一预测值。
可选地,所述异步辅助器基于所述损失值,计算得到所述当前参与方对应的训练偏差,包括:
所述异步辅助器基于所述第一预测值,对所述损失值进行求偏导运算,得到当前参与方对应的训练偏差。
可选地,所述当前参与方基于所述训练偏差,计算得到梯度的公式为:
其中,ΔWP表示当前参与方对应的梯度,δP表示当前参与方对应的训练偏差,WP表示所述待训练模型的参数。
本发明还提供了一种基于纵向联邦学习的模型训练系统,用于实现上述基于纵向联邦学习的模型训练方法,所述系统包括:
模型和样本获取模块,当前参与方获取自身对应的待训练模型和训练样本;
第一预测值计算模块,当前参与方基于所述待训练模型,计算得到所述训练样本对应的第一预测值,并将所述第一预测值发送至异步辅助器;所述异步辅助器存储有预设损失函数、所述训练样本对应的预设标签值和所述多个参与方中的其余参与方基于所述训练样本的第二预测值;
真实值计算模块,异步辅助器基于所述预设损失函数、预设标签值和所述第二预测值,计算得到当前参与方基于所述训练样本的真实值;
梯度计算模块,当前参与方基于所述第一预测值和所述真实值,计算得到梯度;
模型更新模块,当前参与方基于所述梯度,对所述待训练模型的参数进行更新,更新后的模型作为下一轮迭代的待训练模型或者当前参与方的最终模型。
本发明还提供了一种基于纵向联邦学习的模型训练设备,包括:
处理器;
存储器,其中存储有所述处理器的可执行程序;
其中,所述处理器配置为经由执行所述可执行程序来执行上述任意一项基于纵向联邦学习的模型训练方法的步骤。
本发明还提供了一种计算机可读存储介质,用于存储程序,所述程序被处理器执行时实现上述任意一项基于纵向联邦学习的模型训练方法的步骤。
本发明与现有技术相比,具有以下优点及突出性效果:
本发明提供的基于纵向联邦学习的模型训练方法、系统、设备及介质利用多个参与方中的其余参与方的预测值和预设标签值,得到多个参与方中的当前参与方自身的真实值,使得当前参与方去拟合自身的真实值,从而实现模型的异步训练,能在各方处理速度差异较大的情况下,提高模型收敛速率和训练效率;并且允许在训练过程中加入新的参与方,训练系统更为稳定。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显。
图1为本发明一实施例公开的一种基于纵向联邦学习的模型训练方法的示意图;
图2为本发明另一实施例公开的一种基于纵向联邦学习的模型训练方法的示意图;
图3为本发明另一实施例公开的一种基于纵向联邦学习的模型训练方法的示意图;
图4为本发明一实施例公开的一种基于纵向联邦学习的模型训练系统的结构示意图;
图5为本发明另一实施例公开的一种基于纵向联邦学习的模型训练系统的结构示意图;
图6为本发明另一实施例公开的一种基于纵向联邦学习的模型训练系统的结构示意图;
图7为本发明一实施例公开的一种基于纵向联邦学习的模型训练装置的结构示意图;
图8为本发明一实施例公开的一种基于纵向联邦学习的模型训练设备的结构示意图;
图9为本发明一实施例公开的一种计算机可读存储介质的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的实施方式。相反,提供这些实施方式使得本发明将全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的结构,因而将省略对它们的重复描述。
如图1所示,本发明一实施例公开了一种基于纵向联邦学习的模型训练方法,上述方法由多个参与方、异步辅助器和密钥服务器实现。具体而言,多个参与方是不同的训练成员设备,比如可以为银行参与方和商店参与方。训练样本可以为银行和商店交叉的一社区居民群体,由于本实施例是基于纵向联邦学习,所以所有参与方具有相同的样本不同,以及不同的特征空间。比如商店参与方对应的特征为购物相关的,银行参与方对应的特征为存款贷款相关的。也即,不同参与方对应的样本参数不同。
上述异步辅助器为一独立的服务器,用于存储数据和计算数据,比如存储各个参与方的预测值,以及计算训练偏差或者损失值等。密钥服务器主要用于生成同态加密密钥,并分发密钥,以及解密数据等。
上述模型训练方法用于对上述多个参与方中的当前参与方的模型参数进行多轮迭代更新,其中一轮迭代更新包括以下步骤:
S110,当前参与方获取自身对应的待训练模型和训练样本。具体而言,各个参与方对应的待训练模型可以是相同的,各个参与方对应的训练样本可以是相同的,但是不同参与方对应的样本参数是不同的。该步骤中,上述待训练模型获取之后,是保存在当前参与方设备本地进行训练的。不需要由异步辅助器来执行训练。上述待训练模型可以采用现有技术中的模型来实现,本申请对此不作限制。
在本申请的一实施例中,可以对获取到的训练样本进行分段,形成多个多个样本段,然后后续步骤中执行时,每次采用一个样本段来进行执行,循环执行,直至完成所有样本段的训练步骤,这样有利于减小每次迭代训练过程的计算量,提高模型训练效率。
S120,上述当前参与方基于上述待训练模型,计算得到上述训练样本对应的第一预测值,并将上述第一预测值发送至异步辅助器。上述异步辅助器存储有预设损失函数、上述训练样本对应的预设标签值和上述多个参与方中的其余参与方基于上述训练样本的第二预测值。具体而言,也即将训练样本作为上述待训练模型的输入,就计算得到与当前参与方的训练样本参数对应的第一预测值。
本申请中,所有的参与方可以同时开始训练,但训练的进度可能不同,也即不同参与方迭代的轮次可能是不同的。其余参与方也会基于自身的样本参数,分别计算得到其最新的迭代轮次中各自的第二预测值,并将各自的第二预测值发送给异步辅助器。这样异步辅助器就能汇总各个参与方的第二预测值。由于不同参与方对应的样本参数不同,所以模型拟合时,一般综合考虑所有参与方模型的预测值进行拟合,所以上述预设标签值是和所有参与方的训练目标相关联,不是仅关联某一个参与方的训练目标,比如可以基于所有参与方的训练目标求和得到。
S130,上述异步辅助器基于上述预设损失函数、预设标签值和上述第二预测值,计算得到当前参与方基于上述训练样本的真实值。具体而言,本实施例中,基于上述预设损失函数、预设标签值和上述多个参与方中的其余参与方基于上述训练样本的第二预测值,来计算其余参与方的损失函数负梯度,也即可以得到某一个参与方(本实施例中为当前参与方)的训练目标即其真实值;使得当前参与方去拟合其余参与方的损失函数负梯度,而不是去拟合上述预设标签值,从而实现模型的异步训练。
该步骤采用如下公式(1)来计算真实值:
其中,F(P)表示当前参与方P对应的真实值,L(y,h(B))表示预设损失函数,y表示训练样本对应的预设标签值,由于各个参与方可能迭代进度不一致,所以本实施例中h(B)表示其余参与方B基于上述训练样本最新一轮迭代训练过程中生成的第二预测值。由于在其他实施例中,其余参与方B可能有多个,所以h(B)也可能存在多个。
其中,上述预设损失函数可以采用现有技术实现,本申请对此不作限制。
S140,当前参与方基于上述第一预测值和上述真实值,计算得到梯度。具体来说,可以利用上述第一预测值和上述真实值的差值计算损失值,然后异步辅助器基于上述第一预测值,对上述损失值进行求偏导运算,得到当前参与方对应的训练偏差,然后当前参与方利用训练偏差计算得到梯度。该步骤的实现可参考现有技术实施。
以及S150,当前参与方基于上述梯度,对待训练模型的参数进行更新,更新后的模型作为下一轮迭代的待训练模型或者当前参与方的最终模型。具体而言,梯度即为参数的变化量,所以计算得到梯度之后,就可以对参数进行更新。示例性地,当上一步骤中,计算的损失值满足预设收敛条件时,就将更新后的模型作为当前参与方的最终模型。若未达到预设收敛条件,则继续将更新后的模型作为下一轮迭代的待训练模型。
如图2所示,本发明另一实施例公开了一种基于纵向联邦学习的模型训练方法,该方法在上述实施例的基础上,包括步骤:
S110,当前参与方获取自身对应的待训练模型和训练样本。
S120,上述当前参与方基于上述待训练模型,计算得到上述训练样本对应的第一预测值,并将上述第一预测值发送至异步辅助器。
S230,上述异步辅助器对存储的关联当前参与方的第一预测值进行更新,并基于上述预设损失函数、预设标签值和上述第二预测值,计算得到当前参与方基于上述训练样本的真实值。
S240,异步辅助器基于上述第一预测值和上述真实值,计算得到损失值。具体来说,该步骤利用如下公式(2)计算:
其中,LP表示当前参与方P对应的损失值,f(P)表示当前参与方P对应的第一预测值。
S250,异步辅助器基于上述损失值,计算得到上述当前参与方对应的训练偏差。具体来说,该步骤利用如下公式(3)计算:
其中,δP表示当前参与方对应的训练偏差。
S260,当前参与方基于上述训练偏差,计算得到梯度。具体来说,该步骤利用如下公式(4)计算:
其中,ΔWP表示当前参与方对应的梯度,WP表示所述待训练模型的参数。
以及S150,当前参与方基于上述梯度,对待训练模型的参数进行更新,更新后的模型作为下一轮迭代的待训练模型或者当前参与方的最终模型。
如图3所示,本发明另一实施例公开了一种基于纵向联邦学习的模型训练方法,该方法包括步骤:
S310,密钥服务器生成同态加密密钥,并将上述同态加密密钥分发至当前参与方、其余参与方以及异步辅助器。
S110,当前参与方获取自身对应的待训练模型和训练样本。
S330,上述当前参与方基于上述待训练模型,计算得到上述训练样本对应的第一预测值,并基于上述同态加密密钥对上述第一预测值加密后,发送至异步辅助器。
S230,上述异步辅助器对存储的关联当前参与方的第一预测值进行更新,并基于上述预设损失函数、预设标签值和上述第二预测值,计算得到当前参与方基于上述训练样本的真实值。
S240,异步辅助器基于上述第一预测值和上述真实值,计算得到损失值。
S360,异步辅助器基于上述损失值,计算得到上述当前参与方对应的训练偏差,并将上述训练偏差发送至密钥服务器。
S370,密钥服务器对上述训练偏差进行解密,得到解密后的训练偏差,并将解密后的训练偏差发送至当前参与方。
S380,上述当前参与方基于解密后的训练偏差,计算得到梯度。
以及S150,当前参与方基于梯度,对上述待训练模型的参数进行更新,更新后的模型作为下一轮迭代的待训练模型或者当前参与方的最终模型。
这样实现利用独立的密钥服务器对数据进行加密和解密,保证了数据的安全性。
本发明另一实施例公开了一种基于纵向联邦学习的模型训练方法,该方法中包含有两个参与方:第一参与方和第二参与方,第一参与方的训练样本的第一特征值为x1,特征对应的第一初始权重为W1,第一参与方存储有预设标签值z。第二参与方的训练样本的第二特征值为x2,特征对应的第二初始权重为W2。待训练模型为线性回归模型。那么,可以基于公式(5)得到第一参与方的训练偏差为:
δ1=x1W1+x2W2-z (5)
该方法包括步骤:
S410,第一参与方基于第一初始权重、第一特征值和预设标签值z,计算得到第一参与方的损失函数负梯度,并发送至异步辅助器。
S420,异步辅助器对存储的第一参与方的损失函数负梯度进行更新,并基于上述损失函数负梯度、第一初始权重和第一特征值,计算得到第一参与方的训练偏差,并将该训练偏差发送至密钥服务器。以及
S430,密钥服务器对训练偏差进行解密后,发送给第一参与方。以及S440,第一参与方依据解密后的训练偏差,对线性回归模型的参数进行更新。
本实施例中,第一参与方的训练偏差和第二参与方的训练偏差相同。
需要说明的是,本申请中公开的上述所有实施例可以进行自由组合,组合后得到的技术方案也在本申请的保护范围之内。
如图4所示,本发明一实施例还公开了一种基于纵向联邦学习的模型训练系统4,该系统包括:
模型和样本获取模块41,当前参与方获取自身对应的待训练模型和训练样本。
第一预测值计算模块42,当前参与方基于所述待训练模型,计算得到所述训练样本对应的第一预测值,并将所述第一预测值发送至异步辅助器。所述异步辅助器存储有预设损失函数、所述训练样本对应的预设标签值和其余参与方基于所述训练样本的第二预测值。
真实值计算模块43,异步辅助器基于所述预设损失函数、预设标签值和所述第二预测值,计算得到当前参与方基于所述训练样本的真实值。
梯度计算模块44,当前参与方基于所述第一预测值和所述真实值,计算得到梯度。
模型更新模块45,当前参与方基于所述梯度,对所述待训练模型的参数进行更新,更新后的模型作为下一轮迭代的待训练模型或者当前参与方的最终模型。
如图5所示,本发明一实施例还公开了一种基于纵向联邦学习的模型训练系统5,该系统包括上述实施例公开的模型和样本获取模块41、第一预测值计算模块42、模型更新模块45以及如下模块:
更新与计算模块53,上述异步辅助器对存储的关联当前参与方的第一预测值进行更新,并基于上述预设损失函数、预设标签值和上述第二预测值,计算得到当前参与方基于上述训练样本的真实值。
损失计算模块54,异步辅助器基于上述第一预测值和上述真实值,计算得到损失值。
偏差计算模块55,异步辅助器基于上述损失值,计算得到上述当前参与方对应的训练偏差。
第二梯度计算模块56,当前参与方基于上述训练偏差,计算得到梯度。
如图6所示,本发明一实施例还公开了一种基于纵向联邦学习的模型训练系统6,该系统包括上述实施例公开的模型和样本获取模块41、更新与计算模块53、损失计算模块54、模型更新模块45以及如下模块:
密钥生成分发模块61,密钥服务器生成同态加密密钥,并将上述同态加密密钥分发至当前参与方、其余参与方以及异步辅助器。
第一预测值生成加密模块63,上述当前参与方基于上述待训练模型,计算得到上述训练样本对应的第一预测值,并基于上述同态加密密钥对上述第一预测值加密后,发送至异步辅助器。
偏差生成发送模块66,异步辅助器基于上述损失值,计算得到上述当前参与方对应的训练偏差,并将上述训练偏差发送至密钥服务器。
偏差解密模块67,密钥服务器对上述训练偏差进行解密,得到解密后的训练偏差,并将解密后的训练偏差发送至当前参与方。
第三梯度计算模块68,上述当前参与方基于解密后的训练偏差,计算得到梯度。
可以理解的是,本发明的基于纵向联邦学习的模型训练系统还包括其他支持基于纵向联邦学习的模型训练系统运行的现有功能模块。图4至图6显示的基于纵向联邦学习的模型训练系统仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
本实施例中的基于纵向联邦学习的模型训练系统用于实现上述的基于纵向联邦学习的模型训练的方法,因此对于基于纵向联邦学习的模型训练系统的具体实施步骤可以参照上述对基于纵向联邦学习的模型训练的方法的描述,此处不再赘述。
如图7所示,本发明一实施例还公开了一种基于纵向联邦学习的模型训练装置,该装置包括上述当前参与方701、其余参与方702、密钥服务器703以及异步辅助器704。需要说明的是,该附图中的其余参与方702仅示出了两个,但本申请对其数量不作限制。
本发明一实施例还公开了一种基于纵向联邦学习的模型训练设备,包括处理器和存储器,其中存储器存储有所述处理器的可执行程序;处理器配置为经由执行可执行程序来执行上述基于纵向联邦学习的模型训练方法中的步骤。图8是本发明公开的基于纵向联邦学习的模型训练设备的结构示意图。下面参照图8来描述根据本发明的这种实施方式的电子设备600。图8显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图8所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:至少一个处理单元610、至少一个存储单元620、连接不同平台组件(包括存储单元620和处理单元610)的总线630、显示单元640等。
其中,存储单元存储有程序代码,程序代码可以被处理单元610执行,使得处理单元610执行本说明书上述基于纵向联邦学习的模型训练方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,处理单元610可以执行如图1中所示的步骤。
存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(ROM)6203。
存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备600也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器660可以通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储平台等。
本发明还公开了一种计算机可读存储介质,用于存储程序,所述程序被执行时实现上述基于纵向联邦学习的模型训练方法中的步骤。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行本说明书上述基于纵向联邦学习的模型训练方法中描述的根据本发明各种示例性实施方式的步骤。
如上所示,该实施例的计算机可读存储介质的程序在执行时,利用其余参与方的预测值和预设标签值,得到当前参与方自身的真实值,使得当前参与方去拟合自身的真实值,从而实现模型的异步训练,能在各方处理速度差异较大的情况下,提高模型收敛速率和训练效率;并且允许在训练过程中加入新的参与方,训练系统更为稳定。
图9是本发明的计算机可读存储介质的结构示意图。参考图9所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品800,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
本发明实施例提供的基于纵向联邦学习的模型训练方法、系统、设备及介质利用多个参与方中的其余参与方的预测值和预设标签值,得到多个参与方中的当前参与方自身的真实值,使得当前参与方去拟合自身的真实值,从而实现模型的异步训练,能在各方处理速度差异较大的情况下,提高模型收敛速率和训练效率;并且允许在训练过程中加入新的参与方,训练系统更为稳定。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (13)
1.一种基于纵向联邦学习的模型训练方法,其特征在于,所述方法由多个参与方、异步辅助器和密钥服务器实现,所述方法用于对所述多个参与方中的当前参与方的模型参数进行多轮迭代更新,其中一轮迭代更新包括:
当前参与方获取自身对应的待训练模型和训练样本;
所述当前参与方基于所述待训练模型,计算得到所述训练样本对应的第一预测值,并将所述第一预测值发送至异步辅助器;所述异步辅助器存储有预设损失函数、所述训练样本对应的预设标签值和所述多个参与方中的其余参与方基于所述训练样本的第二预测值;
所述异步辅助器基于所述预设损失函数、预设标签值和所述第二预测值,计算得到当前参与方基于所述训练样本的真实值;
所述当前参与方基于所述第一预测值和所述真实值,计算得到梯度;
所述当前参与方基于所述梯度,对所述待训练模型的参数进行更新,更新后的模型作为下一轮迭代的待训练模型或者当前参与方的最终模型。
2.如权利要求1所述的基于纵向联邦学习的模型训练方法,其特征在于,所述当前参与方基于所述第一预测值和所述真实值,计算得到梯度,包括:
所述异步辅助器基于所述第一预测值和所述真实值,计算得到损失值;
所述当前参与方基于所述损失值,计算得到梯度。
3.如权利要求2所述的基于纵向联邦学习的模型训练方法,其特征在于,所述当前参与方基于所述损失值,计算得到梯度,包括:
所述异步辅助器基于所述损失值,计算得到所述当前参与方对应的训练偏差;
所述当前参与方基于所述训练偏差,计算得到梯度。
4.如权利要求3所述的基于纵向联邦学习的模型训练方法,其特征在于,在所述当前参与方获取自身对应的待训练模型和训练样本的步骤之前,所述方法还包括:
密钥服务器生成同态加密密钥,并将所述同态加密密钥分发至当前参与方、其余参与方以及异步辅助器;
所述将所述第一预测值发送至异步辅助器,包括:
当前参与方基于所述同态加密密钥对所述第一预测值加密后,发送至异步辅助器。
5.如权利要求4所述的基于纵向联邦学习的模型训练方法,其特征在于,所述当前参与方基于所述损失值,计算得到梯度,包括:
所述异步辅助器将所述训练偏差发送至密钥服务器;
所述密钥服务器对所述训练偏差进行解密,得到解密后的训练偏差;
所述密钥服务器将所述解密后的训练偏差发送至所述当前参与方;
所述当前参与方基于所述解密后的训练偏差,计算得到梯度。
6.如权利要求1所述的基于纵向联邦学习的模型训练方法,其特征在于,在将所述第一预测值发送至异步辅助器的步骤之后,所述方法还包括:
所述异步辅助器对存储的关联当前参与方的第一预测值进行更新。
9.如权利要求8所述的基于纵向联邦学习的模型训练方法,其特征在于,所述异步辅助器基于所述损失值,计算得到所述当前参与方对应的训练偏差,包括:
所述异步辅助器基于所述第一预测值,对所述损失值进行求偏导运算,得到当前参与方对应的训练偏差。
11.一种基于纵向联邦学习的模型训练系统,用于实现如权利要求1所述的基于纵向联邦学习的模型训练方法,其特征在于,所述系统包括:
模型和样本获取模块,当前参与方获取自身对应的待训练模型和训练样本;
第一预测值计算模块,当前参与方基于所述待训练模型,计算得到所述训练样本对应的第一预测值,并将所述第一预测值发送至异步辅助器;所述异步辅助器存储有预设损失函数、所述训练样本对应的预设标签值和所述多个参与方中的其余参与方基于所述训练样本的第二预测值;
真实值计算模块,异步辅助器基于所述预设损失函数、预设标签值和所述第二预测值,计算得到当前参与方基于所述训练样本的真实值;
梯度计算模块,当前参与方基于所述第一预测值和所述真实值,计算得到梯度;
模型更新模块,当前参与方基于所述梯度,对所述待训练模型的参数进行更新,更新后的模型作为下一轮迭代的待训练模型或者当前参与方的最终模型。
12.一种基于纵向联邦学习的模型训练设备,其特征在于,包括:
处理器;
存储器,其中存储有所述处理器的可执行程序;
其中,所述处理器配置为经由执行所述可执行程序来执行权利要求1至10中任意一项所述基于纵向联邦学习的模型训练方法的步骤。
13.一种计算机可读存储介质,用于存储程序,其特征在于,所述程序被处理器执行时实现权利要求1至10中任意一项所述基于纵向联邦学习的模型训练方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111405979.7A CN114118442A (zh) | 2021-11-24 | 2021-11-24 | 基于纵向联邦学习的模型训练方法、系统、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111405979.7A CN114118442A (zh) | 2021-11-24 | 2021-11-24 | 基于纵向联邦学习的模型训练方法、系统、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114118442A true CN114118442A (zh) | 2022-03-01 |
Family
ID=80372074
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111405979.7A Pending CN114118442A (zh) | 2021-11-24 | 2021-11-24 | 基于纵向联邦学习的模型训练方法、系统、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114118442A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114330759A (zh) * | 2022-03-08 | 2022-04-12 | 富算科技(上海)有限公司 | 一种纵向联邦学习模型的训练方法及系统 |
CN114707606A (zh) * | 2022-04-11 | 2022-07-05 | 中国电信股份有限公司 | 基于联邦学习的数据处理方法及装置、设备、存储介质 |
CN114707041A (zh) * | 2022-04-11 | 2022-07-05 | 中国电信股份有限公司 | 消息推荐方法、装置、计算机可读介质及电子设备 |
CN114996317A (zh) * | 2022-07-05 | 2022-09-02 | 中国电信股份有限公司 | 基于纵向联邦学习的异步优化方法、装置及存储介质 |
-
2021
- 2021-11-24 CN CN202111405979.7A patent/CN114118442A/zh active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114330759A (zh) * | 2022-03-08 | 2022-04-12 | 富算科技(上海)有限公司 | 一种纵向联邦学习模型的训练方法及系统 |
CN114707606A (zh) * | 2022-04-11 | 2022-07-05 | 中国电信股份有限公司 | 基于联邦学习的数据处理方法及装置、设备、存储介质 |
CN114707041A (zh) * | 2022-04-11 | 2022-07-05 | 中国电信股份有限公司 | 消息推荐方法、装置、计算机可读介质及电子设备 |
CN114707041B (zh) * | 2022-04-11 | 2023-12-01 | 中国电信股份有限公司 | 消息推荐方法、装置、计算机可读介质及电子设备 |
CN114707606B (zh) * | 2022-04-11 | 2023-12-22 | 中国电信股份有限公司 | 基于联邦学习的数据处理方法及装置、设备、存储介质 |
CN114996317A (zh) * | 2022-07-05 | 2022-09-02 | 中国电信股份有限公司 | 基于纵向联邦学习的异步优化方法、装置及存储介质 |
CN114996317B (zh) * | 2022-07-05 | 2024-02-23 | 中国电信股份有限公司 | 基于纵向联邦学习的异步优化方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114118442A (zh) | 基于纵向联邦学习的模型训练方法、系统、设备及介质 | |
CN109002861B (zh) | 联邦建模方法、设备及存储介质 | |
EP3659292B1 (en) | Secure multi-party computation with no trusted initializer | |
US20180349740A1 (en) | Machine learning based on homomorphic encryption | |
US20190295073A1 (en) | Secure data processing transactions | |
CN111523673B (zh) | 模型训练方法、装置及系统 | |
CN112149171A (zh) | 联邦神经网络模型的训练方法、装置、设备及存储介质 | |
CN114696990B (zh) | 基于全同态加密的多方计算方法、系统及相关设备 | |
CN112347500B (zh) | 分布式系统的机器学习方法、装置、系统、设备及存储介质 | |
CN111582508A (zh) | 一种基于联邦学习框架的策略制定方法、装置和电子设备 | |
CN114186256B (zh) | 神经网络模型的训练方法、装置、设备和存储介质 | |
US20150172044A1 (en) | Order-preserving encryption system, encryption device, decryption device, encryption method, decryption method, and programs thereof | |
CN115730333A (zh) | 基于秘密分享和同态加密的安全树模型构建方法和装置 | |
Aleksandrov et al. | Diagonal stability of a class of discrete‐time positive switched systems with delay | |
CN112394974A (zh) | 代码变更的注释生成方法、装置、电子设备及存储介质 | |
CN113051586A (zh) | 联邦建模系统及方法、联邦模型预测方法、介质、设备 | |
Alshamrani et al. | IoT data security with DNA-genetic algorithm using blockchain technology | |
CN111523556A (zh) | 模型训练方法、装置及系统 | |
CN114881247A (zh) | 基于隐私计算的纵向联邦特征衍生方法、装置、介质 | |
CN113965313B (zh) | 基于同态加密的模型训练方法、装置、设备以及存储介质 | |
CN114492850A (zh) | 基于联邦学习的模型训练方法、设备、介质及程序产品 | |
LaMacchia | The long road ahead to transition to post-quantum cryptography | |
CN111292722B (zh) | 异步联合架构的模型训练方法、终端、服务器及存储装置 | |
CN113055184A (zh) | 数据加解密方法及装置 | |
CN112149834B (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 |