一种模型的联合训练方法、设备、存储介质及程序产品技术

技术编号:28504257 阅读:23 留言:0更新日期:2021-05-19 22:54
本申请提供了一种模型的联合训练方法、装置、设备、计算机可读存储介质及程序产品,应用于纵向联邦学习的被动方,被动方和纵向联邦学习的主动方分别利用自身的特征数据进行模型训练,所述方法包括:获取主动方发送的第二密文训练结果;获取第一密文训练结果和已训练轮数;基于第一密文训练结果和第二密文训练结果确定第一加密梯度;当已训练轮数满足同步条件时,将第一加密梯度发送至协调方,以使协调方基于第一加密梯度确定第一解密梯度;接收协调方发送的第一解密梯度,并基于第一解密梯度对自身的训练模型进行更新,得到更新后的训练模型。通过改进纵向联邦学习中模型训练时数据的交互流程,能够缩短模型的训练耗时,提高模型的训练效率。的训练效率。的训练效率。

【技术实现步骤摘要】
一种模型的联合训练方法、设备、存储介质及程序产品


[0001]本申请涉及人工智能
,涉及但不限于一种模型的联合训练方法、设备、存储介质及程序产品。

技术介绍

[0002]近年来,回归模型被广泛地应用于解决各种问题。当回归模型的训练数据纵向分布于各个数据方时,由于各个数据方所拥有的特征数据可能涉及隐私,为避免隐私数据泄露,各数据方可以通过纵向联邦学习的方式进行模型的联合训练。
[0003]但是,相关技术中在基于纵向联邦建模时,梯度计算只能由主动方或被动方的其中一方完成,使得模型的训练效率较低;并且每计算得到一个梯度,均需要将其发送至协调方,导致传输数据量大、通讯耗时较长,尤其在大数据量以及多参与方的场景中,通讯耗时甚至超过计算耗时,严重影响模型的训练效率。

技术实现思路

