保护数据隐私的双方联合训练业务预测模型的方法和装置制造方法及图纸

技术编号:24207368 阅读:52 留言:0更新日期:2020-05-20 15:15
本说明书实施例提供一种保护数据隐私的双方联合训练业务预测模型的方法和装置,其中第一方和第二方分别拥有一部分特征数据,分别维护第一和第二参数部分,借助于第三方进行联合训练。在模型迭代时,双方各自计算其特征矩阵与参数的乘积结果,第一方将其乘积结果用第三方公钥同态加密后发送给拥有标签的第二方,由第二方进行同态运算,得到加密误差向量。然后,基于该加密误差向量,双方各自通过同态添加混淆元素的方式,将混淆后的加密梯度发送给第三方,使其解密,再对解密后的混淆梯度去混淆,得到对应的梯度,由此更新对应的参数。如此实现保护数据隐私的安全联合训练。

The method and device of joint training business prediction model for data privacy protection

【技术实现步骤摘要】
保护数据隐私的双方联合训练业务预测模型的方法和装置
本说明书一个或多个实施例涉及数据安全和机器学习领域,具体地,涉及双方联合训练业务预测模型的方法和装置。
技术介绍
机器学习所需要的数据往往会涉及到多个领域。例如在基于机器学习的商户分类分析场景中,电子支付平台拥有商户的交易流水数据,电子商务平台存储有商户的销售数据,银行机构拥有商户的借贷数据。数据往往以孤岛的形式存在。由于行业竞争、数据安全、用户隐私等问题,数据整合面临着很大阻力,将分散在各个平台的数据整合在一起训练机器学习模型难以实现。在保证数据不泄露的前提下,使用多方数据联合训练机器学习模型变成目前的一大挑战。常用的机器学习模型包括,逻辑回归模型,线性回归模型,以及神经网络模型等,其中逻辑回归模型可以有效地执行样本分类预测等任务,线性回归模型可以有效地预测样本的回归值,神经网络模型可以通过多层神经元的组合,执行各种预测任务。以上这些模型的训练过程中,都会涉及利用特征数据与模型参数数据之间的运算得到预测结果,以及根据预测结果确定出梯度,进而调整模型参数的过程。在多方共同训练机器学习模型的情况下,如何在不泄露各方隐私数据,包括特征数据和模型参数数据,的情况下,协同进行上述各个阶段的运算,是实际要解决的问题。因此,希望提供改进的方案,在多方联合训练业务预测模型的情况下,保证各方的隐私数据不泄露,确保数据安全。
技术实现思路
本说明书一个或多个实施例描述了双方联合训练业务预测模型的方法和装置,训练过程借助于中立的第三方,通过同态加密的方式,保证数据隐私不泄露,确保联合训练中隐私数据的安全。根据第一方面,提供了一种保护数据隐私的双方联合训练业务预测模型的方法,所述双方包括第一方和第二方,所述第一方存储有多个业务对象的第一特征部分构成的第一特征矩阵XA,并维护对应的第一参数部分WA;所述第二方存储有所述多个业务对象的第二特征部分构成的第二特征矩阵XB,和标签值构成的标签向量Y,并维护对应的第二参数部分WB;所述方法应用于所述第二方,包括:本地计算第二特征矩阵XB与第二参数部分WB的第二乘积结果;从所述第一方接收第一加密乘积,该第一加密乘积为,使用中立的第三方的公钥和同态加密算法,对第一特征矩阵XA与第一参数部分WA的第一乘积结果加密得到的;基于对所述第一加密乘积,第二乘积结果,以及所述标签向量进行同态运算,得到加密误差向量E;对该加密误差向量E和第二特征矩阵XB进行同态操作下的矩阵相乘,得到对第二梯度加密的第二加密梯度;在所述第二加密梯度基础上同态添加第二混淆元素,生成第二加密混淆梯度,并将其发送给所述第三方;从所述第三方接收针对第二加密混淆梯度解密的第二混淆梯度;根据所述第二混淆梯度和第二混淆元素,恢复得到第二梯度;根据所述第二梯度,更新所述第二参数部分。在各种实施例中,所述业务对象包括以下之一:用户,商户,商品,事件;所述业务预测模型用于预测所述业务对象的分类或回归值。在一个实施例中,所述业务预测模型为线性回归模型;在这样的情况下,可以通过以下方式得到加密误差向量E:基于所述第一加密乘积和所述第二乘积结果的同态加和操作,得到加密预测结果;计算该加密预测结果和所述标签向量Y的加密值的同态差值,作为所述加密误差向量E。在另一实施例中,所述业务预测模型为逻辑回归模型;此时,可以根据sigmoid函数的泰勒展开形式,基于所述第一加密乘积和所述第二乘积结果的同态运算得到加密预测结果,对该加密预测结果和所述标签向量Y的加密值进行同态差值运算,得到所述加密误差向量E。进一步的,在一个例子中,泰勒展开可以采用多阶展开;此时,所述第二乘积结果包括,第二特征矩阵XB与第二参数部分WB的多阶第二乘积;所述第一乘积结果包括,第一特征矩阵XA与第一参数部分WA的多阶第一乘积;得到加密预测结果的过程可以包括,根据sigmoid函数的多阶泰勒展开形式,基于所述多阶第一乘积和所述多阶第二乘积之间的同态加和操作和同态相乘操作,得到加密预测结果。根据一种实施方式,第二加密混淆梯度通过以下方式生成:随机生成与所述第二加密梯度维度相同的第二掩码向量,并使用所述第三方的公钥和所述同态加密算法将其加密,得到第二加密掩码向量;在所述第二加密梯度上同态添加所述第二加密掩码向量,得到所述第二加密混淆梯度;相应的,恢复第二梯度的步骤可以包括:从所述第二混淆梯度中减去所述第二掩码向量,得到第二梯度。根据一个实施例,上述第二方执行的方法还包括:将所述加密误差向量E发给给所述第一方。根据第二方面,提供了一种保护数据隐私的双方联合训练业务预测模型的方法,所述双方包括第一方和第二方,所述第一方存储有多个业务对象的第一特征部分构成的第一特征矩阵XA,并维护对应的第一参数部分WA;所述第二方存储有所述多个业务对象的第二特征部分构成的第二特征矩阵XB,和标签值构成的标签向量Y,并维护对应的第二参数部分WB;所述方法应用于所述第一方,包括:本地计算第一特征矩阵XA与第一参数部分WA的第一乘积结果;使用中立的第三方的公钥和同态加密算法,对所述第一乘积结果进行加密,得到第一加密乘积,将该第一加密乘积发送给第二方;从所述第二方接收加密误差向量E,所述加密误差向量E基于所述第一加密乘积,第二方本地计算的第二特征矩阵XB与第二参数部分WB的第二乘积结果,以及所述标签向量的同态运算而得到;对该加密误差向量E和第一特征矩阵XA进行同态操作下的矩阵相乘,得到对第一梯度加密的第一加密梯度;在所述第一加密梯度基础上同态添加第一混淆元素,生成第一加密混淆梯度,并将其发送给所述第三方;从所述第三方接收针对第一加密混淆梯度解密的第一混淆梯度;根据所述第一混淆梯度和第一混淆元素,恢复得到第一梯度;根据所述第一梯度,更新所述第一参数部分。根据第三方面,提供了一种保护数据隐私的双方联合训练业务预测模型的装置,所述双方包括第一方和第二方,所述第一方存储有多个业务对象的第一特征部分构成的第一特征矩阵XA,并维护对应的第一参数部分WA;所述第二方存储有所述多个业务对象的第二特征部分构成的第二特征矩阵XB,和标签值构成的标签向量Y,并维护对应的第二参数部分WB;所述装置部署于所述第二方,包括:第二乘积计算单元,配置为本地计算第二特征矩阵XB与第二参数部分WB的第二乘积结果;第一乘积接收单元,配置为从所述第一方接收第一加密乘积,该第一加密乘积为,使用中立的第三方的公钥和同态加密算法,对第一特征矩阵XA与第一参数部分WA的第一乘积结果加密得到的;加密误差计算单元,配置为基于对所述第一加密乘积,第二乘积结果,以及所述标签向量进行同态运算,得到加密误差向量E;第二梯度计算单元,配置为对该加密误差向量E和第二特征矩阵XB进行同态操作下的矩阵相乘,得到对第二梯度加密的第二加密梯度;第二混淆单元,配置为在所述第二加密梯度基础上同态添加第二混淆元素,生成本文档来自技高网...

