基于树形结构的纵向联邦学习训练及预测方法以及装置与流程

文档序号:29737318发布日期:2022-04-21 18:02阅读:170来源:国知局
基于树形结构的纵向联邦学习训练及预测方法以及装置与流程

1.本发明涉及计算机技术领域,尤其涉及一种基于树形结构的纵向联邦学习训练及预测方法及装置。


背景技术:

2.在现实场景中,有很多有用的数据分布在不同设备或组织机构,而且这些数据通常是敏感的,因此,如何在满足数据隐私和安全的前提下,设计一个机器学习框架,让用户的数据能够被高效地共同使用成为一个亟待解决的问题,联邦学习应运而生。当不同组织机构拥有的数据用户id重合度较大但特征重叠较少时,适用于纵向联邦学习场景。在模型中只有一方能拥有标签,我们称为发起方,另外我们称数据提供方称为合作方,发起方和合作方统称为参与方。
3.目前,最具代表性、先进性和应用广泛性的纵向联邦学习框架scureboost是一种基于树的模型框架,它将机器学习算法中的xgboost算法融入纵向联邦学习场景中,在构建决策树时需要多方参与。首先,拥有标签的发起方计算损失函数梯度,对梯度加密后共享给各个合作方;随后,合作方根据自身特征对用户分区并聚合加密梯度并将聚合结果发送给发起方;发起方解密聚合梯度后计算最优分割点,接着通知最优分割点拥有方分割样本空间;合作方将最新空间划分结果通知发起方,发起方将最新结点划分结果同步给其他合作方。通过迭代上述结点分割过程逐步完成一棵决策树的构建。最后通过梯度提升方法迭代构建多棵决策树最终完成训练获得联邦学习模型。发起方拥有完整模型,但是,由于在训练阶段发起方与合作方共享树的结点空间信息,合作方拥有树的结构及部分节点信息,因此可能存在模型泄露风险。
4.在模型预测阶段,发起方利用训练所得模型,依据树结点相关信息,向结点特征拥有方询问下一步搜索方向;结点特征拥有方收到消息后,调用模型训练阶段获得的特征信息确定下一步搜索方向并发送给发起方;发起方收到来自该合作方的搜索方向后前往相应子结点;迭代上述过程直到该样本到达树的叶结点获得样本分类标签。
5.现有的模型存在以下缺陷:
6.1、在模型训练阶段,每分裂一个结点,发起方总会将该结点的分类情况共享给所有合作方,会造成合作方获取训练模型的信息(决策树结构和部分结点信息),尤其是当树的叶结点是由合作方产生时甚至存在样本标签泄露风险。
7.2、在模型预测阶段,处理一个待预测样本需要发起方和合作方进行多轮通信,尤其是当待预测样本数量较大或者决策树深度较大时,发起方和合作方之间的通信次数会急剧上升。然而在实际中,多次通信会带来严重的通信负担,影响模型预测性能。


技术实现要素:

8.为解决现有技术存在的至少部分缺陷,本发明提供一种基于树形结构的纵向联邦学习训练及预测方法及装置。
9.本发明是这样实现的:
10.第一方面,本发明提供一种基于树形结构的纵向联邦学习训练及预测方法,应用于一个发起方和多个合作方,该方法包括以下步骤:
11.发起方利用自己持有的特征数据创建第一棵决策树;
12.发起方和合作方协作依次建立第m棵决策树,m=2,3,...,m,其中m为训练的决策树总数,训练得到基于树形结构的纵向联邦学习模型;建立第m棵决策树的过程中,对于每个结点样本空间,发起方计算最优特征及特征阈值,同时设置盲化值,并通知持有相应特征的合作方,特征持有方根据收到的特征及特征阈值划分当前结点样本空间,并将结果通知发起方;
13.利用上述训练得到的纵向联邦学习模型对待预测对象的标签进行预测。
14.进一步地,发起方拥有公钥pk和私钥sk,将公钥pk共享给合作方。
15.进一步地,所述发起方和合作方协作建立第m棵决策树的创建过程如下:
16.步骤1:发起方从自己持有的特征中选择最优特征作为树的根结点,并划分子结点样本空间;使用公钥pk加密训练样本损失函数梯度,将样本损失函数梯度密文和子结点样本空间发送给各合作方;
17.步骤2:合作方依据自身特征对当前结点样本空间进行分区,聚合同一分区内样本的梯度密文并将各聚合结果发送给发起方;
18.步骤3:对于每个结点样本空间,发起方计算最优特征及特征阈值,同时任意选择一个特征及特征阈值作为盲化值,将以上最优特征及特征阈值以及作为盲化值的特征及特征阈值发送给持有相应特征的合作方;
19.步骤4:特征持有方根据收到的特征及特征阈值划分当前结点样本空间,将划分结果发送给发起方,并本地存储特征及特征阈值;
20.步骤5:发起方利用真实结点样本空间划分结果更新模型,并将所有划分结果发送给所有合作方;
21.步骤6:对于所有收到的结点样本空间,合作方按照步骤2的方法聚合梯度密文,并发送给发起方;
22.步骤7:对于真实结点样本空间,发起方计算最优特征及特征阈值;对于作为盲化值的结点样本空间,发起方任意选择一个特征及特征阈值,将以上特征及特征阈值发送给对应特征持有方;
23.重复步骤4-步骤7,直到达到预设的停止条件,完成第m棵树的创建。
24.进一步地,所述利用上述训练得到的纵向联邦学习模型对待预测对象的标签进行预测具体包括:
25.步骤1:对于待预测对象,合作方使用己方在模型训练阶段所被选择的各个特征及特征阈值与待预测对象相应特征值进行比较,并将所有比较结果发送给发起方;
26.步骤2:发起方对来自各合作方的比较结果集合进行去盲处理,获得真实特征和特征阈值的比较结果;
27.步骤3:发起方使用训练阶段所得模型和真实比较结果预测对象标签。
28.第二方面,本发明提供一种基于树形结构的纵向联邦学习训练及预测装置,应用于一个发起方和多个合作方,该装置包括:
29.第一棵决策树建立模块,用于发起方利用自己持有的特征数据创建第一棵决策树;
30.第m棵决策树建立模块,用于发起方和合作方协作依次建立第m棵决策树,m=2,3,...,m,其中m为训练的决策树总数,训练得到基于树形结构的纵向联邦学习模型;建立第m棵决策树的过程中,对于每个结点样本空间,发起方计算最优特征及特征阈值,同时设置盲化值,并通知持有相应特征的合作方,特征持有方根据收到的特征及特征阈值划分当前结点样本空间,并将结果通知发起方;
31.标签预测模块,用于利用上述训练得到的纵向联邦学习模型对待预测对象的标签进行预测。
32.第三方面,本发明提供一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上任一所述方法的步骤。
33.第四方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上任一所述方法的步骤。
34.与现有技术相比,本发明具有以下有益效果:
35.本发明提供的这种基于树形结构的纵向联邦学习训练及预测方法及装置,在模型训练阶段,合作方无法获取任何结点相关信息,降低了模型泄露的风险;在模型预测阶段,发起方和合作方仅需要进行一次通信,即可获得预测结果,减轻通信负担,提高模型预测性能。
附图说明
36.图1为本发明实施例提供的一种基于树形结构的纵向联邦学习训练及预测方法的流程图;
37.图2为本发明实施例提供的建立第m棵决策树的流程图;
38.图3为本发明实施例提供的发起方所得决策树的示意图;
39.图4为本发明实施例提供的模型预测流程图;
40.图5为本发明实施例提供的一种基于树形结构的纵向联邦学习训练及预测装置的方框图。
具体实施方式
41.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
42.如图1所示,本发明实施例提供一种基于树形结构的纵向联邦学习训练及预测方法,设有c+1个参与方,其中1个发起方a,c个合作方b1,...bc,其中只有发起方拥有样本标签信息,合作方bi拥有pi个特征,发起方a拥有p0个特征,则p0+p1+