[0004]本申请实施例提供一种模型的联合训练方法、装置、设备、计算机可读存储介质及计算机程序产品,能够缩短模型的训练耗时,提高模型的训练效率。
[0005]本申请实施例的技术方案是这样实现的:
[0006]本申请实施例提供一种模型的联合训练方法,应用于纵向联邦学习的被动方,所述被动方和所述纵向联邦学习的主动方分别利用自身的特征数据进行模型训练,所述方法包括:
[0007]获取所述主动方发送的第二密文训练结果;
[0008]获取第一密文训练结果和已训练轮数;
[0009]基于所述第一密文训练结果和所述第二密文训练结果确定第一加密梯度;
[0010]当所述已训练轮数满足同步条件时,将所述第一加密梯度发送至协调方,以使所述协调方基于所述第一加密梯度确定第一解密梯度;
[0011]接收所述协调方发送的所述第一解密梯度,并基于所述第一解密梯度对自身的训练模型进行更新,得到更新后的训练模型。
[0012]本申请实施例提供一种模型的联合训练方法,应用于纵向联邦学习的协调方,所述方法包括:
[0013]生成用于加密的公钥和用于解密的私钥;
[0014]将所述公钥分别发送至进行模型训练的被动方和主动方,以使所述被动方和所述主动方分别基于所述公钥确定第一加密梯度和第二加密梯度;
[0015]接收所述被动方发送的第一加密梯度和所述主动方发送的第二加密梯度;
[0016]基于所述私钥分别对所述第一加密梯度和所述第二加密梯度进行解密,得到第一解密梯度和第二解密梯度;
[0017]将所述第一解密梯度和所述第二解密梯度分别发送至所述被动方和所述主动方,
以使所述被动方和所述主动方分别基于所述第一解密梯度和所述第二解密梯度更新各自的训练模型。
[0018]本申请实施例提供一种模型的联合训练装置,应用于纵向联邦学习的被动方,所述被动方和所述纵向联邦学习的主动方分别利用自身的特征数据进行模型训练,所述装置包括:
[0019]第一获取模块,用于获取所述主动方发送的第二密文训练结果;
[0020]第二获取模块,用于获取第一密文训练结果和已训练轮数;
[0021]第一确定模块,用于基于所述第一密文训练结果和所述第二密文训练结果确定第一加密梯度;
[0022]第一发送模块,用于当所述已训练轮数满足同步条件时,将所述第一加密梯度发送至协调方,以使所述协调方基于所述第一加密梯度确定第一解密梯度;
[0023]第一接收模块,用于接收所述协调方发送的所述第一解密梯度;
[0024]第一更新模块,用于基于所述第一解密梯度对自身的训练模型进行更新,得到更新后的训练模型。
[0025]本申请实施例提供一种模型的联合训练装置,应用于纵向联邦学习的协调方,所述装置包括:
[0026]生成模块,用于生成用于加密的公钥和用于解密的私钥;
[0027]第二发送模块,用于将所述公钥分别发送至进行模型训练的被动方和主动方,以使所述被动方和所述主动方分别基于所述公钥确定第一加密梯度和第二加密梯度;
[0028]第二接收模块,用于接收所述被动方发送的第一加密梯度和所述主动方发送的第二加密梯度;
[0029]解密模块,用于基于所述私钥分别对所述第一加密梯度和所述第二加密梯度进行解密,得到第一解密梯度和第二解密梯度;
[0030]第三发送模块,用于将所述第一解密梯度和所述第二解密梯度分别发送至所述被动方和所述主动方,以使所述被动方和所述主动方分别基于所述第一解密梯度和所述第二解密梯度更新各自的训练模型。
[0031]本申请实施例提供一种模型的联合训练设备,所述设备包括:
[0032]存储器,用于存储可执行指令;
[0033]处理器,用于执行所述存储器中存储的可执行指令时,实现本申请实施例提供的方法。
[0034]本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有可执行指令,用于引起处理器执行时,实现本申请实施例提供的方法。
[0035]本申请实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现本申请实施例提供的方法。
[0036]本申请实施例具有以下有益效果:
[0037]本申请实施例提供的模型的联合训练方法,应用于纵向联邦学习的被动方,纵向联邦学习的被动方和主动方分别利用自身的特征数据进行模型训练,如此,将原先单一的主动方训练模型改进为由被动方和主动方各自利用自身的特征数据进行模型训练,能够缩短模型的训练耗时,提高模型的训练效率;被动方进行模型训练时,首先获取所述主动方发
送的第二密文训练结果,然后获取第一密文训练结果和已训练轮数,基于所述第一密文训练结果和所述第二密文训练结果确定第一加密梯度,当所述已训练轮数满足同步条件时,将确定的第一加密梯度发送至纵向联邦学习的协调方,以使协调方对第一加密梯度进行解密得到第一解密梯度,然后协调方将解密得到的第一解密梯度发送至被动方;被动方基于所述第一解密梯度对自身的训练模型进行更新,从而得到更新后的训练模型,完成模型的一次同步更新,如此,在已训练轮数满足同步条件时才会将第一加密梯度发送至协调方进行一次同步更新,在不满足同步条件时不会向协调方发送第一加密梯度,被动方继续利用自身的特征数据进行模型训练,从而能够减少传输的数据量、减少通讯耗时,进一步缩短模型的训练耗时,提高模型的训练效率。
附图说明
[0038]图1为本申请实施例提供的模型的联合训练方法的一种网络架构示意图;
[0039]图2为本申请实施例提供的模型的联合训练设备的组成结构示意图;
[0040]图3为本申请实施例提供的模型的联合训练方法的一种实现流程示意图;
[0041]图4为本申请实施例提供的模型的联合训练方法的另一种实现流程示意图;
[0042]图5为本申请实施例提供的模型的联合训练方法的再一种实现流程示意图;
[0043]图6为本申请实施例提供的模型的联合训练方法的又一种实现流程示意图;
[0044]图7为本申请实施例提供的模型的联合训练方法本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种模型的联合训练方法,其特征在于,应用于纵向联邦学习的被动方,所述被动方和所述纵向联邦学习的主动方分别利用自身的特征数据进行模型训练,所述方法包括:获取所述主动方发送的第二密文训练结果;获取第一密文训练结果和已训练轮数;基于所述第一密文训练结果和所述第二密文训练结果确定第一加密梯度;当所述已训练轮数满足同步条件时,将所述第一加密梯度发送至协调方,以使所述协调方基于所述第一加密梯度确定第一解密梯度;接收所述协调方发送的所述第一解密梯度,并基于所述第一解密梯度对自身的训练模型进行更新,得到更新后的训练模型。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:当所述已训练轮数不满足同步条件时,基于预设步长对所述第一加密梯度进行优化,得到优化后的第一加密梯度;基于所述优化后的第一加密梯度对自身的训练模型进行更新,得到更新后的训练模型。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:基于第一预设阈值确定所述已训练轮数是否满足同步条件;当所述已训练轮数能够整除所述第一预设阈值时,确定所述已训练轮数满足同步条件;当所述已训练轮数不能整除所述第一预设阈值时,确定所述已训练轮数不满足同步条件。4.根据权利要求1所述的方法,其特征在于,所述获取第一密文训练结果,包括:接收所述协调方发送的公钥;获取用于联合训练的样本数据和自身的训练模型;将所述样本数据输入至所述训练模型进行训练,得到第一训练结果;基于所述公钥对所述第一训练结果进行加密,得到第一密文训练结果。5.根据权利要求4所述的方法,其特征在于,所述获取用于联合训练的样本数据,包括:从所述主动方获取本轮训练样本的标识;基于所述标识,从自身的特征数据中筛选出所述标识对应的数据;将所述标识对应的数据确定为用于联合训练的样本数据。6.根据权利要求5所述的方法,其特征在于,所述基于所述第一密文训练结果和所述第二密文训练结果确定第一加密梯度,包括:对所述第一密文训练结果和所述第二密文训练结果进行回归分析,得到加密残差值;基于所述标识对应的数据和所述加密残差值确定第一加密梯度。7.根据权利要求4所述的方法,其特征在于,所述方法还包括:接收所述协调方发送的收敛信息;当所述收敛信息为已收敛或已完成训练时,将所述更新后的训练模型确定为训练好的目标模型。8.根据权利要求7所述的方法,其特征在于,所述收敛信息由所述协调方基于所述第一解密梯度和预设梯度范数阈值确定;或者,所述收敛信息由所述协调方基于已训练轮数和
预设轮数阈值确定;或者,所述收敛信息由所述协调方基于自身发送的第一损失值和所述主动方发送的第二损失值确定;当所述收敛信息由所述协调方基于自身发送的第一损失值和所述主动方发送的第二损失值确定时,所述方法还包括:基于所述公钥和所述第一训练结果,确定本轮训练的第一损失值;将所述第一损失值发送至所述协调方,以使所述协调方基于所述第一损失值和所述主动方发送的第二损失值确定本轮训练的损失值,并基于所述损失值确定本轮训练的收敛信息。9.一种模型的联合训练方法,其特征在于,应用于纵向联邦学习的协调方,所述方法包括:生成用于加密的公钥和用于解密的私钥;将所述公钥分别发送至进行模型训练的被动方和主动方,以使所述被动方和所述主动方...

【专利技术属性】
技术研发人员:吴玙谭明超范涛马国强魏文斌郑会钿陈天健杨强
申请(专利权)人:深圳前海微众银行股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1