纵向联邦决策树训练方法及装置与流程

文档序号:31050848发布日期:2022-08-06 07:08阅读:103来源:国知局
纵向联邦决策树训练方法及装置与流程

1.本公开涉及计算机技术领域,尤其涉及一种纵向联邦决策树训练方法及装置。


背景技术:

2.隐私计算为在不泄漏自身数据的前提下实现数据分析、数据计算等等的技术集合,以达到对数据“可用但不可见”的目的。在此场景下,数据的拥有者常常为两方或者多方,且纵向联邦学习场景下的参与者往往都含有一份数据的部分特征,任意一方在不想泄漏自己的任何数据以达到使用其他方的部分特征数据共同训练一棵决策树,就需要将隐私计算技术与决策树相结合。对于训练决策树过程中产生的通信数据,进行一定的处理,让处理后的临时数据摆脱与原有数据的关系或者处于加密且能进行运算的状态,从而达到了利用对方数据共同训练决策树,也达到了保护本方数据让对方不可见的高安全效果。
3.然而,现有决策树算法的应用场景大多数都为单机版本,很少出现纵向联邦学习版本。即便是联邦学习版本,其通信无法保证双方、多方数据“可用不可见”,存在泄漏数据的风险,无法满足“高安全”的要求。
4.公开于本技术背景技术部分的信息仅仅旨在加深对本技术的一般背景技术的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域技术人员所公知的现有技术。


技术实现要素:

5.本公开实施例提供一种纵向联邦决策树训练方法及装置,能够精准的解决数据泄漏问题,通信内容均为对数据的统计值,脱离了与原始数据的关系,避免了原始数据进行加密通信中的泄露问题,即便通信内容被拦截破解也无法反推出原始数据信息,从而达到了“可用不可见”和“高安全”的特性。并且可以以更高的训练精度完成对决策树的训练过程,使得决策树可同时被训练发起方和训练参与方使用,且互相之间数据不共享,在提升训练精度的同时,保证了数据的安全性。
6.本公开实施例的第一方面,提供一种纵向联邦决策树训练方法,包括:对训练发起方的具有的训练样本的第一特征及训练参与方具有的训练样本的第二特征进行等宽分箱,获得训练发起方的第一离散特征和训练参与方的第二离散特征,其中,所述训练发起方具有所述训练样本的标签;对决策树的当前节点,所述训练发起方根据所述训练样本的标签及所述第一离散特征,获得第一基尼系数;所述训练发起方将所述标签加密传输至所述训练参与方;所述训练参与方根据所述等宽分箱的分箱节点,获得所述训练样本的第一分类结果,并加密发送至训练发起方;根据加密状态的标签和加密状态的第一分类结果,由训练发起方获得第二基尼系数,并由训练参与方获得第三基尼系数;
根据所述第一基尼系数、所述第二基尼系数和所述第三基尼系数,确定决策树的当前节点的切分点;根据所述决策树的各节点的切分点,对决策树进行训练,获得训练后的决策树。
7.根据本公开的实施例,根据加密状态的标签和加密状态的第一分类结果,所述由训练发起方获得第二基尼系数,包括:根据加密状态的标签和加密状态的第一分类结果,确定训练发起方的各第一离散特征的特征值的第二基尼系数。
8.根据本公开的实施例,确定训练发起方的各第一离散特征的特征值的第二基尼系数,包括:根据公式确定以第一离散特征的特征值作为分类的切分点的第二基尼系数,其中,,为第i个训练样本,,为加密状态的标签,为加密状态的第一分类结果,表示根据第一分类结果确定的训练样本的第一个类别,表示第一个类别的样本数量,表示根据第一分类结果确定的训练样本的第二个类别,,表示第二个类别的样本数量,表示训练样本集合。
9.根据本公开的实施例,根据加密状态的标签和加密状态的第一分类结果,由训练参与方获得第三基尼系数,包括:根据加密状态的标签和加密状态的第一分类结果,确定训练参与方的各第二离散特征的特征值的第三基尼系数。
10.根据本公开的实施例,根据所述第一基尼系数、所述第二基尼系数和所述第三基尼系数,确定决策树的当前节点的切分点,包括:对所述第二基尼系数进行解密,获得解密后的第二基尼系数,并对所述第三基尼系数进行解密,获得解密后的第三基尼系数;确定所述第一基尼系数、所述解密后的第二基尼系数和所述解密后的第三基尼系数中的最小值;将所述最小值对应的特征的特征值,作为所述当前节点的切分点。
11.根据本公开的实施例,所述方法还包括:在所述最小值小于基尼系数阈值的情况下,停止当前节点的训练。
12.根据本公开的实施例,所述方法还包括:在所述训练样本的数量小于数量阈值的情况下,停止当前节点的训练。
13.本公开实施例的第二方面,提供一种纵向联邦决策树训练装置,包括:分箱模块,用于对训练发起方的具有的训练样本的第一特征及训练参与方具有的
训练样本的第二特征进行等宽分箱,获得训练发起方的第一离散特征和训练参与方的第二离散特征,其中,所述训练发起方具有所述训练样本的标签;第一系数模块,用于对决策树的当前节点,所述训练发起方根据所述训练样本的标签及所述第一离散特征,获得第一基尼系数;传输模块,用于所述训练发起方将所述标签加密传输至所述训练参与方;分类模块,用于所述训练参与方根据所述等宽分箱的分箱节点,获得所述训练样本的第一分类结果,并加密发送至训练发起方;系数获得模块,用于根据加密状态的标签和加密状态的第一分类结果,由训练发起方获得第二基尼系数,并由训练参与方获得第三基尼系数;切分点模块,用于根据所述第一基尼系数、所述第二基尼系数和所述第三基尼系数,确定决策树的当前节点的切分点;训练模块,用于根据所述决策树的各节点的切分点,对决策树进行训练,获得训练后的决策树。
14.根据本公开的实施例,所述系数获得模块进一步配置为:根据加密状态的标签和加密状态的第一分类结果,确定训练发起方的各第一离散特征的特征值的第二基尼系数。
15.根据本公开的实施例,所述系数获得模块进一步配置为:根据公式确定以第一离散特征的特征值作为分类的切分点的第二基尼系数,其中,,为第i个训练样本,,为加密状态的标签,为加密状态的第一分类结果,表示根据第一分类结果确定的训练样本的第一个类别,表示第一个类别的样本数量,表示根据第一分类结果确定的训练样本的第二个类别,,表示第二个类别的样本数量,表示训练样本集合。
16.根据本公开的实施例,所述系数获得模块进一步配置为:根据加密状态的标签和加密状态的第一分类结果,确定训练参与方的各第二离散特征的特征值的第三基尼系数。
17.根据本公开的实施例,所述切分点模块进一步配置为:对所述第二基尼系数进行解密,获得解密后的第二基尼系数,并对所述第三基尼系数进行解密,获得解密后的第三基尼系数;确定所述第一基尼系数、所述解密后的第二基尼系数和所述解密后的第三基尼系数中的最小值;将所述最小值对应的特征的特征值,作为所述当前节点的切分点。
18.根据本公开的实施例,所述装置还用于:在所述最小值小于基尼系数阈值的情况下,停止当前节点的训练。
19.根据本公开的实施例,所述装置还用于:在所述训练样本的数量小于数量阈值的情况下,停止当前节点的训练。
20.本公开实施例的第三方面,提供一种纵向联邦决策树训练设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为调用所述存储器存储的指令,以执行上述方法。
21.本公开实施例的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现上述方法。
附图说明
22.图1示例性地示出本公开实施例纵向联邦决策树训练方法的流程示意图;图2示例性地示出本公开实施例训练样本的示意图;图3示例性地示出本公开实施例纵向联邦决策树训练装置的框图;图4是根据一示例性实施例示出的一种纵向联邦决策树训练设备的框图。
具体实施方式
23.为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
24.本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
25.应当理解,在本公开的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本公开实施例的实施过程构成任何限定。
26.应当理解,在本公开中,“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
27.应当理解,在本公开中,“多个”是指两个或两个以上。“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。“包含a、b和c”、“包含a、b、c”是指a、b、c三者都包含,“包含a、b或c”是指包含a、b、c三者之一,“包含a、b和/或c”是指包含a、b、c三者中任1个或任2个或3个。
28.应当理解,在本公开中,“与a对应的b”、“与a相对应的b”、“a与b相对应”或者“b与a相对应”,表示b与a相关联,根据a可以确定b。根据a确定b并不意味着仅仅根据a确定b,还可以根据a和/或其他信息确定b。a与b的匹配,是a与b的相似度大于或等于预设的阈值。
29.取决于语境,如在此所使用的“若”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”或“响应于检测”。
30.下面以具体地实施例对本公开的技术方案进行详细说明。下面这几个具体的实施
例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
31.图1示例性地示出本公开实施例纵向联邦决策树训练方法的流程示意图,如图1所示,所述方法包括:s1:对训练发起方的具有的训练样本的第一特征及训练参与方具有的训练样本的第二特征进行等宽分箱,获得训练发起方的第一离散特征和训练参与方的第二离散特征,其中,所述训练发起方具有所述训练样本的标签;s2:对决策树的当前节点,所述训练发起方根据所述训练样本的标签及所述第一离散特征,获得第一基尼系数;s3:所述训练发起方将所述标签加密传输至所述训练参与方;s4:所述训练参与方根据所述等宽分箱的分箱节点,获得所述训练样本的第一分类结果,并加密发送至训练发起方;s5:根据加密状态的标签和加密状态的第一分类结果,由训练发起方获得第二基尼系数,并由训练参与方获得第三基尼系数;s6:根据所述第一基尼系数、所述第二基尼系数和所述第三基尼系数,确定决策树的当前节点的切分点;s7:根据所述决策树的各节点的切分点,对决策树进行训练,获得训练后的决策树。
32.根据本公开的实施例,在纵向联邦决策树训练方法中,训练的决策树可包括二分类决策树,训练发起方和训练参与方的数量均为一个。本公开对决策树的类型以及训练发起方和训练参与方的数量不做限制。
33.图2示例性地示出本公开实施例训练样本的示意图。
34.根据本公开的实施例,可通过某个训练集来训练上述就决策树,训练集中的训练样本的数量为n个,其中,训练发起方和训练参与方各具有训练样本的一部分特征的特征值。例如,训练发起方具有训练样本的f1_发起方、f2_发起方

