基于数据隐私保护的机器学习模型特征筛选方法及装置转让专利
申请号 : CN201911195304.7
文献号 : CN111062487B
文献日 : 2021-04-20
发明人 : 陈超超 , 王力 , 周俊
申请人 : 支付宝(杭州)信息技术有限公司
摘要 :
权利要求 :
1.一种用于基于数据隐私保护的机器学习模型特征筛选的方法,所述机器学习模型具有模型特征集,所述机器学习模型的特征数据被垂直切分地分布在第一数目个数据拥有方处,每个数据拥有方具有与所述模型特征集的模型特征子集对应的特征数据,所述数据拥有方包括第一数据拥有方和第二数目个第二数据拥有方,第二数目等于第一数目减一,第一数据拥有方具有待筛选模型特征Xi的特征数据,第二数据拥有方不具有所述待筛选模型特征Xi的特征数据,所述方法由第一数据拥有方执行,所述方法包括:使用各个数据拥有方的特征数据,利用多方安全计算来训练出待筛选模型特征Xi的预测模型,其中,所述预测模型是线性回归模型,所述预测模型的输出是所述待筛选模型特征Xi的预测值 以及所述预测模型的输入特征是所述模型特征集中的剩余模型特征,所述预测模型被垂直切分为多个预测子模型,每个数据拥有方具有一个预测子模型;以及按照下述公式确定所述待筛选模型特征Xi的方差膨胀因子VIFi,以用于模型特征筛选处理:
2
其中,Ri是所述待筛选模型特征Xi的样本可决系数,N为数据样本数目,以及yk是数据样本的样本标记值,k=1,……,N。
2.如权利要求1所述的方法,还包括:根据所述待筛选模型特征Xi的方差膨胀因子VIFi,对所述待筛选模型特征Xi进行模型特征筛选处理。
3.如权利要求2所述的方法,其中,根据所确定出的待筛选模型特征Xi的方差膨胀因子VIFi,对所述待筛选模型特征Xi进行模型特征筛选处理包括:在所述待筛选模型特征Xi的方差膨胀因子VIFi大于预定阈值时,从所述模型特征集中筛除所述待筛选模型特征Xi。
4.如权利要求1所述的方法,还包括:将所述待筛选模型特征Xi的方差膨胀因子VIFi提供给模型特征筛选方来进行模型特征筛选。
5.如权利要求1所述的方法,其中,所述待筛选模型特征Xi的预测差值是所述预测模型的训练过程中的最后一次循环过程中得到的预测差值。
6.如权利要求1所述的方法,还包括:根据各个数据拥有方的第一特征数据以及预测子模型进行多方安全计算,以得到所述待筛选模型特征Xi的预测值以及预测差值,所述第一特征数据是从各个数据拥有方的特征数据中去除与所述待筛选模型特征Xi对应的特征值后的特征数据。
7.如权利要求1所述的方法,其中,所述多方安全计算包括秘密共享、混淆电路和同态加密中的一种。
8.如权利要求7所述的方法,其中,所述秘密共享包括秘密共享矩阵乘法和秘密共享矩阵加法。
9.如权利要求8所述的方法,其中,所述多方安全计算所采用的秘密共享的类型是根据第二数据拥有方的数目确定的。
10.如权利要求8所述的方法,其中,所述秘密共享矩阵乘法包括有可信初始化方秘密共享矩阵乘法或者无可信初始化方秘密共享矩阵乘法。
11.如权利要求1到10中任一所述的方法,其中,所述机器学习模型的特征数据包括基于图像数据、语音数据或文本数据确定的特征数据,或者所述机器学习模型的特征数据包括用户特征数据。
12.一种用于基于数据隐私保护的机器学习模型特征筛选的方法,所述机器学习模型具有模型特征集,所述机器学习模型的特征数据被垂直切分地分布在第一数目个数据拥有方处,每个数据拥有方具有与所述模型特征集的模型特征子集对应的特征数据,所述数据拥有方包括第一数据拥有方和第二数目个第二数据拥有方,第二数目等于第一数目减一,第一数据拥有方具有待筛选模型特征Xi的特征数据,第二数据拥有方不具有所述待筛选模型特征Xi的特征数据,所述方法由第二数据拥有方执行,所述方法包括:使用各个数据拥有方的特征数据,利用多方安全计算来训练出待筛选模型特征Xi的预测模型,其中,所述预测模型是线性回归模型,所述预测模型的输出是所述待筛选模型特征Xi的预测值,以及所述预测模型的输入特征是所述模型特征集中的剩余模型特征,所述预测模型被垂直切分为多个预测子模型,每个数据拥有方具有一个预测子模型,其中,所述预测模型的预测值被使用来确定所述待筛选模型特征Xi的预测差值和方差膨胀因子VIFi,所述方差膨胀因子VIFi用于对所述待筛选模型特征Xi进行模型特征筛选处理,
其中,所述方差膨胀因子VIFi按照下述公式确定出:2
其中,Ri是所述待筛选模型特征Xi的样本可决系数,N为数据样本数目, 是所述待筛选模型特征Xi的预测值,以及yk是数据样本的样本标记值,k=1,……,N。
13.如权利要求12所述的方法,还包括:根据各个数据拥有方的第一特征数据以及预测子模型进行多方安全计算,以得到所述待筛选模型特征Xi的预测值,所述第一特征数据是从各个数据拥有方的特征数据中去除与所述待筛选模型特征对应的特征值后的特征数据。
14.如权利要求12或13所述的方法,其中,所述多方安全计算包括秘密共享、混淆电路和同态加密中的一种。
15.如权利要求14所述的方法,其中,所述秘密共享包括秘密共享矩阵乘法和秘密共享矩阵加法。
16.如权利要求15所述的方法,其中,所述多方安全计算所采用的秘密共享的类型是根据第二数据拥有方的数目确定的。
17.一种用于基于数据隐私保护的机器学习模型特征筛选的装置,所述机器学习模型具有模型特征集,所述机器学习模型的特征数据被垂直切分地分布在第一数目个数据拥有方处,每个数据拥有方具有与所述模型特征集的模型特征子集对应的特征数据,所述数据拥有方包括第一数据拥有方和第二数目个第二数据拥有方,第二数目等于第一数目减一,第一数据拥有方具有待筛选模型特征Xi的特征数据,第二数据拥有方不具有所述待筛选模型特征Xi的特征数据,所述装置应用于第一数据拥有方,所述装置包括:模型训练单元,使用各个数据拥有方的特征数据,利用多方安全计算来训练出待筛选模型特征Xi的预测模型,其中,所述预测模型是线性回归模型,所述预测模型的输出是所述待筛选模型特征Xi的预测值,以及所述预测模型的输入特征是所述模型特征集中的剩余模型特征,所述预测模型被垂直切分为多个预测子模型,每个数据拥有方具有一个预测子模型;以及
方差膨胀因子确定单元,按照下述公式确定所述待筛选模型特征Xi的方差膨胀因子VIFi,以用于模型特征筛选处理:2
其中,Ri是所述待筛选模型特征Xi的样本可决系数,N为数据样本数目,以及yk是数据样本的样本标记值,k=1,……,N。
18.如权利要求17所述的装置,还包括:模型特征筛选单元,根据所述待筛选模型特征Xi的方差膨胀因子VIFi,对所述待筛选模型特征Xi进行模型特征筛选处理。
19.如权利要求17所述的装置,还包括:提供单元,将所述待筛选模型特征Xi的方差膨胀因子VIFi提供给模型特征筛选方来进行模型特征筛选。
20.如权利要求17所述的装置,还包括:模型预测单元,根据各个数据拥有方的第一特征数据以及预测子模型进行多方安全计算,以得到所述待筛选模型特征Xi的预测值和预测差值,所述第一特征数据是从各个数据拥有方的特征数据中去除与所述待筛选模型特征Xi对应的特征值后的特征数据。
21.一种用于基于数据隐私保护的机器学习模型特征筛选的装置,所述机器学习模型具有模型特征集,所述机器学习模型的特征数据被垂直切分地分布在第一数目个数据拥有方处,每个数据拥有方具有与所述模型特征集的模型特征子集对应的特征数据,所述数据拥有方包括第一数据拥有方和第二数目个第二数据拥有方,第二数目等于第一数目减一,第一数据拥有方具有待筛选模型特征Xi的特征数据,第二数据拥有方不具有所述待筛选模型特征Xi的特征数据,所述装置应用于第二数据拥有方,所述装置包括:模型训练单元,使用各个数据拥有方的特征数据,利用多方安全计算来训练出待筛选模型特征Xi的预测模型,其中,所述预测模型是线性回归模型,所述预测模型的输出是所述待筛选模型特征Xi的预测值,以及所述预测模型的输入特征是所述模型特征集中的剩余模型特征,所述预测模型被垂直切分为多个预测子模型,每个数据拥有方具有一个预测子模型,
其中,所述预测模型的预测值被使用来确定所述待筛选模型特征Xi的预测差值和方差膨胀因子VIFi,所述方差膨胀因子VIFi用于对所述待筛选模型特征Xi进行模型特征筛选处理,
其中,所述方差膨胀因子VIFi按照下述公式确定出:2
其中,Ri是所述待筛选模型特征Xi的样本可决系数,N为数据样本数目, 是所述待筛选模型特征Xi的预测值,以及yk是数据样本的样本标记值,k=1,……,N。
22.如权利要求21所述的装置,还包括:模型预测单元,根据各个数据拥有方的第一特征数据以及预测子模型进行多方安全计算,以得到所述待筛选模型特征Xi的预测值,所述第一特征数据是从各个数据拥有方的特征数据中去除与所述待筛选模型特征Xi对应的特征值后的特征数据。
23.一种电子设备,包括:
一个或多个处理器,以及
与所述一个或多个处理器耦合的存储器,所述存储器存储指令,当所述指令被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求1到11中任一项所述的方法。
24.一种机器可读存储介质,其存储有可执行指令,所述指令当被执行时使得所述机器执行如权利要求1到11中任一项所述的方法。
25.一种电子设备,包括:
一个或多个处理器,以及
与所述一个或多个处理器耦合的存储器,所述存储器存储指令,当所述指令被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求12到16中任一所述的方法。
26.一种机器可读存储介质,其存储有可执行指令,所述指令当被执行时使得所述机器执行如权利要求12到16中任一所述的方法。
说明书 :
基于数据隐私保护的机器学习模型特征筛选方法及装置
技术领域
背景技术
风险识别模型、业务分类模型、业务决策模型等等。机器学习模型通常会使用大量的模型特
征作为模型输入特征,例如,机器学习模型可能会使用多达上万个模型特征。模型特征的数
量越多,机器学习模型的运算量越大,从而需要花费更多的计算资源和时间成本。
影响不大的模型特征,这些模型特征的引入会增加机器学习模型的计算量,但不会提升机
器学习模型的预测精度,由此,如何进行机器学习模型的模型特征筛选,成为亟待解决的问
题。
发明内容
型特征筛选。
被垂直切分地分布在第一数目个数据拥有方处,每个数据拥有方具有与所述模型特征集的
模型特征子集对应的特征数据,所述数据拥有方包括第一数据拥有方和第二数目个第二数
据拥有方,第二数目等于第一数目减一,第一数据拥有方具有待筛选模型特征的特征数据,
第二数据拥有方不具有所述待筛选模型特征的特征数据,所述方法由第一数据拥有方执
行,所述方法包括:使用各个数据拥有方的特征数据,利用多方安全计算来训练出待筛选模
型特征的预测模型,其中,所述预测模型是线性回归模型,所述预测模型的输出是所述待筛
选模型特征的预测值,以及所述预测模型的输入特征是所述模型特征集中的剩余模型特
征,所述预测模型被垂直切分为多个预测子模型,每个数据拥有方具有一个预测子模型;以
及基于所述待筛选模型特征的预测差值,确定所述待筛选模型特征的方差膨胀因子,以用
于模型特征筛选处理。
方差膨胀因子大于预定阈值时,从所述模型特征集中筛除所述待筛选模型特征。
预测差值,所述第一特征数据是从各个数据拥有方的特征数据中去除与所述待筛选模型特
征对应的特征值后的特征数据。
包括用户特征数据。
垂直切分地分布在第一数目个数据拥有方处,每个数据拥有方具有与所述模型特征集的模
型特征子集对应的特征数据,所述数据拥有方包括第一数据拥有方和第二数目个第二数据
拥有方,第二数目等于第一数目减一,第一数据拥有方具有待筛选模型特征的特征数据,第
二数据拥有方不具有所述待筛选模型特征的特征数据,所述方法由第二数据拥有方执行,
所述方法包括:使用各个数据拥有方的特征数据,利用多方安全计算来训练出待筛选模型
特征的预测模型,其中,所述预测模型是线性回归模型,所述预测模型的输出是所述待筛选
模型特征的预测值,以及所述预测模型的输入特征是模型特征集中的剩余模型特征,所述
预测模型被垂直切分为多个预测子模型,每个数据拥有方具有一个预测子模型,其中,所述
预测模型的预测值被使用来确定所述待筛选模型特征的预测差值和方差膨胀因子,所述方
差膨胀因子用于对所述待筛选模型特征进行模型特征筛选处理。
所述第一特征数据是从各个数据拥有方的特征数据中去除与所述待筛选模型特征对应的
特征值后的特征数据。
被垂直切分地分布在第一数目个数据拥有方处,每个数据拥有方具有与所述模型特征集的
模型特征子集对应的特征数据,所述数据拥有方包括第一数据拥有方和第二数目个第二数
据拥有方,第二数目等于第一数目减一,第一数据拥有方具有待筛选模型特征的特征数据,
第二数据拥有方不具有所述待筛选模型特征的特征数据,所述装置应用于第一数据拥有
方,所述装置包括:模型训练单元,使用各个数据拥有方的特征数据,利用多方安全计算来
训练出待筛选模型特征的预测模型,其中,所述预测模型是线性回归模型,所述预测模型的
输出是所述待筛选模型特征的预测值,以及所述预测模型的输入特征是模型特征集中的剩
余模型特征,所述预测模型被垂直切分为多个预测子模型,每个数据拥有方具有一个预测
子模型;以及方差膨胀因子确定单元,基于所述待筛选模型特征的预测差值,确定所述待筛
选模型特征的方差膨胀因子,以用于模型特征筛选处理。
特征的预测值和预测差值,所述第一特征数据是从各个数据拥有方的特征数据中去除与所
述待筛选模型特征对应的特征值后的特征数据。
被垂直切分地分布在第一数目个数据拥有方处,每个数据拥有方具有与所述模型特征集的
模型特征子集对应的特征数据,所述数据拥有方包括第一数据拥有方和第二数目个第二数
据拥有方,第二数目等于第一数目减一,第一数据拥有方具有待筛选模型特征的特征数据,
第二数据拥有方不具有所述待筛选模型特征的特征数据,所述装置应用于第二数据拥有
方,所述装置包括:模型训练单元,使用各个数据拥有方的特征数据,利用多方安全计算来
训练出待筛选模型特征的预测模型,其中,所述预测模型是线性回归模型,所述预测模型的
输出是所述待筛选模型特征的预测值,以及所述预测模型的输入特征是模型特征集中的剩
余模型特征,所述预测模型被垂直切分为多个预测子模型,每个数据拥有方具有一个预测
子模型,其中,所述预测模型的预测值被使用来确定待筛选模型特征的预测差值和方差膨
胀因子,所述方差膨胀因子用于对所述待筛选模型特征进行模型特征筛选处理。
特征的预测值,所述第一特征数据是从各个数据拥有方的特征数据中去除与所述待筛选模
型特征对应的特征值后的特征数据。
一个或多个处理器执行时,使得所述一个或多个处理器执行如上所述的在第一数据拥有方
处执行的方法。
法。
一个或多个处理器执行时,使得所述一个或多个处理器执行如上所述在第二数据拥有方处
执行的方法。
法。
附图说明
具体实施方式
书中所阐述的保护范围、适用性或者示例的限制。可以在不脱离本说明书的实施例内容的
保护范围的情况下,对所讨论的元素的功能和排列进行改变。各个示例可以根据需要,省
略、替代或者添加各种过程或组件。例如,所描述的方法可以按照与所描述的顺序不同的顺
序来执行,以及各个步骤可以被添加、省略或者组合。另外,相对一些示例所描述的特征在
其它例子中也可以进行组合。
例”。术语“另一个实施例”表示“至少一个其他实施例”。术语“第一”、“第二”等可以指代不
同的或相同的对象。下面可以包括其他的定义,无论是明确的还是隐含的。除非上下文中明
确地指明,否则一个术语的定义在整个说明书中是一致的。
风险识别模型、业务分类模型、业务决策模型等等。机器学习模型通常会使用大量的模型特
征作为模型输入特征。机器学习模型的模型特征通常是根据经验选择的。然而,在根据这种
方式确定出的模型特征中,可能会存在对机器学习模型影响不大的模型特征,这些模型特
征的引入会增加机器学习模型的计算量,但不会提升机器学习模型的预测精度,从而需要
使用机器学习模型的特征数据来进行模型特征筛选,以从机器学习模型的模型特征集中筛
除对机器学习模型影响不大的模型特征。
拥有方拥有机器学习模型的特征数据中的部分数据。对于数据拥有方而言,数据是非常重
要的资产。该多个数据拥有方希望共同使用彼此的特征数据来进行模型特征筛选,但又不
想把各自的隐私数据提供给其它各个数据拥有方以防止自己的隐私数据泄露。
使用各个数据拥有方的特征数据来利用多方安全计算训练出对应的预测模型,所述预测模
型是线性回归模型,该预测模型的输出是模型特征Xi的预测值,以及该预测模型的输入特
征是模型特征集{X1,X2,......,Xn}中的剩余模型特征Xj,所训练出的预测模型被垂直切分
为多个预测子模型,每个数据拥有方具有一个预测子模型。然后,利用所训练出的预测模
型,得到模型特征Xi的预测值和预测差值,基于预测差值来计算出模型特征Xi的方差膨胀因
子VIF(Variance Inflation Factor),并且基于所计算出的VIF来确定是否需要筛除模型
特征Xi。按照这种方式,由于模型特征Xi的VIF是采用多方安全计算来确定出的,从而可以确
保各个数据拥有方的特征数据免遭泄露。在本说明书中,各个数据拥有方的特征数据是通
过对机器学习模型所需特征数据进行垂直切分而得到的。
据、语音数据或者文本数据的业务风险识别、业务分类、或者业务决策等等。或者,机器学习
模型所使用的特征数据可以包括用户特征数据。相应地,机器学习模型可以应用于基于用
户特征数据的业务风险识别、业务分类、业务推荐或者业务决策等等。
型特征X4和模型特征X5的特征数据来源于数据拥有方B 120,以及模型特征X6和模型特征X7
的特征数据来源于数据拥有方C 120。机器学习模型110利用来自于数据拥有方A、B和C的特
征数据来进行模型预测,以得到预测值Y。这里,数据拥有方A、B和C各自具有与机器学习模
型110的模型特征集的模型特征子集对应的特征数据,所述模型特征子集是通过对模型特
征集进行垂直切分而得到。换言之,数据拥有方A、B和C的特征数据是通过对机器学习模型
110所使用的特征数据进行垂直切分而得到。
拥有机器学习模型所使用的数据样本集中的每条数据样本的部分特征数据,对于每条数据
样本,数据拥有方Alice和Bob拥有的部分特征数据组合在一起,可以构成该数据样本的完
整内容。比如,假设某条数据样本包括标签y0和属性特征 则经过垂直切分后,数据
拥有方Alice拥有该数据样本的y0和属性特征 以及数据拥有方Bob拥有该数据样本的属
性特征
据拥有方10以及第二数据拥有方20可以通过例如但不局限于互联网或局域网等的网络30
相互通信。在本说明书中,第一数据拥有方10和第二数据拥有方20的特征数据是通过对机
器学习模型所使用的特征数据进行垂直切分而得到的。此外,第一数据拥有方10具有待筛
选模型特征Xi的特征数据,以及第二数据拥有方20不具有模型特征Xi的特征数据。
面型计算机、膝上型计算机、笔记本计算机、移动计算设备、智能电话、平板计算机、蜂窝电
话、个人数字助理(PDA)、手持装置、消息收发设备、可佩戴计算设备、消费电子设备等等。
训练出模型特征Xi的预测模型。
包括m个模型特征,则可以针对模型特征X1构建出线性回归模型,例如,针对模型特征X1构建
出最小二乘模型X1=α2X2+α3X3+α4X4+......+αmXm+α0+e。
预测值,以及W是线性回归模型的模型参数(即,本说明书中的预测模型),W是所有预测子模
型WP级联而成,WP是本说明书的实施例中的各个数据拥有方P处的预测子模型。
有的预测子模型以及对应的特征数据是该数据拥有方的秘密,不能被其他数据拥有方完整
地获悉。关于如何利用多方安全计算来训练出模型特征Xi的预测模型,将在下文参照附图
详细说明。
采用的秘密共享可以是秘密共享矩阵乘法。在存在至少两个第二数据拥有方的情况下,所
采用的秘密共享可以是秘密共享矩阵乘法或者秘密共享加法。
计算,以得到模型特征Xi的预测值,并且在第一数据拥有方处,基于所得到的预测值以及对
应的标记值来确定出模型特征Xi的预测差值。这里,要说明的是,在使用所训练出的预测模
型进行模型预测时,各个数据拥有方使用第一特征数据,并且第一特征数据是从各个数据
拥有方的特征数据中去除与模型特征Xi对应的特征值后的特征数据。具体地,在第一数据
拥有方处,需要从所具有的原始特征数据中去除与模型特征Xi对应的特征值而得到第一数
据拥有方的第一数据特征。而在各个第二数据拥有方处,由于不具有与模型特征Xi对应的
特征值,从而各个第二数据拥有方处的第一特征数据是各个第二数据拥有方的原始特征数
据。
的预测模型来计算对应的预测值
于指示模型特征Xi与模型特征集中的剩余模型特征Xj之间的相关性。VIFi的值越大,则说明
模型特征Xi与剩余模型特征Xj之间的相关性(多重共线性)越大,从而对预测模型的贡献越
小,由此可以从预测模型的模型特征集中筛除该模型特征。
余模型特征Xj之间不存在多重共线性。在10≤VIF<100时,模型特征Xi与剩余模型特征Xj之
间存在较强的多重共线性。在VIF≥100时,模型特征Xi与剩余模型特征Xj之间存在严重的多
重共线性。由此,在一个示例中,预定阈值可以设置为100。在本说明书的其它示例中,预定
阈值也可以选择其它合适的数值。
VIF的值来进行排序,并且筛除排序Top K的模型特征。这里,K可以是预定数值。
型特征筛选。这里,模型特征筛选方可以是第三方筛选机构或者用户,或者,也可以是多个
数据拥有方中的指定数据拥有方。在接收到部分或全部数据拥有方的模型特征的VIF后,根
据各个模型特征的VIF来进行模型特征筛除处理。例如,筛除VIF大于预定阈值的模型特征,
或者,根据各个模型特征的VIF的值来进行排序,并且筛除排序Top K的模型特征。
明书的其它实施例中,也可以不包括块420的操作。在这种情况下,在块430中被使用来计算
VIF的预测差值是预测模型的训练过程中的最后一次循环过程中得到的预测差值。
{X1,X2,......,Xn}中的其它模型特征,也可以采用相同的模型特征筛选方法来执行模型特
征筛选处理,由此完成针对机器学习模型的模型特征集{X1,X2,......,Xn}的模型特征筛
除。
拥有方Charlie具有预测模型的预测子模型WC。第一数据拥有方Alice具有特征数据XA(对应
于权利要求书中的第一特征数据,即,去除了与模型特征Xi对应的特征值后的特征数据)和
标记值Y(即,与模型特征Xi对应的特征值),第二数据拥有方Bob具有特征数据XB,以及第二
数据拥有方Charlie具有特征数据XC。特征数据XA、XB和XC是通过机器学习模型所使用的特
征数据样本X进行垂直切分获得的。
初始值,并且将已执行训练循环次数t初始化为零。这里,假设循环过程的结束条件为执行
预定次数训练循环,例如,执行T次训练循环。
对子模型WA进行的分解过程中,针对子模型WA中的每个元素,将该元素的属性值分解为3个
部分属性值,并且利用分解后的部分属性值得到3个新的元素。然后,将所得到的3个新的元
素分别分配到WA1、WA2和WA3,由此得到WA1、WA2和WA3。此外,按照相同的方式对Bob和Charlie处
的预测子模型WB和WC进行分解,以分别得到WB1、WB2和WB3以及WC1、WC2和WC3。
在Bob处,分别对WA2、WB2和WC2进行拼接,以得到转换后子模型WB'。在Charlie处,分别对WA3、
WB3和WC3进行拼接,以得到转换后子模型WC'。同样,所得到的转换后的预测子模型WB'和WC'
的维度与用于预测模型训练的特征数据的维度相等。
转换特征样本子集XA'、XB'和XC'中的每个特征样本具有每条训练样本的完特征整内容,即,
类似于对特征样本集进行水平切分而得到的特征样本子集。
XA、XB和XC的分解过程与上面针对子模型的分解过程完全相同。然后,在块720,Alice将XA2和
XA3分别发送给Bob和Charlie。在块730,Bob分别将XB1和XB3发送给Alice和Charlie。在块
740,Charlie分别将XC1和XC2发送给Alice和Bob。
拼接,以得到转换特征数据XC'。所得到的转换特征数据XA'、XB'和XC'的维度与用于预测模
型训练的特征数据的维度相等。
当前预测值 如何使用秘密共享矩阵乘法来获得待训练的预测模型的当前预测值 将在
下面参照图8到图10进行说明。
有方Alice处的标记值的列向量,以及,是表示数据样本XA的当前预测值的列向量。如果数
据样本XA仅包含单个训练样本,则E、Y和 都是仅具有单个元素的列向量。如果数据样本XA
包含多个数据样本,则E、Y和 都是具有多个元素的列向量,其中,中的每个元素是该多个
数据样本中的对应数据样本的当前预测值,Y中的每个元素是该多个数据样本中的对应数
据样本的标记值,以及E中的每个元素是该多个数据样本的对应数据样本的标记值与当前
预测值的差值。
TMP1B+TMP1C。这里,针对TMP1的分解过程与上面描述的分解过程相同,在此不再描述。随后,
在块508,Alice将TMP1B发送给Bob以及将TMP1C发送给Charlie。
510,在Bob处,将第二模型更新量TMP2分解为TMP2=TMP2A+TMP2B+TMP2C,以及在Charlie处,
将第二模型更新量TMP3分解为TMP3=TMP3A+TMP3B+TMP3C。随后,在块511,Bob将TMP2A发送
给Alice,以及将TMP2C发送给Charlie。Charlie将TMP3A发送给Alice,以及将TMP3B发送给
Bob。
转换子模型WA',例如,可以采用下述公式(1)来进行子模型更新:
数量,即,该轮模型训练过程的批处理大小(batch size)。
WB’,例如,可以采用下述公式(2)来进行子模型更新:
练过程的批处理大小。
型WC’,例如,可以采用下述公式(3)来进行子模型更新:
轮模型训练过程的批处理大小。
503的操作来执行下一训练循环过程,其中,在该下次训练循环过程中,各个数据拥有方在
当前循环过程所获得的更新后的预测子模型被用作下一训练循环过程的当前预测子模型。
+|B|:|A|+|B|+|C|]发送给Charlie,Charlie将WC'[0:|A|]发送给Alice,以及将WC'[|A|:]
[:|C|]发送给Bob。这里,WA'[|A|:][:|C|]和WC'[|A|:][:|C|]分别是指WA'和WC'中|A|维
(即,|A|)以后且在|C|维之前的向量分量,WA'[|A|+|B|:|A|+|B|+|C|]和WB'[|A|+|B|:|A|+
|B|+|C|]是指WA'和WB'中的从|A|+|B|维之后的向量分量,以及WB'[0:|A|]和WC'[0:|A|]分
别是指WB'和WC'中的|A|维之前的向量分量,即,从0到|A|之间的向量分量。例如,假设W=
[0,1,2,3,4],如果|A|是2,|B|是1,以及|C|是2,则W[0:|A|]=[0,1],W[|A|:][:|C|]=
[2],以及W[|A|+|B|:|A|+|B|+|C|]=[3,4]。接着,在Alice处,计算出WA=WA'[0:|A|]+WB'
[0:|A|]+WC'[0:|A|],在Bob处,计算出WB=WA'[|A|:][:|C|]+WB'[|A|:][:|C|]+WC'[|A|:]
[:|C|],在Charlie处,计算出WC=WA'[|A|+|B|:|A|+|B|+|C|]+WB'[|A|+|B|:|A|+|B|+|C|]
+WC'[|A|+|B|:|A|+|B|+|C|],由此得到Alice、Bob和Charlie处的经过训练后的子模型WA、
WB和WC。
预定范围内,即,预测差值E中的每个元素Ei都位于预定范围内,预测差值E中的各个元素Ei
之和小于预定阈值,或者预测差值E的均值小于预定阈值。相应地,图5中的块513的操作可
以在块505的操作之后执行。
属性构成特征矩阵Xi的一列元素/一行元素,以及E是预测差值向量。在计算X·E时,与E中
的各个元素相乘的是矩阵X的某个特征所对应的各个样本的特征值。例如,假设E是列向量,
则每次相乘时,E与矩阵X中的一个行相乘,该行中的元素表示的是各个样本所对应的某一
个特征的特征值。
计算出ZB1=XB'*WB'。在Charlie处,使用转换特征数据XC'和当前转换预测子模型WC',计算
出ZC1=XC'*WC'。
过Alice和Bob之间执行秘密共享矩阵乘法来计算出XA'*WB',以及通过Alice和Charlie之间
执行秘密共享矩阵乘法来计算出XA'*WC',然后,在Alice处求和以得到Z2。对于Z3和Z4,可以
采用相同的方式计算出。这里,秘密共享矩阵乘法可以使用有可信初始化方秘密共享矩阵
乘法和无可信初始化方秘密共享矩阵乘法。关于有可信初始化方秘密共享矩阵乘法和无可
信初始化方秘密共享矩阵乘法将在下面参照图9和图10分别进行说明。
程与上述针对特征数据的分解过程相同,在此不再描述。
发送给Bob。
Charlie。在块811,Bob将ZB发送给Alice和Charlie,以及在块812,Charlie将ZC发送给Alice
和Bob。
明,其中,XA'是Alice处的转换特征数据(下文中称为特征矩阵),WB'是Bob处的转换预测子
模型(下文中称为权重向量)。
里,随机权重向量的维度与各个数据拥有方的转换子模型(权重向量)的维度相同,随机特
征矩阵的维度与转换样本子集(特征矩阵)的维度相同,以及随机标记值向量的维度与标记
值向量的维度相同。
属性值,其中,S1=[a1 ,a2 ,a3 ]和S2=[a1 ,a2 ,a3],那么,在将特征矩阵XA'分解成2个特
1 1 1
征子矩阵XA1'和XA2'之后,第一特征子矩阵XA1'包括特征子样本[a11 ,a21 ,a31 ]和特征子样
2 2 2 1 1 1 2
本[a11 ,a21 ,a31],第二特征子矩阵XA2'包括特征子样本[a12 ,a22 ,a32]和特征子样本[a12 ,
2 2 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2
a22 ,a32],其中,a11+a12=a1 ,a21 +a22=a2 ,a31+a32=a3 ,a11+a12 =a1,a21+a22=a2和
2 2 2
a31+a32=a3。
和特征子矩阵差值D。例如,在块907,在Alice处,确定出其权重子向量差值E1=WB1'‑WR,1以
及特征子矩阵差值D1=XA1'‑XR,1。在块908,在Bob处,确定出其权重子向量差值E2=WB2'‑
WR,2以及特征子矩阵差值D2=XA2'‑XR,2。
如,如图9中所示,D=D1+D2,以及E=E1+E2。
Zi。
该数据拥有方的随机权重向量之积进行求和,以得到对应的预测值向量(第一种计算方
式)。或者,可以对该数据拥有方的随机标记值向量、权重子向量总差值与该数据拥有方的
随机特征矩阵之积、特征子矩阵总差值与该数据拥有方的随机权重向量之积、以及权重子
向量总差值与特征子矩阵总差值之积进行求和,以得到对应的预测值矩阵(第二种计算方
式)。
之,针对各个数据拥有方,仅仅只有一个数据拥有方的预测值向量是按照第二种计算方式
计算出的,而其余的数据拥有方按照第一种计算方式来计算出对应的预测值向量。
D*E。换言之,在各个数据拥有方处所计算出的Zi中,仅仅只有一个包含D*E。
偶数,则对第一特征矩阵XA'和/或第一权重子矩阵WB'进行维度补齐处理,以使得第一特征
矩阵XA'的行数是偶数和/或第一权重子矩阵WB'的列数为偶数。例如,将第一特征矩阵XA'的
行末尾增加一行0值和/或将第一权重子矩阵WB'的列末尾多增加一列0值来进行维度补齐
处理。在下面的描述中,假设第一权重子矩阵WB'的维度为I*J,以及第一特征矩阵XA'的维度
为J*K,其中,J为偶数。
第一特征矩阵XA'的维度相同,即,随机特征矩阵X1的维度为J*K。在块1003,将随机特征矩
阵X1减去第一特征矩阵XA',以得到第二特征矩阵X2。第二特征矩阵X2的维度为J*K。在块
1004,将随机特征矩阵X1的偶数行子矩阵X1_e减去随机特征矩阵X1的奇数行子矩阵X1_o,
以得到第三特征矩阵X3。第三特征矩阵X3的维度为j*K,其中j=J/2。
的维度与第一权重子矩阵WB'的维度相同,即,随机权重子矩阵Wi1的维度为I*J。在块1006,
对第一权重子矩阵WB'和随机权重子矩阵WB1进行求和,以得到第二权重子矩阵WB2。第二权重
子矩阵WB2的维度为I*J。在块1007,将随机权重子矩阵WB1的奇数列子矩阵WB1_o加上随机权重
子矩阵WB1的偶数列子矩阵WB1_e而得到第三权重子矩阵WB3。第三权重子矩阵WB3的维度为I*
j,其中j=J/2。
值,并且将已执行训练循环次数t初始化为零。这里,假设循环过程的结束条件为执行预定
次数训练循环,例如,执行T次训练循环。
模型的当前预测值 如何使用秘密共享矩阵加法来获得待训练的预测模型的当前预测值
将在下面参照图13进行说明。
第一数据拥有方Alice使用当前子模型WA以及预测差值e与特征样本集XA之积来更新第一数
据拥有方Alice处的当前子模型,第二数据拥有方Bob使用当前子模型WB以及预测差值e与
特征样本集XB之积来更新第二数据拥有方Bob处的当前子模型,以及第二数据拥有方
Charlie使用当前子模型WC以及预测差值e与特征样本集XC之积来更新第二数据拥有方
Charlie处的当前子模型。
数据拥有方处的当前子模型Wn+1=Wn‑α·Xi·e,其中,Wn+1表示该数据拥有方处的更新后的
当前子模型,Wn表示该数据拥有方处的当前子模型,α表示学习率,Xi表示该数据拥有方处的
特征样本子集,以及e表示所述预测差值。
自的子模型参数的当前更新值,存储为其子模型参数的最终值,从而得到各自的训练后的
子模型,然后流程结束。如果未达到预定循环次数,则流程返回到块1220的操作来执行下一
训练循环过程,其中,在该下次训练循环过程中,各个数据拥有方在当前循环过程所获得的
更新后的当前子模型被用作下一训练循环过程的当前子模型。此外,在本说明书的其它示
例中,训练循环过程的结束条件也可以是所确定出的预测差值位于预定范围内,即,预测差
值e中的每个元素ei都位于预定范围内,例如,预测差值e中的每个元素ei都小于预定阈值。
相应地,图12中的块1260的操作可以在块1230的操作之后执行。
XA。在第二数据拥有方Bob处,计算Bob所拥有的当前子模型WB和对应的特征样本子集XB的乘
积,以得到第二数据拥有方Bob的预测值向量YB=WB*XB。在第二数据拥有方Charlie处,计算
Charlie所拥有的当前子模型WC和对应的特征样本子集XC的乘积,以得到第二数据拥有方
Charlie的预测值向量YC=WC*XC。
的预测值向量YB分解为3个预测值子向量YB1、YB2和YB3,其中,YB=YB1+YB2+YB3。在第二数据拥
有方Charlie处,将所计算出的预测值向量YC分解为3个预测值子向量YC1、YC2和YC3,其中,YC
=YC1+YC2+YC3。
预测值子向量YB1发送给第一数据拥有方Alice,以及将所得到的预测值子向量YB3发送给第
二数据拥有方Charlie。在块1305,Charlie将所得到的预测值子向量YC2发送给第二数据拥
有方Bob,以及将所得到的预测值子向量YC1发送给第一数据拥有方Alice。
在第二数据拥有方Bob处,对所得到的各个数据拥有方的预测值子向量进行求和,以得到第
二数据拥有方Bob处的预测值子向量和值Y2=YA2+YB2+YC2。在第二数据拥有方Charlie处,对
所得到的各个数据拥有方的预测值子向量进行求和,以得到第二数据拥有方Charlie处的
预测值子向量和值Y3=YA3+YB3+YC3。
拥有方Alice和第二数据拥有方Charlie。在块1309,Charlie将所得到的预测值子向量和值
Y3分别发送给第二数据拥有方Bob和第一数据拥有方Alice。
的情况下,实现机器学习模型的模型特征筛选。
方安全计算,由此可以降低多方安全计算的复杂度,从而提升多方安全计算效率,进而提升
模型特征筛选效率。
第一数据拥有方A 10处。
的输入特征是模型特征集中的剩余模型特征Xj。此外,该预测模型被垂直切分为多个预测
子模型,每个数据拥有方具有一个预测子模型。模型训练单元1410的操作可以参考上面参
照图4描述的块410的操作。
个数据拥有方的特征数据中去除与模型特征Xi对应的特征值后的特征数据。模型预测单元
1420的操作可以参考上面参照图4描述的块420的操作。
1430的操作可以参考上面参照图4描述的块430的操作。
的操作。
练单元1420的情况下,方差膨胀因子确定单元1430使用模型训练单元1410在最后一次循环
训练时所得到的预测差值来计算VIF。
来进行模型特征筛选。这里,模型特征筛选方可以是第三方筛选机构或者用户,或者,也可
以是多个数据拥有方中的指定数据拥有方。在接收到所有数据拥有方的所有模型特征的
VIF后,根据各个模型特征的VIF来进行模型特征筛除处理。例如,筛除VIF大于预定阈值的
模型特征,或者,根据各个模型特征的VIF的值来进行排序,并且筛除排序Top K的模型特
征。
1560、模型更新量发送/接收模块1570、模型更新模块1580和模型确定模块1590。
3描述的块502的操作以及参照图6描述的操作。
1570和模型更新模块1580被配置为循环执行操作,直到满足循环结束条件。所述循环结束
条件可以包括:达到预定循环次数;或者所确定出的预测差值位于预定范围内。在循环过程
未结束时,更新后的各个数据拥有方的转换预测子模型被用作下一循环过程的当前转换预
测子模型。
考上面参照图7描述的过程。
的操作可以参考上面参照图5描述的块504的操作以及参照图8‑图10描述的操作。
的块506的操作。
1560的操作可以参考上面参照图5描述的块507的操作。
更新量,所述第二部分模型更新量是在第二数据拥有方处对第二模型更新量进行分解而得
到的第一数目个第二部分模型更新量中的一个,所述第二模型更新量通过对所述预测差值
和所述第二数据拥有方处的第一转换特征数据执行秘密共享矩阵乘法而得到。这里,第二
数目等于第一数目减一。模型更新量发送/接收模块1570的操作可以参照上面参照图5描述
的块511的操作。
操作可以参考上面参照图5描述的块512的操作。
1590的操作可以参考上面参照图5描述的块514的操作。
件可以包括:达到预定循环次数;或者所确定出的预测差值位于预定范围内。
值。预测值获取模块1610的操作可以参考上面参照图12描述的块1220的操作以及图13中示
出的第一数据拥有方侧执行的操作。
二数据拥有方的特征样本与所确定出的预测差值之积来更新该第二数据拥有方的当前预
测子模型。预测差值发送模块1630的操作可以参考上面参照图12描述的块1240的操作。
型,其中,在循环过程未结束时,更新后的第一数据拥有方和各个第二数据拥有方的当前预
测子模型被用作下一训练过程的当前预测子模型。模型更新模块1640的操作可以参考上面
参照图12描述的块1250的操作。
数据拥有方。如图17所示,模型特征筛选装置1700包括模型训练单元1710和模型预测单元
1720。
征Xi的预测值,以及预测模型的输入特征是模型特征集中的剩余模型特征Xj,预测模型被垂
直切分为多个预测子模型,每个数据拥有方具有一个预测子模型。
各个数据拥有方的特征数据中去除与模型特征Xi对应的特征值后的特征数据。
块1860、模型更新量发送模块1870、模型更新模块1880和模型确定模块1890。
5描述的块502的操作以及参照图6描述的操作。
模型更新模块1880被配置为循环执行操作,直到满足循环结束条件。在循环过程未结束时,
更新后的各个数据拥有方的转换预测子模型被用作下一循环过程的当前转换预测子模型。
1820的操作可以参考上面参照图7描述的过程。
1830可以被配置为使用有可信初始化方秘密共享矩阵乘法或无可信初始化方秘密共享矩
阵乘法来获得当前预测值。预测值获取模块1830的操作可以参考上面参照图5描述的块504
的操作。
拥有方接收的第二部分模型更新量是在该第二数据拥有方处对自有第二模型更新量进行
分解而得到的第一数目个第二部分模型更新量中的一个,所述自有第二模型更新量是在该
第二数据拥有方处对所述预测差值和该第二数据拥有方处的第一转换特征数据执行秘密
共享矩阵乘法得到的。模型更新量接收模块1840的操作可以参考上面参照图5描述的块
508/511的操作。
作可以参考上面参照图5描述的块509的操作。模型更新量确定单元1850可以被配置为使用
有可信初始化方秘密共享矩阵乘法或无可信初始化方秘密共享矩阵乘法来得到第二模型
更新量。
作。
新量发送模块1870的操作可以参考上面参照图5描述的块511的操作。
更新模块1880的操作可以参考上面参照图5描述的块512的操作。
参照图5描述的块514的操作。
新模块1930。
测值。预测值获取模块1910的操作可以参考上面参照图12描述的块1220的操作以及图13中
示出的任一第二数据拥有方侧执行的操作。
模型更新模块1930的操作可以参考上面参照图12描述的块1250的操作。
软件或者硬件和软件的组合来实现。
储器2020、内存2030和通信接口2040经由总线2060连接在一起。该至少一个处理器2010执
行在计算机可读存储介质中存储或编码的至少一个计算机可读指令(即,上述以软件形式
实现的元素)。
的预测模型,其中,预测模型是线性回归模型,预测模型的输出是模型特征Xi的预测值,以
及预测模型的输入特征是模型特征集中的剩余模型特征Xj,所述预测模型被垂直切分为多
个预测子模型,每个数据拥有方具有一个预测子模型;以及基于模型特征Xi的预测差值,确
定模型特征Xi的方差膨胀因子,以用于模型特征筛选处理。
储器2120、内存2130和通信接口2140经由总线2160连接在一起。该至少一个处理器2110执
行在计算机可读存储介质中存储或编码的至少一个计算机可读指令(即,上述以软件形式
实现的元素)。
的预测模型,其中,预测模型是线性回归模型,预测模型的输出是模型特征Xi的预测值,以
及预测模型的输入特征是模型特征集中的剩余模型特征Xj,预测模型被垂直切分为多个预
测子模型,每个数据拥有方具有一个预测子模型,其中,预测模型的预测值被使用来确定模
型特征Xi的预测差值和方差膨胀因子,所述方差膨胀因子用于对模型特征Xi进行模型特征
筛选处理。
话、平板计算机、蜂窝电话、个人数字助理(PDA)、手持装置、可佩戴计算设备、消费电子设备
等等。
得机器执行本说明书的各个实施例中如上结合图1‑19描述的各种操作和功能。
处理器读出并执行存储在该可读存储介质中的指令。
分。
络从服务器计算机上或云上下载程序代码。
要进行确定。上述各实施例中描述的装置结构可以是物理结构,也可以是逻辑结构,即,有
些单元可能由同一物理实体实现,或者,有些单元可能分由多个物理实体实现,或者,可以
由多个独立设备中的某些部件共同实现。
ASIC)来完成相应操作。硬件单元或处理器还可以包括可编程逻辑或电路(如通用处理器或
其它可编程处理器),可以由软件进行临时的设置以完成相应操作。具体实现方式(机械方
式、或专用的永久性电路、或者临时设置的电路)可以基于成本和时间上的考虑来确定。
味着“用作示例、实例或例示”,并不意味着比其它实施例“优选”或“具有优势”。出于提供对
所描述技术的理解的目的,具体实施方式包括具体细节。然而,可以在没有这些具体细节的
情况下实施这些技术。在一些实例中,为了避免对所描述的实施例的概念造成难以理解,公
知的结构和装置以框图形式示出。
的,并且,也可以在不脱离本公开内容的保护范围的情况下,将本文所定义的一般性原理应
用于其它变型。因此,本公开内容并不限于本文所描述的示例和设计,而是与符合本文公开
的原理和新颖性特征的最广范围相一致。