【技术保护点】
1.一种保护数据隐私的双方联合训练业务预测模型的方法,所述双方包括第一方和第二方,所述第一方存储有多个业务对象的第一特征部分构成的第一特征矩阵X

【技术特征摘要】
1.一种保护数据隐私的双方联合训练业务预测模型的方法,所述双方包括第一方和第二方,所述第一方存储有多个业务对象的第一特征部分构成的第一特征矩阵XA,并维护对应的第一参数部分WA;所述第二方存储有所述多个业务对象的第二特征部分构成的第二特征矩阵XB,和标签值构成的标签向量Y,并维护对应的第二参数部分WB;所述方法应用于所述第二方,包括:
本地计算第二特征矩阵XB与第二参数部分WB的第二乘积结果;
从所述第一方接收第一加密乘积,该第一加密乘积为,使用中立的第三方的公钥和同态加密算法,对第一特征矩阵XA与第一参数部分WA的第一乘积结果加密得到的;
基于对所述第一加密乘积,第二乘积结果,以及所述标签向量进行同态运算,得到加密误差向量E;
对该加密误差向量E和第二特征矩阵XB进行同态操作下的矩阵相乘,得到对第二梯度加密的第二加密梯度;
在所述第二加密梯度基础上同态添加第二混淆元素,生成第二加密混淆梯度,并将其发送给所述第三方;
从所述第三方接收针对第二加密混淆梯度解密的第二混淆梯度;
根据所述第二混淆梯度和第二混淆元素,恢复得到第二梯度;
根据所述第二梯度,更新所述第二参数部分。


