模型训练方法、装置及系统制造方法及图纸

技术编号:26971808 阅读:20 留言:0更新日期:2021-01-06 00:03
本公开提供用于训练线性/逻辑回归模型的方法和装置。在该方法中,执行下述迭代过程,直到满足预定条件:基于各个训练参与方的当前子模型以及训练发起方的特征样本集,使用无可信初始化方秘密共享矩阵乘法来获得针对特征样本集的当前预测值;训练发起方确定当前预测值与对应的标记值之间的预测差值,基于预测差值和特征样本集来确定模型更新量;将模型更新量分割为第一数目个部分模型更新量,并且将第二数目个部分模型更新量中的每个分别发送给对应的训练协同方,第二数目等于第一数目减一;各个训练参与方基于各自的当前子模型以及对应的部分模型更新量来更新当前子模型。该方法能够在保证各方数据安全的情况下提高模型训练的效率。

【技术实现步骤摘要】
模型训练方法、装置及系统
本公开通常涉及机器学习领域,尤其涉及用于使用水平切分的训练集来经由多个训练参与方协同训练线性/逻辑回归模型的方法、装置及系统。
技术介绍
线性回归模型和逻辑回归模型是机器学习领域广泛使用的回归/分类模型。在很多情况下,多个模型训练参与方(例如,电子商务公司、快递公司和银行)各自拥有训练线性/逻辑回归模型所使用的特征样本的不同部分数据。该多个模型训练参与方通常想共同使用彼此的数据来统一训练线性/逻辑回归模型,但又不想把各自的数据提供给其它各个模型训练参与方以防止自己的数据被泄露。面对这种情况,提出了能够保护数据安全的机器学习方法,其能够在保证多个模型训练参与方的各自数据安全的情况下,协同该多个模型训练参与方来训练线性/逻辑回归模型,以供该多个模型训练参与方使用。然而,现有的能够保护数据安全的机器学习方法的模型训练效率较低。
技术实现思路
鉴于上述问题,本公开提供了一种用于经由多个训练参与方协同训练线性/逻辑回归模型的方法、装置及系统,其能够在保证多个训练参与方的各自数据安全的情况下提高模型训练的效率。本文档来自技高网...

【技术保护点】
1.一种用于经由多个训练参与方来协同训练线性/逻辑回归模型的方法,所述线性/逻辑回归模型由第一数目个子模型组成,每个训练参与方具有一个子模型,所述第一数目等于所述训练参与方的数目,所述训练参与方包括训练发起方和至少一个训练协同方,所述方法由训练发起方执行,所述方法包括:/n执行下述迭代过程,直到满足预定条件:/n基于各个训练参与方的当前子模型以及所述训练发起方的特征样本集,使用无可信初始化方秘密共享矩阵乘法来获得所述线性/逻辑回归模型针对所述特征样本集的当前预测值;/n确定所述特征样本集的当前预测值与对应的标记值之间的预测差值;/n基于所确定出的预测差值和所述特征样本集,确定模型更新量;/n将...

【技术特征摘要】
1.一种用于经由多个训练参与方来协同训练线性/逻辑回归模型的方法,所述线性/逻辑回归模型由第一数目个子模型组成,每个训练参与方具有一个子模型,所述第一数目等于所述训练参与方的数目,所述训练参与方包括训练发起方和至少一个训练协同方,所述方法由训练发起方执行,所述方法包括:
执行下述迭代过程,直到满足预定条件:
基于各个训练参与方的当前子模型以及所述训练发起方的特征样本集,使用无可信初始化方秘密共享矩阵乘法来获得所述线性/逻辑回归模型针对所述特征样本集的当前预测值;
确定所述特征样本集的当前预测值与对应的标记值之间的预测差值;
基于所确定出的预测差值和所述特征样本集,确定模型更新量;
将所确定出的模型更新量分割为所述第一数目个部分模型更新量,并且将第二数目个部分模型更新量中的每个分别发送给对应的训练协同方,所述第二数目等于所述第一数目减一;以及
基于所述训练发起方的当前子模型以及对应的部分模型更新量来更新所述训练发起方的子模型,其中,在迭代过程未结束时,所述更新后的各个训练参与方的子模型被用作下一迭代过程的当前子模型。


