一种纵向xgboost决策树的联邦学习方法和系统与流程

文档序号:29225221发布日期:2022-03-12 13:00阅读:548来源:国知局
一种纵向xgboost决策树的联邦学习方法和系统与流程

1.本发明涉及联邦学习和机器学习决策树技术领域,尤其涉及一种纵向xgboost决策树的联邦学习方法和系统。


背景技术:

2.纵向xgboost决策树联邦学习是指当每个样本的特征信息和标签信息掌握在不同所有者处,各方联合进行xgboost决策树的训练,并且各方在训练和推理过程中不希望向其他任意方泄露关于样本的特征信息或者标签信息。
3.例如xgboost决策树的训练所需要的完整样本信息如下,例举表一:idx1x2x3x4x5x6yu1.....................u2.....................u3.....................其中,id表示能唯一确定所描述对象的标识,x1到x6表示该对象的属性信息(特征信息),y表示标签信息。其中的属性信息有可能分布在不同的机构,例如机构a具有前三个特征信息和标签信息;机构b具有后三个特征信息。比如,现实中银行和保险机构可以有一批共同的客户,而银行和保险具有关于其共同客户的不同属性信息,因此不同机构间具有联合进行xgboost决策树训练的条件。联合训练的障碍来自银行和保险不愿/不能向对方透漏各自客户的信息。
4.目前,对于使用paillier同态加密方案设计纵向xgboost决策树联邦学习,例如secureboost方案,它是一种新的基于联邦学习的无损隐私保护树增强方案,具体阐述如下:在secureboost方案中,拥有标签信息的参与方称为“主动方”(active party);只拥有特征信息的参与方称为“被动方”(passive parties);“主动方”一般在一个系统中唯一存在,“被动方”可以有多个参与方,各参与方联合训练得到xgboost决策树模型。
5.具体的,训练过程为如下:根据前t-1轮生成的决策树模型计算每个样本的一阶梯度gi和二阶梯度hi,例如对逻辑回归的损失函数:这些信息包含主动方的标签信息,主动方不愿向被动方透露标签信息。
6.主动方生成paillier加法同态加密方案的公钥和私钥,安全保存私钥,将公钥发送给其他被动方。主动方使用公钥加密一阶梯度gi和二阶梯度hi,并将加密后的密文<gi>和<hi>发送其他被动方,根据加法同态加密的特性,被动方可以在不知密文对应明文的
情况下计算样本空间的梯度累积和。
7.被动方根据密文梯度信息分别计算所有特征对应的所有可能分裂空间的密文梯度累加值,并将该密文值发送给主动方。主动方收到被动方的密文梯度累加值后,使用私钥解密。主动方根据解密后的梯度累加值计算全体的最优分裂点。各被动方使用加法同态在本地计算可能的分裂点的梯度和。
8.以上,主动方根据解密后的梯度和寻找最优的分裂点。被动方只能被动接收主动方所发送的最佳分裂点的特征和阈值。相应的被动方根据接收的分裂特征和阈值进行样本空间的划分。从整个过程看被动方的作用是辅助主动方寻找最优的分裂点。由算法描述知,主动方可获取被动方的所有可能分裂点的梯度累加值,主动方可获取决策树模型的所有消息,包括决策树的结构,每个节点的判断条件,以及叶子节点的权重消息。
9.除了以上训练过程,相应的联合推理过程为:每一棵树的推理过程均是在主动方的导引下由多个参与方协助完成路径的推理。从一棵树的根节点开始,对每个需要进行决策的节点,主动方询问相应特征的所有者进行路径的判别,直到获得叶子节点的权重值。
10.在secureboost方案的训练过程中,具体的,每轮树的训练过程中,每个被动方需要向主动方发送所有可能分裂样本空间的梯度和,主动方可获取大量数据。例如:对一个节点,样本集合中有5个元素,那么主动方可能获得如下信息:表一上面例子可得:o1《1;1=《o2,o3《2;2=《o4,o5《3。主动方可获取大量对同一个集合的划分信息,其实就是对集合中每个元素的取值的判别信息,从中泄露每个样本的每个特征的取值范围,划分的粒度越小,信息泄露越严重。
11.在secureboost方案的联合推理过程中,被动方对一个节点的判别会直接向主动方泄露该特征的范围信息,由于xgboost由多棵树组成,每棵树中对一个特征的判别可以分布在多层,因此该方案的推理过程对被动方的特征信息泄露严重。
12.例如,一个节点的对年龄的判别结果是小于30,一个节点对年龄的判别是大于或等于20,那么主动方可直接获得的信息是被推理的对象的年龄是20至30岁之间的,随着树的层数和数量的增加被推理对象的信息泄露愈发严重,当一个特征的取值范围较小时可能完全被泄露。
13.以上,在secureboost方案的训练过程和联合推理过程中,都是存在被动方的特征信息泄露严重的情况,那么在纵向xgboost决策树联邦学习过程中,是难以保护各方样本的特征信息的隐私安全性的。