2.根据权利要求1所述的方法,其中,所述业务对象包括以下之一:用户,商户,商品,事件;所述业务预测模型用于预测所述业务对象的分类或回归值。


3.根据权利要求1所述的方法,其中,所述业务预测模型为线性回归模型;
所述得到加密误差向量E,包括:
基于所述第一加密乘积和所述第二乘积结果的同态加和操作,得到加密预测结果;计算该加密预测结果和所述标签向量Y的加密值的同态差值,作为所述加密误差向量E。


4.根据权利要求1所述的方法,其中,所述业务预测模型为逻辑回归模型;
所述得到加密误差向量E,包括:
根据sigmoid函数的泰勒展开形式,基于所述第一加密乘积和所述第二乘积结果的同态运算得到加密预测结果,对该加密预测结果和所述标签向量Y的加密值进行同态差值运算,得到所述加密误差向量E。


5.根据权利要求4所述的方法,其中,所述第二乘积结果包括,第二特征矩阵XB与第二参数部分WB的多阶第二乘积;所述第一乘积结果包括,第一特征矩阵XA与第一参数部分WA的多阶第一乘积;
根据sigmoid函数的泰勒展开形式,基于所述第一加密乘积和所述第二乘积结果的同态运算得到加密预测结果,包括:
根据sigmoid函数的多阶泰勒展开形式,基于所述多阶第一乘积和所述多阶第二乘积之间的同态加和操作和同态相乘操作,得到加密预测结果。


6.根据权利要求1所述的方法,其中,在所述第二加密梯度基础上同态添加第二混淆元素,生成第二加密混淆梯度,包括:
随机生成与所述第二加密梯度维度相同的第二掩码向量,并使用所述第三方的公钥和所述同态加密算法将其加密,得到第二加密掩码向量;
在所述第二加密梯度上同态添加所述第二加密掩码向量,得到所述第二加密混淆梯度;
所述根据所述第二混淆梯度和所述第二混淆元素,恢复得到第二梯度,包括:
从所述第二混淆梯度中减去所述第二掩码向量,得到第二梯度。


7.根据权利要求1所述的方法,还包括:
将所述加密误差向量E发给给所述第一方。


8.一种保护数据隐私的双方联合训练业务预测模型的方法,所述双方包括第一方和第二方,所述第一方存储有多个业务对象的第一特征部分构成的第一特征矩阵XA,并维护对应的第一参数部分WA;所述第二方存储有所述多个业务对象的第二特征部分构成的第二特征矩阵XB,和标签值构成的标签向量Y,并维护对应的第二参数部分WB;所述方法应用于所述第一方,包括:
本地计算第一特征矩阵XA与第一参数部分WA的第一乘积结果;
使用中立的第三方的公钥和同态加密算法,对所述第一乘积结果进行加密,得到第一加密乘积,将该第一加密乘积发送给第二方;
从所述第二方接收加密误差向量E,所述加密误差向量E基于所述第一加密乘积,第二方本地计算的第二特征矩阵XB与第二参数部分WB的第二乘积结果,以及所述标签向量的同态运算而得到;
对该加密误差向量E和第一特征矩阵XA进行同态操作下的矩阵相乘,得到对第一梯度加密的第一加密梯度;
在所述第一加密梯度基础上同态添加第一混淆元素,生成第一加密混淆梯度,并将其发送给所述第三方;
从所述第三方接收针对第一加密混淆梯度解密的第一混淆梯度;
根据所述第一混淆梯度和第一混淆元素,恢复得到第一梯度;
根据所述第一梯度,更新所述第一参数部分。


9.根据权利要求8所述的方法,其中,所述业务对象包括以下之一:用户,商户,商品,事件;所述业务预测模型用于预测所述业务对象的分类或回归值。


10.根据权利要求8所述的方法,其中,所述业务预测模型为逻辑回归模型,所述第一乘积结果包括,第一特征矩阵XA与第一参数部分WA的多阶第一乘积。


11.根据权利要求8所述的方法,在所述第一加密梯度基础上同态添加第一混淆元素,生成第一加密混淆梯度,包括:
随机生成与所述第一加密梯度维度相同的第一掩码向量,并使用所述第三方的公钥和所述同态加密算法将其加密,得到第一加密掩码向量;
在所述第一加密梯度上同态添加所述第一加密掩码向量,得到所述第一加密混淆梯度;
所述根据所述第一混淆梯度和所述第一混淆元素,恢复得到第一梯度,包括:
从所述第一混淆梯度中减去所述第一掩码向量,得到第一梯度。


12.一种保护数据隐私的双方联合训练业务预测模型的装置,所述双方包括第一方和第二方,所述第一方存储有多个业务对象的第一特征部分构成的第一特征矩阵XA,并维护对应的第一参数部分WA;所述第二方存储有所述多个业务对象的第二特征部分构成的第二特...

【专利技术属性】
技术研发人员:王磊陈超超王力周俊
申请(专利权)人:支付宝杭州信息技术有限公司
类型:发明
国别省市:浙江;33

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

1