2.如权利要求1所述的方法,其中,所述特征样本集使用第一特征矩阵X表示,以及所述各个训练参与方的子模型和对应的部分预测值分别使用第一权重子矩阵Wi和预测值矩阵Yi来表示,以及
基于各个训练参与方的当前子模型以及所述训练发起方的特征样本集,使用无可信初始化方秘密共享矩阵乘法来获得所述线性/逻辑回归模型针对所述特征样本集的当前预测值包括:
计算所述训练发起方的第一权重子矩阵与所述第一特征矩阵的矩阵乘积,以得到与所述训练发起方的子模型对应的部分预测值;
使用无可信初始化方秘密共享矩阵乘法来计算各个训练协同方的第一权重子矩阵与所述第一特征矩阵的矩阵乘积,以得到与各个训练协同方的子模型对应的部分预测值;以及
对所得到的各个训练参与方的子模型所对应的部分预测值进行求和,以得到所述线性/逻辑回归模型针对所述特征样本集的当前预测值。


3.如权利要求2所述的方法,其中,使用无可信初始化方秘密共享矩阵乘法来计算训练协同方的第一权重子矩阵与所述第一特征矩阵的矩阵乘积,以得到与训练协同方的子模型对应的部分预测值包括:
生成随机特征矩阵X1;
将所述随机特征矩阵X1减去所述第一特征矩阵X,以得到第二特征矩阵X2;
将随机特征矩阵X1的偶数行子矩阵X1_e减去随机特征矩阵X1的奇数行子矩阵X1_o而得到第三特征矩阵X3;
将所生成的第二特征矩阵X2和第三特征矩阵X3发送给训练协同方,以及从所述训练协同方接收第二权重子矩阵Wi2和第三权重子矩阵Wi3,其中,所述第二权重子矩阵Wi2是通过对该训练协同方的第一权重子矩阵Wi和随机权重子矩阵Wi1进行求和而得到的,以及所述第三权重子矩阵Wi3是通过将所述随机权重子矩阵Wi1的奇数列子矩阵加上所述随机权重子矩阵Wi1的偶数列子矩阵而得到的;
基于等式Y1=Wi2*(2*X-X1)-Wi3*(X3+X1_e)进行矩阵计算,以得到第一矩阵乘积Y1,并将所述第一矩阵乘积Y1发送给所述训练协同方;
从所述训练协同方接收第二矩阵乘积Y2,所述第二矩阵乘积Y2是在所述训练协同方处基于等式Y2=(Wi+2*Wi1)*X2+(Wi3+Wi1_o)*X3计算出的,其中,Wi1_o是所述随机权重子矩阵Wi1的奇数列子矩阵;以及
对所述第一矩阵乘积Y1和所述第二矩阵乘积Y2进行求和,以得到与该训练协同方的子模型对应的部分预测值Yi。


4.如权利要求3所述的方法,还包括:
在所述第一特征矩阵X的行数不是偶数时,对所述第一特征矩阵X进行行维度补齐处理。


5.如权利要求1所述的方法,其中,基于所确定出的预测差值和所述特征样本集,确定模型更新量包括:
计算所述特征样本集和所确定出的预测差值之间的乘积,作为所述模型更新量。


6.如权利要求5所述的方法,其中,基于所述训练发起方的当前子模型以及对应的部分模型更新量来更新所述训练发起方的当前子模型包括:按照以下等式更新所述训练发起方处的当前子模型
Wn+1=Wn-α·tmpi,
其中,Wn+1表示所述训练发起方处的更新后的子模型,Wn表示所述训练发起方处的当前子模型,α表示学习率,以及tmpi表示与所述训练发起方对应的部分模型更新量。


7.如权利要求1所述的方法,其中,所述训练发起方和所述训练协同方是由所述多个训练参与方协商确定的。


8.如权利要求1到7中任一所述的方法,其中,所述预定条件包括:
预定迭代次数;或者
所确定出的预测差值位于预定范围内。