技术实现要素:

14.有鉴于此,本发明提供一种纵向xgboost决策树的联邦学习方法和系统,主要目的在于保证各方所持有样本的特征数据的隐私性,增强对各方特征数据的安全性。
15.为了达到上述目的,本发明主要提供如下技术方案:本发明第一方面提供了一种纵向xgboost决策树的联邦学习方法,该方法包括:根据前t-1轮生成的决策树模型,参与方计算每个样本的一阶梯度和二阶梯度;一个所述参与方将每个样本的一阶梯度和二阶梯度发送给其他多个参与方;每个所述参与方在本地计算其拥有的所有特征对应的多个分裂值并从中选择最大分裂值,得到每个所述参与方自身对应的最大分裂值;通过比较每个所述参与方自身对应的最大分裂值,选择一个全局最大分裂值;根据所述全局最大分裂值确定目标分裂点,完成对节点样本空间进行划分,将划分后的节点样本空间对应的集合信息同步给每个所述参与方,以使得每个所述参与方共同获知每棵决策树的全局结构信息,用于完成对第t轮生成的k棵决策树模型的训练过程;每个所述参与方分别对所述k棵决策树模型中所有需要其负责判别的节点进行本地判别,利用门限同态加密方案保护各个所述参与方的交互过程,以完成纵向联邦决策树的联合推理过程。
16.在本技术的一些变更实施方式中,所述每棵决策树的全局结构信息,包括:每个节点对应的属主、不同节点之间的关联,所述属主为对节点进行判别的参与方;每个节点具有唯一编号,所述编号为由树的序号和节点所述树中的位置进行表征。
17.在本技术的一些变更实施方式中,所述通过比较每个所述参与方自身对应的最大分裂值,选择一个全局最大分裂值,包括:在每个所述参与方确定自身对应的最大分裂值之后,每个所述参与方将自身对应的最大分裂值发送给其他参与方;所有的参与方经比较多个所述最大分裂值,从中选择一个全局最大分裂值。
18.在本技术的一些变更实施方式中,所述根据所述全局最大分裂值确定目标分裂点,完成对节点样本空间进行划分,包括:根据所述全局最大分裂值,确定对应的属主;根据所述全局最大分裂值和所述属主,确定目标分裂点的特征和阈值;根据所述特征和阈值对节点样本空间进行划分。
19.在本技术的一些变更实施方式中,所述每个所述参与方分别对所述k棵决策树模型中所有需要其负责判别的节点进行本地判别,利用门限同态加密方案保护各个所述参与方的交互过程,以完成纵向联邦决策树的联合推理过程,包括:每个所述参与方获取对应的判别输出表;根据所述判别输出表,每个所述参与方计算对应所负责节点的判别边长,得到所负责节点对应的目标边长;
每个所述参与方对所负责节点的所述目标边长使用门限同态加密方案的公钥进行加密,得到所负责节点对应的密文边长;每个所述参与方向其他参与方公开包含有所负责节点的节点编号和密文边长的对照表;根据所述对照表,每个叶子节点对应的属主收集从根节点达到叶子节点对应途径的所有节点的密文边长,使用同态加法计算对应的密文边长和;对于每个叶子节点,所述叶子节点的属主会生成一个标志密文和隐藏权重密文的二元组;每个所述参与方对其所负责的所有叶子节点的标志密文和隐藏权重密文的二元组进行随机置换后公开;每个所述参与方对公开的二元组中的标志密文进行分布式解密,得到解密结果;每个所述参与方将标志密文解密结果为0的元组中的隐藏权重密文使用同态加法计算隐藏权重密文之和,得到推理结果密文并公开;根据公开的所述推理结果密文,每个所述参与方获得样本对应的推理结果,以完成纵向联邦决策树的联合推理过程。
20.在本技术的一些变更实施方式中,所述根据公开的所述推理结果密文,每个所述参与方获得样本对应的推理结果,包括:每个所述参与方对所述推理结果密文进行分布式解密,将解密的中间结果发送需要获得样本推理结果的参与方;根据所述中间结果,所述需要获得样本推理结果的参与方获得样本的推理结果。
21.在本技术的一些变更实施方式中,使用的所述门限同态加密方案为可使用门限somewhat同态加密的技术。
22.本发明第二方面提供了一种纵向xgboost决策树的联邦学习系统,应用于执行如上所述的方法,所述系统包括:多个参与方,每个所述参与方拥有特征信息和标签信息;多个所述参与方联合进行xgboost决策树的训练和推理过程。
23.本发明第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的纵向xgboost决策树的联邦学习方法本发明第四方面提供了一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的纵向xgboost决策树的联邦学习方法。
24.借由上述技术方案,本发明提供的技术方案至少具有下列优点:本发明提供的一种纵向xgboost决策树的联邦学习方法和系统。本发明提供了纵向xgboost决策树的联合训练过程和联合推理过程,在联合训练过程中计算分裂点以及在联合推理过程中对每个节点进行判别,联合训练过程公开的信息是每个参与方的最大分裂值,而不会直接泄露每个参与方的特征信息,联合推理过程的安全依赖门限同态加密方案。相较于现有技术,解决了因现有的纵向联邦决策树方案难以保护各方样本的特征信息的隐私安全性的问题,本发明能够在联合训练和联合推理过程中保证各方所持有样本的特征数据的隐私性,增强对各方特征数据的安全性。
25.上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
26.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1为本发明实施例提供的一种纵向xgboost决策树的联邦学习方法流程图;图2为本发明实施例提供的对纵向xgboost决策树的联邦学习的联合推理过程的流程图。
具体实施方式
27.下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
28.本发明实施例提供了一种纵向xgboost决策树的联邦学习方法,该方法由多个参与方联合训练和联合推理,这些多个参与方组成了一个实现该方法对应的系统,即一种纵向xgboost决策树的联邦学习系统。具体的,该系统包括:多个参与方,每个参与方拥有特征信息和标签信息,多个参与方联合进行xgboost决策树的训练和推理过程。
29.对于本发明实施例提供的纵向xgboost决策树的联邦学习方法,如图1所示,对此本发明实施例提供以下具体步骤:101、根据前t-1轮生成的决策树模型,参与方计算每个样本的一阶梯度和二阶梯度。
30.其中,参与方为拥有标签信息和特征信息。
31.在本发明实施例中,对于第t轮训练进行解释说明,假定标签信息的所有者(即标识为参与方)通过安全的联合推理过程获得所有样本的推理结果,标签信息的所有者通过所有样本的推理结果和标签信息计算得到每个样本的一阶梯度和二阶梯度。
32.102、一个参与方将每个样本的一阶梯度和二阶梯度发送给其他多个参与方。
33.103、对于一个决策树节点的训练,每个参与方在本地计算其拥有的所有特征对应的多个分裂值并从中选择最大分裂值,得到每个参与方自身对应的最大分裂值。
34.在本发明实施例中,对于一个节点的分裂方法为,每个参与方在本地计算所有特征的所有可能分裂值,采用如下计算公式(1):其中,l
split
为分裂值,i
l
为该节点样本空间分裂后的左孩子集合,ir为该节点样本空间分裂后的右孩子集合,i为该节点样本空间集合。每个参与方从自身得到多个分裂值中
选取最大分裂值l
split,max