+pc=n。训练之前输入:训练数据集t={(x1,y1),(x2,y2),...,(xn,yn)},损失函数l(y,f(x)),训练样本id集合g={1,2,...,n}。
43.该方法包括以下步骤:
44.s101、发起方a利用自己持有的p0个特征数据创建第一棵决策树;
45.s102、发起方和合作方协作依次建立第m棵决策树,m=2,3,...,m,其中m为训练的决策树总数,训练得到基于树形结构的纵向联邦学习模型;建立第m棵决策树的过程中,对于每个结点样本空间,发起方计算最优特征及特征阈值,同时设置盲化值,并通知持有相应特征的合作方,特征持有方根据收到的特征及特征阈值划分当前结点样本空间,并将结果通知发起方;
46.细化上述步骤,发起方拥有公钥pk和私钥sk,将公钥pk共享给合作方。
47.如图2所示,所述发起方和合作方协作建立第m棵决策树的创建过程如下:
48.步骤1:发起方a从自己持有的p0个特征中选择最优特征作为第m棵决策树的根结点,并将n个样本划分到两个子结点,形成两个子节点样本空间g1,g2,满足g1∪g2=g;使用公钥pk加密训练样本损失函数梯度[[gi]],[[hi]],i=1,2,...,n.(gi,hi分别表示损失函数函数l关于f(x)的一阶偏导和2阶偏导,[[]]表示同态加密),将样本损失函数梯度密文和子结点样本空间发送给各合作方;
[0049]
步骤2:合作方依据自身特征对当前结点样本空间进行分区,聚合同一分区(特征k,特征值v)内样本的梯度密文并将各聚合结果[[g
kv
]],[[h
kv
]]发送给发起方;
[0050]
步骤3:对于每个结点样本空间,发起方计算最优特征k
opt
及特征阈值v
opt
,同时任意选择一个特征k'
opt
及特征阈值v'
opt
作为盲化值,将以上最优特征及特征阈值(k
opt
,v
opt
)以及作为盲化值的特征及特征阈值(k'
opt
,v'
opt
)发送给持有相应特征的合作方,即特征持有方;
[0051]
步骤4:特征持有方根据收到的特征及特征阈值划分当前结点样本空间,将划分结果发送给发起方,并本地存储特征及特征阈值,记录id,特征属性,特征阈值;
[0052]
步骤5:发起方利用真实结点样本空间划分结果更新模型,并将所有划分结果发送给所有合作方;
[0053]
步骤6:对于所有收到的结点样本空间,包括真实结点样本空间和作为盲化值的结点样本空间,合作方按照步骤2的方法聚合梯度密文,并发送给发起方;
[0054]
步骤7:对于真实结点样本空间,发起方计算最优特征及特征阈值(k
opt
,v
opt
);对于作为盲化值的结点样本空间,即虚假结点空间,发起方任意选择一个特征及特征阈值(k'
opt
,v'
opt
),将以上特征及特征阈值(k
opt
,v
opt
),(k'
opt
,v'
opt
)发送给对应特征持有方;
[0055]
重复步骤4-步骤7,直到达到预设的停止条件,完成第m棵树的创建。其中预设停止条件是模型训练前根据发起方需求设定的训练停止条件,例如,树的深度、收敛值、训练时间等。该方法在模型训练阶段,发起方通过添加虚假特征及特征阈值作为盲化值,避免了合作方在训练阶段获取样本真实分类信息,使合作方无法获取真实模型,从而防止模型泄露。
[0056]
上述方法中,发起方所得决策树如图3所示。
[0057]
其中发起方提供2组特征及特征阈值[a,1],[a,2]划分结点样本空间,合作方b1提供3组特征及特征阈值[b1,1],[b1,2],[b1,3]划分结点样本空间,合作方b2提供3组特征及特征阈值[b2,1],[b2,2],[b2,3]划分结点样本空间,同时,合作方b1的3组特征及特征阈值[b1,4],[b1,5],[b1,6]和合作方b2的3组特征及特征阈值[b2,4],[b2,5],[b2,6]作为盲化值。
[0058]
合作方b1获得特征及特征阈值信息表如下所示
[0059][0060]
s103、利用上述训练得到的纵向联邦学习模型对待预测对象的标签进行预测。
[0061]
具体地,如图4所示,所述利用上述训练得到的纵向联邦学习模型对待预测对象的标签进行预测具体包括:
[0062]
步骤1:对于待预测对象,合作方使用己方在模型训练阶段所被选择的各个特征及特征阈值与待预测对象相应特征值进行比较,并将所有比较结果发送给发起方;
[0063]
步骤2:发起方对来自各合作方的比较结果集合进行去盲处理,获得来自真实特征和特征阈值的真实比较结果;其中来自各合作方的比较结果包含真实比较结果和用于盲化的虚假比较结果;
[0064]
步骤3:发起方使用训练阶段所得模型和真实比较结果预测对象标签。
[0065]
该方法在模型预测阶段,整个预测过程每个合作方与发起方之间仅进行了1次通信,而且由于添加关于特征及特征阈值的盲化值,因此无法推断出样本的标签预测结果。
[0066]
合作方b1对于样本x的比较结果表如下所示:
[0067][0068]
发起方a对于来自b1的去盲比较结果表如下所示:
[0069][0070]
如图5所示,本发明实施例还提供一种基于树形结构的纵向联邦学习训练及预测装置,应用于一个发起方和多个合作方,该装置包括:
[0071]
第一棵决策树建立模块11,用于发起方利用自己持有的特征数据创建第一棵决策树;
[0072]
第m棵决策树建立模块12,用于发起方和合作方协作依次建立第m棵决策树,m=2,3,...,m,其中m为训练的决策树总数,训练得到基于树形结构的纵向联邦学习模型;建立第m棵决策树的过程中,对于每个结点样本空间,发起方计算最优特征及特征阈值,同时设置盲化值,并通知持有相应特征的合作方,特征持有方根据收到的特征及特征阈值划分当前结点样本空间,并将结果通知发起方;
[0073]
标签预测模块13,用于利用上述训练得到的纵向联邦学习模型对待预测对象的标签进行预测。
[0074]
本发明实施例还提供一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法实施例的步骤。
[0075]
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有
计算机程序,所述计算机程序被处理器执行时实现上述方法实施例的步骤。
[0076]
由于上述装置、电子设备以及计算机可读存储介质实施例解决技术的原理与上述方法实施例是类似的,因此该装置、电子设备以及计算机可读存储介质的实施可以参照上述方法实施例,重复之处不再赘述。
[0077]
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1