等特征,以及各训练样本在这些特征中的特征值。训练参与方具有训练样本的f1_参与方、f2_参与方

等特征,以及各训练样本在这些特征中的特征值。并且,训练样本的标签y为训练发起方所具有。在示例中,所述训练样本为图像样本、音频样本等,本公开对训练样本的类型不做限制。
35.根据本公开的实施例,在步骤s1中,可分别对训练发起方的具有的训练样本的第一特征及训练参与方具有的训练样本的第二特征进行等宽分箱,获得训练发起方的第一离散特征和训练参与方的第二离散特征。在等宽分箱过程中,各特征的原始数据可被分为多个等份,并且成为离散的数据,即,第一离散特征和第二离散特征。且第一离散特征和第二离散特征中的特征值被映射为离散的数值,例如,分箱的编号。通过这种方式可减少对于连续数据的运算量,并且可降低数据的具体数值泄露的风险。
36.根据本公开的实施例,在步骤s2中,针对决策树的当前节点(例如,根节点或其他任意节点),均可采用基尼系数的方式来确定切分点,即,某种正的某个特征值。例如,以a特征的特征值a为切分点,可将a特征的特征值大于或等于a的训练样本分为一类,将a特征的特征值小于a的训练样本分为另一类。
37.根据本公开的实施例,训练发起方具有部分特征的特征值,以及训练样本的标签,因此,可基于标签,计算第一离散特征的各特征值的基尼系数,可基于相关技术中的基尼系
数计算方式来计算第一离散特征的各特征值的基尼系数,即,第一基尼系数。本公开对计算基尼系数的具体方式不做限制。
38.根据本公开的实施例,如上计算的第一基尼系数的数据不完整,即,在计算中并未包括训练参与方所拥有的数据,因此,第一基尼系数可能不准确。以第一基尼系数为依据寻找切分点可能也不准确。但训练参与方和训练发起方之间互相不会共享数据,即,互相之间无法确定对方所拥有的数据的具体取值,因此,可采用加密的方式来传输加密数据,并在加密的情况下确定加密的基尼系数。
39.根据本公开的实施例,在步骤s3中,训练发起方将标签加密传输至训练参与方,训练参与方可获得加密状态的标签。在示例中,可通过secret sharing(秘钥共享)算法进行加密,并传输至训练参与方。
40.根据本公开的实施例,在步骤s4中,训练参与方可自行利用己方所掌握的数据对训练样本进行分类。例如,分为第一个类别和第二个类别。在示例中,可利用以上第二离散特征的离散的特征值对训练样本进行分类,具体地,可利用等宽分箱过程中的分箱节点进行分类,例如,可利用分箱节点的数值,将训练样本分为两类。在示例中,分箱节点可包括奇数个,可利用分箱节点中的中心节点(即,各特征的中位数)进行分类,获得两个类别,即,第一个类别和第二个类别。相应地,也可获得各个训练样本的第一分类结果,例如,,其中,为n维向量,其中,如果第i个维度的元素为1,则表示第i个训练样本属于第二个类别,如果第i个维度的元素为0,则表示第i个训练样本属于第一个类别。
41.根据本公开的实施例,训练参与方可将上述分类结果进行加密,并传输至训练发起方。在示例中,训练参与方可使用secret sharing(秘钥共享)算法进行加密,并传输至训练发起方。
42.根据本公开的实施例,在步骤s5中,训练参与方和训练发起方均拥有标签和分类结果。其中,训练发起方拥有加密状态的分类结果,以及加密状态的标签,还拥有解密状态的标签。训练参与方拥有加密状态的标签以及加密状态的分类结果,还拥有解密状态的分类结果。
43.根据本公开的实施例,训练参与方和训练发起方均可基于拥有的分类结果和标签,确定各自拥有的离散特征的特征值的基尼系数。
44.根据本公开的实施例,根据加密状态的标签和加密状态的第一分类结果,所述由训练发起方获得第二基尼系数,包括:根据加密状态的标签和加密状态的第一分类结果,确定训练发起方的各第一离散特征的特征值的第二基尼系数。
45.根据本公开的实施例,为了进一步搜索更准确的切分点,训练发起方可在计算基尼系数时,参考来自训练参与方的数据,训练参与方的数据仅为基于训练参与方拥有的数据进行分类的分类结果,即,为一个统计值,传输该分类结果不会将训练参与方拥有的数据
暴露给训练发起方,训练发起方也无法基于该统计值来确定训练参与方拥有的数据的具体取值,可提升数据安全性。
46.根据本公开的实施例,确定训练发起方的各第一离散特征的特征值的第二基尼系数,包括:根据公式(1)确定以第一离散特征的特征值作为分类的切分点的第二基尼系数:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)其中,,为第i个训练样本,,为加密状态的标签,为加密状态的第一分类结果,表示根据第一分类结果确定的训练样本的第一个类别,表示第一个类别的样本数量,表示根据第一分类结果确定的训练样本的第二个类别,,表示第二个类别的样本数量,表示训练样本集合。
47.根据本公开的实施例,在公式(1)中,可参考加密状态的标签和加密状态的第一分类结果来共同确定基尼系数,并且,在计算时还可参考以各个特征值进行分类时,分类为第一个类别的分类准确率,并对各个样本的各个特征的特征值进行上述确定分类准确率的运算后,以样本作为变量进行求和,进而获得以各个特征值为依据,分类为第一个类别时的基尼系数。并且,可通过类似的方式,计算各个特征值进行分类时,分类为第二个类别的分类准确率,并对各个样本的各个特征的特征值进行上述确定分类准确率的运算后,以样本作为变量进行求和,进而获得以各个特征值为依据,分类为第二个类别时的基尼系数。进一步地,可对以各个特征值为依据,分类为第一个类别时的基尼系数,以及以各个特征值为依据,分类为第二个类别时的基尼系数进行加权求和,从而获得各个特征值的第二基尼系数。其中,加权求和时的权重为:的权重为第一个类别的训练样本数量与训练样本集合中的训练样本总数(例如,n)之比,的权重为第二个类别的训练样本数量与训练样本集
合中的训练样本总数(例如,n)之比。
48.根据本公开的实施例,当然,以上计算中,训练发起方也可使用未加密状态(即,解密状态)的标签,来进行上述计算,获得所述训练发起方的各第一离散特征的特征值的第二基尼系数。本公开对此不做限制。
49.根据本公开的实施例,训练参与方可利用类似的方式获得各第二离散特征的特征值的第三基尼系数。根据加密状态的标签和加密状态的第一分类结果,由训练参与方获得第三基尼系数,包括:根据加密状态的标签和加密状态的第一分类结果,确定训练参与方的各第二离散特征的特征值的第三基尼系数。
50.根据本公开的实施例,训练参与方也可使用公式(1)确定第三基尼系数,仅需对公式(1)中的参数进行修改,例如,使用训练参与方掌握的数据中的各第二离散特征的特征值作为分类依据,求解上述分类为第一个类别的分类准确率,并以样本作为变量进行求和,进而获得以各个特征值为依据,分类为第一个类别时的基尼系数。以及,以第二离散特征的特征值作为分类依据,求解上述分类为第二个类别的分类准确率,并以样本作为变量进行求和,进而获得以各个特征值为依据,分类为第二个类别时的基尼系数。从而可使用与上述相同的权重进行加权求和,获得训练参与方的各第二离散特征的特征值的第三基尼系数。
51.根据本公开的实施例,当然,以上计算中,训练参与方也可使用未加密状态(即,解密状态)的第一分类数据,来进行上述计算,获得所述训练参与方的各第二离散特征的特征值的第三基尼系数。本公开对此不做限制。
52.根据本公开的实施例,为了保持数据的一致性,可训练发起方和训练参与方均可使用加密后的数据进行上述计算,即,均使用加密状态的标签和加密状态的第一分类结果进行上述计算。当然,还可将加密状态的标签和加密状态的第一分类结果进行解密,并同时利用解密状态的标签和解密状态的第一分类结果进行上述计算,本公开对此不做限制。
53.根据本公开的实施例,在步骤s6中,以上获得了各特征的各特征值的第一基尼系数、第二基尼系数和第三基尼系数,从而获得了数据更全面的基尼系数,使得基尼系数的计算准确性更高,且在训练发起方和训练参与方的通信过程中,均未涉及对所掌握的数据的通信,而仅限于标签和第一分类结果的通信,且通信为加密通信。因此,互相均无法获得对方所掌握的数据的实际取值,保证了数据的安全性。
54.根据本公开的实施例,根据所述第一基尼系数、所述第二基尼系数和所述第三基尼系数,确定决策树的当前节点的切分点,包括:对所述第二基尼系数进行解密,获得解密后的第二基尼系数,并对所述第三基尼系数进行解密,获得解密后的第三基尼系数;确定所述第一基尼系数、所述解密后的第二基尼系数和所述解密后的第三基尼系数中的最小值;将所述最小值对应的特征的特征值,作为所述当前节点的切分点。
55.根据本公开的实施例,可利用上述确定的各特征的特征值的三种基尼系数确定切
分点,例如,利用上述三种基尼系数中的最小值,即,在各特征的特征值的三种基尼系数中确定出最小值,并将该最小值对应的特征的特征值作为当前节点的切分点。即,以该特征的特征值为分类依据,例如,如果某个训练样本的该特征的特征值大于所述切分点,则将该训练样本分类为第一个类别,如果某个训练样本的该特征的特征值小于或等于所述切分点,则将该训练样本分类为第二个类别。至此,对于决策树的当前节点的训练即可完成,即,已确定当前节点的切分点。从而可继续迭代上述方法,寻找下一个节点的切分点。
56.根据本公开的实施例,在步骤s7中,可利用上述方法,进行多次迭代,以确定每个节点的切分点。从而获得训练后的决策树。
57.根据本公开的实施例,可在满足以下条件时,当前节点不再进行切分,获得决策树中的一个子树。从而可继续在其他子树中迭代执行上述方法,或者获得完整的决策树。所述方法可包括:在所述最小值小于基尼系数阈值的情况下,停止当前节点的训练。即,所述条件可包括所述最小值小于基尼系数阈值。在这种情况下,基尼系数过小,分类中的信息熵较大,可认为不再具有继续分类的条件,因此,不再继续切分,获得决策树的一个子树。
58.根据本公开的实施例,所述方法还包括:在所述训练样本的数量小于数量阈值的情况下,停止当前节点的训练。即,所述条件可包括可用于当前节点的训练样本的数量小于数量阈值。即,当前节点的训练样本数量过少,无法获得准确的分类结果,使得分类的误差较大,且继续切分,会造成后续节点中的训练样本更少,更加无法获得准确的分类结果,因此,可停止切分,获得决策树的一个子树。
59.根据本公开的实施例,在获得决策树的所有子树后,即,各个子树均停止切分后,可获得完整的训练后的决策树。可用于实际对样本的分类过程。例如,对图像进行分类,对音频、视频或其他数据进行分类,且该决策树可同时被训练发起方和训练参与方使用,并且训练数据在训练发起方和训练参与方之间不会共享,实现“可用但不可见”的目的。
60.通过本公开的实施例的纵向联邦决策树训练方法,能够精准的解决数据泄漏问题,通信内容均为对数据的统计值,脱离了与原始数据的关系,避免了原始数据进行加密通信中的泄露问题,即便通信内容被拦截破解也无法反推出原始数据信息,从而达到了“可用不可见”和“高安全”的特性。并且可以以更高的训练精度完成对决策树的训练过程,使得决策树可同时被训练发起方和训练参与方使用,且互相之间数据不共享,在提升训练精度的同时,保证了数据的安全性。
61.图3示例性地示出本公开实施例纵向联邦决策树训练装置的框图,如图3所示,所述装置包括:分箱模块11,用于对训练发起方的具有的训练样本的第一特征及训练参与方具有的训练样本的第二特征进行等宽分箱,获得训练发起方的第一离散特征和训练参与方的第二离散特征,其中,所述训练发起方具有所述训练样本的标签;第一系数模块12,用于对决策树的当前节点,所述训练发起方根据所述训练样本的标签及所述第一离散特征,获得第一基尼系数;传输模块13,用于所述训练发起方将所述标签加密传输至所述训练参与方;分类模块14,用于所述训练参与方根据所述等宽分箱的分箱节点,获得所述训练样本的第一分类结果,并加密发送至训练发起方;系数获得模块15,用于根据加密状态的标签和加密状态的第一分类结果,由训练发起方获得第二基尼系数,并由训练参与方获得第三基尼系数;切分点模块16,用于根据所述第一基尼系数、所述第二基尼系数和所述第三基尼系数,确定决策树的当前节点的切分点;训练模块17,用于根据所述决策树的各节点的切分
点,对决策树进行训练,获得训练后的决策树。
62.根据本公开的实施例,所述系数获得模块进一步配置为:根据加密状态的标签和加密状态的第一分类结果,确定训练发起方的各第一离散特征的特征值的第二基尼系数。
63.根据本公开的实施例,所述系数获得模块进一步配置为:根据公式确定以第一离散特征的特征值作为分类的切分点的第二基尼系数,其中,,为第i个训练样本,,为加密状态的标签,为加密状态的第一分类结果,表示根据第一分类结果确定的训练样本的第一个类别,表示第一个类别的样本数量,表示根据第一分类结果确定的训练样本的第二个类别,,表示第二个类别的样本数量,表示训练样本集合。
64.根据本公开的实施例,所述系数获得模块进一步配置为:根据加密状态的标签和加密状态的第一分类结果,确定训练参与方的各第二离散特征的特征值的第三基尼系数。
65.根据本公开的实施例,所述切分点模块进一步配置为:对所述第二基尼系数进行解密,获得解密后的第二基尼系数,并对所述第三基尼系数进行解密,获得解密后的第三基尼系数;确定所述第一基尼系数、所述解密后的第二基尼系数和所述解密后的第三基尼系数中的最小值;将所述最小值对应的特征的特征值,作为所述当前节点的切分点。
66.根据本公开的实施例,所述装置还用于:在所述最小值小于基尼系数阈值的情况下,停止当前节点的训练。
67.根据本公开的实施例,所述装置还用于:在所述训练样本的数量小于数量阈值的情况下,停止当前节点的训练。
68.图4是根据一示例性实施例示出的一种纵向联邦决策树训练设备的框图;如图所示,所述设备包括以下一个或多个组件:处理组件1502,存储器1504,电源组件1506,多媒体组件1508,音频组件1510,输入/输出(i/o)的接口1512,传感器组件1514,以及通信组件1516。
69.处理组件1502通常控制设备1500的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件1502可以包括一个或多个处理器1520来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件1502可以包括一个或多个模块,便于处理组件1502和其他组件之间的交互。例如,处理组件1502可以包括多媒体模块,以方便多媒体组件1508和处理组件1502之间的交互。
70.存储器1504被配置为存储各种类型的数据以支持在设备1500的操作。这些数据的示例包括用于在设备1500上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器1504可以由任何类型的易失性或非易失性存储设备或者它们的
组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。
71.电源组件1506为设备1500的各种组件提供电力。电源组件1506可以包括电源管理系统,一个或多个电源,及其他与为设备1500生成、管理和分配电力相关联的组件。
72.多媒体组件1508包括在设备1500和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(lcd)和触摸面板(tp)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件1508包括一个前置摄像头和/或后置摄像头。当设备1500处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
73.音频组件1510被配置为输出和/或输入音频信号。例如,音频组件1510包括一个麦克风(mic),当设备1500处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器1504或经由通信组件1516发送。在一些实施例中,音频组件1510还包括一个扬声器,用于输出音频信号。
74.i/o接口1512为处理组件1502和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
75.传感器组件1514包括一个或多个传感器,用于为设备1500提供各个方面的状态评估。例如,传感器组件1514可以检测到设备1500的打开/关闭状态,组件的相对定位,例如组件为设备1500的显示器和小键盘,传感器组件1514还可以检测设备1500或设备1500一个组件的位置改变,用户与设备1500接触的存在或不存在,设备1500方位或加速/减速和设备1500的温度变化。传感器组件1514可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件1514还可以包括光传感器,如cmos或ccd图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件1514还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
76.通信组件1516被配置为便于设备1500和其他设备之间有线或无线方式的通信。设备1500可以接入基于通信标准的无线网络,如wifi、2g、3g、4g、5g或它们的组合、或对讲网络。在一个示例性实施例中,通信组件1516经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件1516还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。
77.在示例性实施例中,设备1500可以被一个或多个应用专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、控制器、微控制器、微处理器或其他电子组件实现,用于执行上述方法。
78.在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器1504,上述指令可由设备1500的处理器1520执行以完成上述方法。例
如,非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd rom、磁带、软盘和光数据存储设备等。
79.本发明可以是方法、装置、系统和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本发明的各个方面的计算机可读程序指令。
80.计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
81.这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
82.用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如smalltalk、c++等,以及常规的过程式编程语言—诸如“c”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
83.这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
84.这些计算机可读程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其他可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这
些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
85.也可以把计算机可读程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其他可编程数据处理装置、或其他设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
86.附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
87.注意,除非另有直接说明,否则本说明书(包含任何所附权利要求、摘要和附图)中所揭示的所有特征皆可由用于达到相同、等效或类似目的的可替代特征来替换。因此,除非另有明确说明,否则所公开的每一个特征仅是一组等效或类似特征的一个示例。在使用到的情况下,进一步地、较优地、更进一步地和更优地是在前述实施例基础上进行另一实施例阐述的简单起头,该进一步地、较优地、更进一步地或更优地后带的内容与前述实施例的结合作为另一实施例的完整构成。在同一实施例后带的若干个进一步地、较优地、更进一步地或更优地设置之间可任意组合的组成又一实施例。
88.本领域的技术人员应理解,上述描述及附图中所示的本发明的实施例只作为举例而并不限制本发明。本发明的目的已经完整并有效地实现。本发明的功能及结构原理已在实施例中展示和说明,在没有背离所述原理下,本发明的实施方式可以有任何变形或修改。
89.最后应说明的是:以上各实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述各实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开各实施例技术方案的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1