9.一种用于经由多个训练参与方来协同训练线性/逻辑回归模型的方法,所述线性/逻辑回归模型由第一数目个子模型组成,每个训练参与方具有一个子模型,所述第一数目等于所述训练参与方的数目,所述训练参与方包括训练发起方和至少一个训练协同方,所述方法由训练协同方执行,所述方法包括:
执行下述迭代过程,直到满足预定条件:
基于各个训练参与方的当前子模型以及所述训练发起方的特征样本集,使用无可信初始化方秘密共享矩阵乘法来获得所述线性/逻辑回归模型针对所述特征样本集的当前预测值;
从所述训练发起方接收对应的部分模型更新量,其中,所述部分模型更新量是在所述训练发起方处对模型更新量进行分割后得到的所述第一数目个部分模型更新量中的一个部分模型更新量,所述模型更新量是在所述训练发起方处基于所确定出的当前预测值和对应的标记值之间的预测差值以及所述特征样本集确定出的;以及
基于所述训练协同方的当前子模型以及所接收的部分模型更新量来更新所述训练协同方的当前子模型,其中,在迭代过程未结束时,所述更新后的各个训练参与方的子模型被用作下一训练迭代过程的当前子模型。


10.如权利要求9所述的方法,其中,所述特征样本集使用第一特征矩阵X表示,以及所述训练协同方的子模型和对应的部分预测值分别使用第一权重子矩阵Wi和预测值矩阵Yi来表示,以及
使用无可信初始化方秘密共享矩阵乘法来基于训练协同方的当前子模型Wi与所述训练发起方处的特征样本集X,获取与所述训练协同方的子模型对应的部分预测值Yi包括:
生成随机权重子矩阵Wi1;
对所述第一权重子矩阵Wi和所述随机权重子矩阵Wi1进行求和,以得到第二权重子矩阵Wi2;
将所述随机权重子矩阵Wi1的奇数列子矩阵Wi1_o加上所述随机权重子矩阵Wi1的偶数行子矩阵Wi1_e而得到第三权重子矩阵Wi3;
将所生成的第二权重子矩阵Wi2和第三权重子矩阵Wi3发送给训练发起方,以及从所述训练发起方接收第二特征矩阵X2和第三特征矩阵X3,所述第二特征矩阵X2是通过将随机特征矩阵X1减去所述第一特征矩阵X而得到,所述随机特征矩阵X1是在所述训练发起方处随机生成的,所述第三特征矩阵X3是通过将随机特征矩阵X1的偶数行子矩阵X1_e减去随机特征矩阵X1的奇数行子矩阵X1_o而得到;
基于等式Y2=(Wi+2*Wi1)*X2+(Wi3+Wi1_o)*X3进行矩阵计算,以得到第二矩阵乘积Y2,并将所述第二矩阵乘积Y2发送给所述训练发起方;
从所述训练发起方接收第一矩阵乘积Y1,所述第一矩阵乘积Y1是在所述训练发起方处基于等式Y1=Wi2*(2*X-X1)-Wi3*(X3+X1_e)计算出的;
对所述第一矩阵乘积Y1和所述第二矩阵乘积Y2进行求和,以得到与该训练协同方的子模型对应的部分预测值Yi。


11.如权利要求9所述的方法,还包括:
在所述第一权重子矩阵Wi的列数不是偶数时,对所述第一权重子矩阵Wi进行列维度补齐处理。


12.如权利要求9所述的方法,其中,基于所述训练协同方的当前子模型以及所接收的部分预测差值与所述特征样本集之积来更新所述训练协同方处的当前子模型包括:按照以下等式更新所述训练协同方的当前子模型
Wn+1=Wn-α·X·ei,
其中,Wn+1表示所述训练协同方处的更新后的子模型,Wn表示所述训练协同方处的当前子模型,α表示学习率,X表示所述特征样本集,以及ei表示所述训练协同方处的部分预测差值。


13.如权利要求9所述的方法,其中,所述训练发起方和所述训练协同方是由所述多个训练参与方协商确定的。


14.一种用于经由多个训练参与方来协同训练线性/逻辑回归模型的方法,所述线性/逻辑回归模型由第一数目个子模型组成,每个训练参与方具有一个子模型,所述第一数目等于所述训练参与方的数目,所述训练参与方包括训练发起方和至少一个训练协同方,所述方法包括:
执行下述迭代过程,直到满足预定条件:
基于所述各个训练参与方的当前子模型以及所述训练发起方的特征样本集,使用无可信初始化方秘密共享矩阵乘法来获得所述线性/逻辑回归模型针对所述特征样本集的当前预测值;
在所述训练发起方处,确定所述特征样本集的当前预测值与对应的标记值之间的预测...

【专利技术属性】
技术研发人员:陈超超李梁王力周俊
申请(专利权)人:创新先进技术有限公司
类型:发明
国别省市:开曼群岛;KY

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

1