35.104、通过比较所有参与方的最大分裂值,选择其中的最大值作为上述决策树节点的全局最大分裂值。
36.在本发明实施例中,进一步的,本步骤细化解释说明为:在每个参与方确定自身对应的最大分裂值之后,每个参与方将自身对应的最大分裂值发送给其他参与方;所有的参与方经比较多个最大分裂值,选择其中的最大值作为一个全局最大分裂值。
37.105、根据全局最大分裂值确定决策树节点的分裂信息,完成对节点样本空间的划分,将划分后的节点样本空间对应的集合信息同步给每个参与方,以使得每个参与方共同获知每棵决策树的全局结构信息,用于完成对第t轮生成的k棵决策树模型的训练过程。
38.在本发明实施例中,进一步的,本步骤细化解释说明为:根据全局最大分裂值,确定对应的属主,即提供该节点的全局最大分裂的参与方;根据全局最大分裂值和属主,确定决策树节点的的分裂特征和阈值;根据特征和阈值对节点样本空间进行划分。分裂点指对样本集合进行划分的特征和阈值。
39.进一步的,对于节点分裂后下层节点成为叶子节点的情况,该参与方不发送分裂后的集合信息,而是计算叶子节点的权重值,仅告知其他参与方分支已达到叶子节点。
40.需要说明的是,将划分后的节点样本空间对应的集合信息同步给每个参与方,以使得每个参与方共同获知每棵决策树的全局结构信息。具体的,每棵决策树的全局结构信息,包括:每个节点对应的属主、不同节点之间的关联,该属主为对节点进行判别的参与方;每个节点具有唯一编号,编号为由树的序号和节点树中的位置进行表征。
41.对于本发明实施例,以上步骤101-105为决策树的训练过程,每个参与方共同知悉每棵决策树的全局结构信息,每个参与方在每个决策树节点分裂信息的寻找过程中仅发送一次本地可能分裂点的最大分裂值,用于比较出全局最大分裂值,而没有发送任何与本地特征相关的信息,如:每个参与方秘密保存各自的节点判别信息,包括所负责的节点的判别特征和阈值。
42.106、每个参与方分别对k棵决策树模型中所有需要其负责判别的节点进行本地判别,利用门限同态加密方案保护各个参与方的交互过程,以完成纵向联邦决策树的联合推理过程。
43.对于本发明实施例,采用的门限同态加密方案,是指多个参与方共同使用各自的私钥对同一个密文进行解密的同态加密方案。同态加密方案一般由:密钥生成,加密,解密,密文加法,密文乘法等算法组成;门限同态加密方案则要求密钥生成和解密算法具有分布式特性,而加密、密文加法和密文乘法保持不变。本发明实施例仅使用门限somewhat同态加密。
44.在本发明实施例中,联合推理过程的安全依赖门限同态加密方案,每个参与方分别对k棵决策树模型中所有需要其负责判别的节点进行本地判别,利用门限同态加密方案保护各个参与方的交互过程,以保证各方所持有样本的特征数据的隐私性。
45.以上,本发明实施例提供的一种纵向xgboost决策树的联邦学习方法。本发明实施例提供了纵向xgboost决策树的联合训练过程和联合推理过程,在联合训练过程中计算分裂点以及在联合推理过程中对每个节点进行判别,联合训练过程公开的信息是每个参与方的最大分裂值,而不会直接泄露每个参与方的特征信息,联合推理过程的安全依赖门限同
态加密方案。相较于现有技术,解决了因现有的纵向联邦决策树方案难以保护各方样本的特征信息的隐私安全性的问题,本发明实施例能够在联合训练和联合推理过程中保证各方所持有样本的特征数据的隐私性,增强对各方特征数据的安全性。
46.为了对上述实施例的步骤106做出更加详细的说明,本发明实施例还进一步地对纵向xgboost决策树的联邦学习的联合推理过程进行解释说明,如图2所示,对于一个样本的联合推理,本发明实施例提供以下具体步骤:首先,各参与方联合训练获得k棵决策树模型,所有参与方联合进行门限同态加密方案的实例的初始化,各自安全生成并保存私钥,联合生成门限同态加密方案公钥。然后,利用门限同态加密方案保护各个参与方的交互过程,执行如下步骤201-210。
47.201、每个参与方获取对应的判别输出表。
48.在本发明实施例中,决策树模型中的每个节点的属主(即对该节点进行判别的参与方)在本地使用相应的判别特征和阈值对该样本的特征取值进行判别,特征取值小于阈值输出0,否则输出1。
49.每个参与方分别对k棵决策树模型中所有需要其负责判别的节点进行本地判别。每个参与方均可得到一张判别输出表,如下表二。
50.表二202、根据判别输出表,每个参与方计算对应所负责节点的判别边长,得到所负责节点对应的目标边长。
51.在本发明实施例中,结合表二进行解释说明如下:每个参与方分别计算每个所负责节点的“判别边长”得到对应的目标边长,一个判别节点的判别边长等于判别结果乘以节点权重,节点权重等于以2为基数的决策树的深度减去节点的层数次幂。决策树中节点的层数的设置为从根节点开始递增,即根节点层数设置为第0层,一个父节点分裂后子节点的层数等于父节点层数加1。节点权重的设置为上层节点的权重是下层节点的2倍,最底层判别节点的权重为1;在深度为d决策树中,层数为l的节点的权重等于2
d-l
。决策树中父节点到左孩子节点的边长设置为0,到右孩子节点的边长设置为子节点的节点权重;那么对于每个叶子节点,“路程”定义为从叶子节点到根节点的路径上的所有边长之和。一棵树中每个叶子节点的路程是固定且唯一的。
52.203、每个参与方对所负责节点的目标边长使用门限同态加密方案的公钥进行加密,得到所负责节点对应的密文边长。
53.在本发明实施例中,使用的门限同态加密方案为可使用门限somewhat同态加密。每个参与方将所负责的每个节点的“目标边长”使用门限同态加密方案的公钥进行加密得到“密文边长”。
54.204、每个参与方向其他参与方公开包含有所负责节点的节点编号和密文边长的
对照表。
55.对于本发明实施例,例举每个参与方公开所负责节点的节点编号和密文边长的对照表,如下表三。
56.表三205、根据对照表,每个叶子节点对应的属主收集从根节点达到叶子节点对应途径的所有节点的密文边长,使用同态加法计算对应的密文边长和。
57.结合每个参与方所公开的对照表,每个叶子节点的属主收集从根节点到达该叶子节点途经的所有节点的密文边长,然后使用同态加法计算途经节点的密文边长和。
58.206、对于每个叶子节点,叶子节点的属主会生成一个标志密文和隐藏权重密文的二元组。
59.在本发明实施例中,对于一个叶子节点,该叶子节点的属主生成一个标志密文和隐藏权重密文二元组,具体实施方法包括如下:随机生成两个随机数,使用同态操作计算得到途经节点边长和减去叶子节点路程再乘以一个随机数的密文,使用同态操作计算得到途经节点边长和减去叶子节点路程再乘以另一个随机数的结果再加上叶子节点的权重的密文。该过程中涉及到密文的加减法和乘法均为同态加密方案定义的操作算法。
60.例如,设一个叶子节点的路程为c,路程的密文为<c>,途经节点的密文边长和为<d>,所选取的随机数分别为r1和r2,随机数的密文分别为<r1>和<r2>,该叶子节点的权重为w,密文权重为<w>;通过同态计算可得:标志密文=(<c>-<d>)*<r1>=<(c-d)*r1>,隐藏权重密文=(<c>-<d>)*<r2>+<w>=<(c-d)*r2+w>。
61.这个过程相当于所有参与方以密文的形式联合遍历决策树的所有路径。
62.需要说明的是,根据以上公式分析,对于一个样本的推理过程中,当一个叶子节点的“路程”与途经节点的边长之和相等时,表明一棵树的推理输出为该叶子节点,此时标志密文的解密结果为0,隐藏权重密文的解密结果等于该叶子节点的权重值。当叶子节点的“路程”与途经节点的边长之和不相等时,标志密文的解密结果为随机值,不会泄露途经节点的边长之和,隐藏权重密文的解密结果也为随机值,不会泄露叶子节点的权重。
63.207、每个参与方对其所负责的所有叶子节点的标志密文和隐藏权重密文的二元组进行随机置换后公开。
64.具体的,所有参与方按照一定顺序依次对所有的标志密文和隐藏权重密文元组进行密文更新和元组顺序随机置换。一个参与方获取所有的标志密文和隐藏权重密文元组后将每个密文加上0的密文,也就是使得原密文发生变化,但是解密结果不发生变化。再对元组的顺序进行随机置换后公开,另一个参与方接着对新的元组进行更新和置换。
65.对所有叶子节点的标志密文和隐藏权重密文元组进行密文更新和元组顺序随机
置换的目的是,隐藏每棵树的输出来源,避免泄露输出路径。
66.208、每个参与方对公开的二元组中的标志密文进行分布式解密,得到解密结果。
67.具体的,所有参与方对完成更新和置换后的所有元组中的标志密文进行分布式解密,所有参与方或需要样本推理结果的参与方可获得解密结果。
68.209、每个参与方将标志密文解密结果为0的元组中的隐藏权重密文使用同态加法计算隐藏权重密文之和,得到推理结果密文并公开。
69.210、根据公开的推理结果密文,每个参与方获得样本对应的推理结果,以完成纵向联邦决策树的联合推理过程。
70.在本发明实施例中,具体的为,每个参与方对推理结果密文进行分布式解密,将解密的中间结果发送需要获得样本推理结果的参与方,根据中间结果,需要获得样本推理结果的参与方获得样本的推理结果。
71.以上,本发明实施例提供的对纵向xgboost决策树的联邦学习的联合推理过程,使用门限同态加密方案保护交互过程,仅当所有成员同步解密时才能知悉密文信息,使得联合训练和联合推理过程中均不泄露决策的中间结果,以此保护各方样本的特征信息。
72.下面,进一步的,本发明实施例还提供了对决策树的联合推理过程安全性分析,以下以一个更一般的模型,论证树的联合推理过程中树的决策路径应当保密,进一步说明树的每个节点的判别信息或者权重信息应当保密。
73.假设已知一棵决策树,树的每个节点的判别信息(判别特征和阈值)只由持有该特征的参与方知悉,所有参与方仅知道树的结构,也就是树的每个节点的属主和节点间连接关系。
74.决策树的推理过程为一个节点的属主直接将判别结果发送下一层分支的属主,最终将叶子节点的权重信息发送给“主动方”(推理结果的获取方)。
75.该模型在初始阶段保护决策树中的每个节点信息,但在推理过程中没有保护推理路径信息。更通用的模型为以某种方式“主动方”只能获取最终的推理结果,而不知道结果是哪些叶子节点的和。
76.联合决策树推理模型:各参与方已知森林中每棵树的节点属主和节点间连接关系,拥有标签信息的主动方可获得叶子节点权重(保护标签),推理过程为主动方仅获取推理结果(所有树的输出叶子节点的和)。
77.对该模型的攻击方法如下:前提条件,主动方已知一个全部特征的样本集合;该前提条件具有合理性,主动方可以原本具有一个具有全部特征的样本子集,但其拥有的数据大部分具有属性缺失而需要其他参与方联合训练模型;主动方可随着时间的推移不断收集关于样本的其他属性信息;主动方可不断向其他参与方安插其构造的样本信息。
78.主动方利用一个其已知全部特征的样本集合进行联合决策树的推理,并获得相应的推理结果。
79.1、恢复推理路径主动方可根据推理结果和每棵树的叶子节点权重恢复部分树的推理路径;推理结果是所有树的输出叶子节点的累加和,因此某些结果可能具有唯一的组合,因而可获取多棵树的推理路径。主动方自有节点可以用于排除不正确的路径或者确认可能的路径。
80.2、恢复路径上节点的判别信息主动方已获得一些样本的推理路径,对于两个通过同一个节点的样本,计算该节点的所有可能特征的差异度。差异度定义为两个样本的同一个特征的样本值的差与取值范围的比例。如果两个样本在共同经过点的判断走向相同,则认为该节点的特征差异度最小的特征为判别特征的概率更大;如果走向相反,则认为在该节点的特征差异度最大的特征为判别特征的概率更大;通过多个经过同一个节点的样本之间的交叉比对,确定一个节点的判别特征。设置一个节点的判别阈值为通过该节点的左向样本的最大值与右向样本的最小值的均值。
81.由上述两步可逐渐恢复决策树的完整信息;新增的样本可不断完善模型恢复的正确性和准确度。决策树模型一旦泄露,则过往和未来的经过该决策树的样本特征都会通过推理过程被主动方获取,相当于不具备“前向和后向安全性”。
82.由以上分析可得:决策树的模型信息必须由各参与方各自秘密保存,即使是叶子节点的信息也不能泄露;推理过程中不能泄露决策的中间结果,即不能直接公开每棵树的预测输出和每个节点的判别走向。
83.综上所述,本发明实施例提供的纵向xgboost决策树的联邦学习方法,使得持有相同对象的不同特征的多个机构可以联合进行xgboost决策的训练和推理。该方案主要保证各方所持有样本的特征数据的隐私性,而不保护样本的标签数据,通过此种设计达到安全性和性能的兼顾,相比于已有的纵向联邦决策树方案如secureboost,本方案增强对各方特征数据的安全性,相比于使用通用安全多方计算的方案,本方案计算和通讯效率更优。
84.本方案的特性:各方仅知悉各自负责节点的信息,决策树的模型信息必须由各参与方各自秘密保存,即使是叶子节点的信息也不向其他方泄露;训练过程和推理过程的主要计算工作由各方本地完成;使用门限同态加密方案保护交互过程,仅当所有成员同步解密时才能知悉密文信息,使得训练和推理过程中均不泄露决策的中间结果,以此保护各方样本的特征信息。
85.本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的纵向xgboost决策树的联邦学习方法。
86.本发明实施例提供了一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的纵向xgboost决策树的联邦学习方法。
87.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
88.在一个典型的配置中,设备包括一个或多个处理器(cpu)、存储器和总线。设备还可以包括输入/输出接口、网络接口等。
89.存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/
或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram),存储器包括至少一个存储芯片。存储器是计算机可读介质的示例。
90.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存 (pram)、静态随机存取存储器 (sram)、动态随机存取存储器 (dram)、其他类型的随机存取存储器 (ram)、只读存储器 (rom)、电可擦除可编程只读存储器 (eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器 (cd-rom)、数字多功能光盘 (dvd) 或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体 (transitory media),如调制的数据信号和载波。
91.本领域技术人员应明白,本技术的实施例可提供为方法、系统或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
92.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
93.以上仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1