联邦学习方法、装置、设备和可读存储介质与流程

文档序号:30601206发布日期:2022-07-01 21:40阅读:82来源:国知局
联邦学习方法、装置、设备和可读存储介质与流程

1.本技术涉及联邦学习技术领域,尤其涉及一种联邦学习方法、装置、设备和可读存储介质。


背景技术:

2.纵向联邦学习是联邦学习中的一种类别,不同的数据持有方具备的是同一样本的不同特征维度,而样本标签仅为其中一方持有,其它各方仅拥有部分数据特征,其中,持有样本标签的一方称为主动方,仅拥有部分数据特征的一方称为参与方,主动方通常希望通过与参与方合作,利用参与方的数据特征来提升联邦学习模型的效果。
3.现有技术中,联邦学习模型的训练主要涉及的是构建决策树,决定决策树中每个节点是否分裂以及如何分裂。在决策树的构建过程中,主动方与参与方之间通常需要通讯来传递同态密文,以保护主动方的样本标签和参与方的特征信息,防止发生泄露。
4.但是,现有技术每一轮训练所传输的同态密文数量非常大,会占用很大的通讯成本,导致模型的训练成本大幅增加。


技术实现要素:

5.本技术提供一种联邦学习方法、装置、设备和可读存储介质,用于解决现有的联邦学习在训练过程中主动方与参与方之间传递同态密文,通讯成本占用大的问题。
6.第一方面,本技术实施例提供一种联邦学习方法,应用于联邦学习中的主动方,所述主动方包括有第一样本数据和样本标签,所述方法包括:
7.将所述样本加密标签的第一分量共享至参与方,所述样本加密标签为所述主动方对所述样本标签加密得到,所述样本加密标签包括第一分量和第二分量,所述第一分量用于所述参与方计算得到待构建模型中分裂节点的每个分裂的信息增益分量;
8.根据所述第二分量,计算得到所述主动方的每个分裂的信息增益分量;
9.根据所述参与方的每个分裂的信息增益分量和所述主动方的每个分裂的信息增益分量,从所述分裂中确定出最优分裂,所述最优分裂的信息增益分量值最大;
10.根据所述最优分裂,与所述参与方共同构建得到所述最优分裂的分裂信息,所述最优分裂的分裂信息用于构建所述待构建模型中所述分裂节点的左节点和右节点。
11.在第一方面的一种可能设计中,
12.所述将所述样本加密标签的第一分量共享至参与方,包括:
13.与所述参与方共同生成公钥和私钥,每个参与方和主动方持有至少一个私钥;
14.根据所述公钥和私钥,将所述样本加密标签的第一分量共享至所述参与方。
15.在第一方面的另一种可能设计中,所述根据所述公钥和私钥,将所述样本加密标签的第一分量共享至所述参与方,包括:
16.获取每个参与方发送的第一加密结果,所述第一加密结果为所述参与方使用所述公钥对持有的随机秘密消息进行加密得到的;
17.使用所述公钥对所述主动方持有的随机密码消息进行加密,得到第二加密结果;
18.根据所述第一加密结果和第二加密结果,对所述样本标签进行加密得到密文值;
19.与所述参与方共同对所述密文值进行解密,得到解密结果;
20.根据每个参与方持有的私钥,从所述解密结果中得到第一分量,共享至所述参与方。
21.在第一方面的再一种可能设计中,所述根据所述第二分量,计算得到所述主动方的每个分裂的信息增益分量之前,还包括:
22.根据所述主动方持有的私钥,从所述解密结果中得到第二分量。
23.在第一方面的又一种可能设计中,所述根据所述第二分量,计算得到所述主动方的每个分裂的信息增益分量,包括:
24.获取每个分裂的左节点的样本向量和右节点的样本向量;
25.根据所述第二分量、所述左节点的样本分量和右节点的样本向量,计算得到所述主动方的每个分裂的信息增益分量。
26.在第一方面的又一种可能设计中,所述根据所述第二分量、所述左节点的样本分量和右节点的样本向量,计算得到所述主动方的每个分裂的信息增益分量,包括:
27.根据所述第二分量、所述左节点的样本向量和所述右节点的样本向量,计算所述左节点的标签向量和所述右节点的标签向量;
28.根据所述左节点的标签向量和右节点的标签向量,获取左节点的标签比率和右节点的标签比率;
29.根据所述左节点的样本向量和所述右节点的样本向量,获取所述左节点的样本比率和右节点的样本比率;
30.根据所述左节点的标签比率、左节点的样本比率、右节点的标签比率和右节点的样本比率,计算得到所述主动方的每个分裂的信息增益分量。
31.在第一方面的又一种可能设计中,所述根据所述参与方的每个分裂的信息增益分量和所述主动方的每个分裂的信息增益分量,从所述分裂中确定出最优分裂,包括:
32.获取所述参与方的最优分裂分量,所述最优分裂分量为所述参与方在本地根据每个分裂的信息增益分量计算得到的;
33.根据所述主动方的每个分裂的信息增益分量,得到所述主动方的最优分裂分量;
34.根据所述参与方的最优分裂分量和所述主动方的最优分裂分量,从所述分裂中确定出最优分裂。
35.在第一方面的又一种可能设计中,所述从所述分裂中确定出最优分裂,包括:
36.基于多方安全计算,与所述参与方通讯共同比较所述主动方的最优分裂分量和所述参与方的最优分裂分量,确定出最优分裂。
37.在第一方面的又一种可能设计中,所述根据所述最优分裂,与所述参与方共同构建得到所述最优分裂的分裂信息,包括:
38.获取所述最优分裂对应的指标,所述指标至少包括特征分量、分裂分量和信息增益分量;
39.根据所述最优分裂对应的指标,与所述参与方构建得到所述最优分裂的分裂信息。
40.在第一方面的又一种可能设计中,所述根据所述最优分裂,与所述参与方共同构建得到所述最优分裂的分裂信息之后,还包括:
41.确定所述左节点/右节点是否达到预设分裂条件;
42.若所述左节点/右节点达到预设分裂条件,则将所述左节点/右节点作为所述待构建模型的叶子节点;
43.获取所述参与方发送的所述叶子节点的节点编号和叶子节点的标签向量;
44.根据所述叶子节点的标签向量,得到所述叶子节点的样本标签。
45.第二方面,本技术实施例提供一种联邦学习方法,应用于联邦学习的参与方,所述方法包括:
46.获取主动方加密共享的第一分量、待构建模型中分裂节点的每个分裂的左节点样本向量、右节点样本向量;
47.根据所述第一分量、所述左节点的样本向量和右节点的样本向量,计算得到参与方的每个分裂的信息增益分量;
48.根据所述主动方的每个分裂的信息增益分量和所述参与方的每个分裂的信息增益分量,从所述分裂中确定出最优分裂,所述最优分裂的信息增益分量值最大;
49.根据所述最优分裂,与所述主动方共同构建得到所述最优分裂的分裂信息。
50.在第二方面的一种可能设计中,所述获取主动方加密共享的第一分量,包括:
51.与所述主动方共同生成公钥和私钥,每个参与方和主动方持有至少一个私钥;
52.根据所述公钥,对持有的随机秘密消息进行加密,得到第一加密结果;
53.将所述第一加密结果发送至所述主动方,所述第一加密结果用于与所述主动方的样本标签加密结果结合得到密文值;
54.与所述主动方共同对所述密文值进行解密,得到解密结果;
55.根据持有的私钥,从所述解密结果中得到第一分量。
56.在第二方面的另一种可能设计中,
57.所述根据所述第一分量、所述左节点的样本向量和右节点的样本向量,计算得到参与方的每个分裂的信息增益分量,包括:
58.根据所述第一分量、所述左节点的样本向量和所述右节点的样本向量,计算所述左节点的标签向量和所述右节点的标签向量;
59.根据所述左节点的标签向量和右节点的标签向量,获取左节点的标签比率和右节点的标签比率;
60.根据所述左节点的样本向量和所述右节点的样本向量,获取所述左节点的样本比率和右节点的样本比率;
61.根据所述左节点的标签比率、左节点的样本比率、右节点的标签比率和右节点的样本比率,计算得到参与方的每个分裂的信息增益分量。
62.第三方面,本技术实施例提供一种联邦学习装置,包括:
63.标签共享模块,用于将所述样本加密标签的第一分量共享至参与方,所述样本加密标签为所述主动方对所述样本标签加密得到,所述样本加密标签包括第一分量和第二分量,所述第一分量用于所述参与方计算得到待构建模型中分裂节点的每个分裂的信息增益分量;
64.分量计算模块,用于根据所述第二分量,计算得到所述主动方的每个分裂的信息增益分量;
65.第一分裂确定模块,用于根据所述参与方的每个分裂的信息增益分量和所述主动方的每个分裂的信息增益分量,从所述分裂中确定出最优分裂,所述最优分裂的信息增益分量值最大;
66.第一信息构建模块,用于根据所述最优分裂,与所述参与方共同构建得到所述最优分裂的分裂信息,所述最优分裂的分裂信息用于构建所述待构建模型中所述分裂节点的左节点和右节点。
67.第四方面,本技术实施例提供一种联邦学习装置,包括:
68.分量获取模块,用于获取主动方加密共享的第一分量、待构建模型中分裂节点的每个分裂的左节点样本向量、右节点样本向量;
69.增益计算模块,用于根根据所述第一分量、所述左节点的样本向量和右节点的样本向量,计算得到参与方的每个分裂的信息增益分量;
70.第二分裂确定模块,用于根据所述主动方的每个分裂的信息增益分量和所述参与方的每个分裂的信息增益分量,从所述分裂中确定出最优分裂,所述最优分裂的信息增益分量值最大;
71.第二信息构建模块,用于根据所述最优分裂,与所述主动方共同构建得到所述最优分裂的分裂信息。
72.第五方面,本技术实施例提供一种计算机设备,包括:处理器,以及与所述处理器通信连接的存储器;
73.所述存储器存储计算机执行指令;
74.所述处理器执行所述存储器存储的计算机执行指令,以实现如上述方法。
75.第六方面,本技术实施例提供一种计算机设备,包括:处理器,以及与所述处理器通信连接的存储器;
76.所述存储器存储计算机执行指令;
77.所述处理器执行所述存储器存储的计算机执行指令,以实现如上述方法。
78.第七方面,本技术实施例提供一种可读存储介质,所述可读存储介质中存储有计算机指令,所述计算机指令被处理器执行时用于实现如上所述的方法。
79.第八方面,本技术实施例提供一种程序产品,包括计算机指令,该计算机指令被处理器执行时实现如上所述的方法。
80.本技术实施例提供的联邦学习方法、装置、设备和可读存储介质,通过主动方将样本标签中的标签分量共享给参与方,由主动方和参与方在本地直接计算所有分裂的信息增益,之后主动方再与参与方通信,比较得到最优分裂和分裂信息,能够减少联邦学习的训练过程中主动方与参与方之间的通讯成本。
附图说明
81.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理;
82.图1为本技术实施例提供的纵向联邦学习的梯度提升树模型框架示意图;
83.图2为本技术实施例提供的联邦学习方法实施例一的流程示意图;
84.图3为本技术实施例提供的联邦学习方法实施例二的流程示意图;
85.图4为本技术实施例提供的联邦学习方法的交互示意图;
86.图5为本技术实施例提供的联邦学习装置实施例一的结构示意图;
87.图6为本技术实施例提供的联邦学习装置实施例二的结构示意图;
88.图7为本技术实施例提供的计算机设备实施例一的结构示意图;
89.图8为本技术实施例提供的计算机设备实施例二的结构示意图。
90.通过上述附图,已示出本技术明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本技术构思的范围,而是通过参考特定实施例为本领域技术人员说明本技术的概念。
具体实施方式
91.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
92.首先对本技术所涉及的名词进行解释:
93.联邦学习:是指一个机器学习框架,能有效帮助多个机构在满足用户隐私保护、数据安全和政府法规的要求下,进行数据使用和机器学习建模,提升模型的效果。联邦学习能够使得多个参与方实现共同建模的目的的同时不分享数据、只分享中间结果、且无法反推数据。其中,无法反推数据的实现一般是通过一定的安全技术来保证各方无法获得其他方的数据信息。
94.依据联邦学习的不同参与方持有数据的特点不同,可以将其分类为横向联邦学习、纵向联邦学习以及联邦迁移学习等。横向的联邦学习是样本的分割,由于其良好的特性可以设计出较为通用的联邦学习方案。而更为困难且在业界得到很多应用的是纵向联邦学习,其特点是不同数据持有方具备的是同一样本(例如某个客户)的不同特征维度,这是由于不同的公司业务不同造成的。
95.图1为本技术实施例提供的纵向联邦学习的梯度提升树模型框架示意图。在风控场景中纵向联邦学习得到了更为广泛的应用与发展,其特点是标签仅为其中一个参与方所持有(以下称为主动方),而其他各方拥有数据的部分特征(以下称为参与方)。主动方希望通过与参与方合作来提升模型的效果,达到降低风险的目的。在此过程中,主动方和参与方均需要保证己方的数据安全性。如图1所示,以a为银行(作为主动方),b和c为商超(作为参与方)为例,a、b和c都处于同一地区,他们触达的用户都为该地区的居民(即样本),但是他们所涉及到的业务不同(即特征不同)。
96.在风控场景中,由于树模型具有良好的可解释性和强大的学习能力被广泛的应用,以secureboost为代表的递归联邦学习模型,其原理是通过m步的提升构建得到m个树模型f1,

,fm,这m个树模型的构建是使用逐步提升的方法,在第m步时,f1,

,f
m-1
这m-1个树模型已经建立。secureboost具体包含了两个过程,参考图1,首先是加密样本对齐,其次进行加密模型训练。
97.其中,在进行加密模型训练过程中,建立梯度提升树模型的关键在于(1)第m颗树的构建是以第m-1次的标签残差为目标进行学习的。(2)每个树的构建中,决定每个节点如何分裂、是否分裂,这一个过程是多方合作、信息交换出每个特征在每个阈值分裂后的得分,取最大得分的结果进行分裂实现的。
98.现有技术在进行加密的模型训练时,主动方算出对于每个m-1次迭代后的预测值(初始为0)的一阶导数gi和二阶导数hi,对gi和hi进行同态加密后传输给每一个参与方,参与方利用公钥计算出每个特征每个分裂的一阶导数求和以及二阶导数求和并发送给主动方解密,主动方直接计算每个特征每个分裂梯度聚合值明文,然后根据得到的所有一阶导数和二阶导数聚合值算出每个特征没中分裂的得分,如果最大得分小于阈值则不分裂,否则按照相应属性和阈值分裂当前节点,得到对应的两个叶子节点和各自的样本id集合i
l
和ir。对于第m棵树的每一个叶子节点,循环执行以上,直到所有的叶子节点不能再分裂或者树的深度达到设置的最大深度为止,主动方计算出每个叶子节点的最优权重wi,则第m棵树构建完成。
99.但是,现有技术在建模的过程中,每棵树的每个节点构建过程,主动方都需要计算节点样本的一阶、二阶梯度,并传递一阶、二阶梯度给所有的参与方,所有的参与方特征的分裂都需要将计算的梯度聚合值发回给主动方解密,得出最优分裂。这个过程中主动方与参与方之间需要通过大量的加密文通讯来找到最优分裂的特征信息,会造成联邦模型的通讯成本很高。
100.针对上述问题,本技术实施例提供的联邦学习方法、装置、设备和可读存储介质,通过在训练开始之前,使用多方安全计算将主动方样本标签部分共享至参与方,使得主动方和参与方都可以在本地计算所有分裂的信息增益,之后主动方和参与方再通过多方安全计算比较得到最优分裂,并合作共同构建得到最优分裂的分裂信息,在保护主动方样本标签安全的同时,可以减少主动方与参与方的通讯成本。
101.下面,通过具体实施例对本技术的技术方案进行详细说明。需要说明的是,下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
102.图2为本技术实施例提供的联邦学习方法实施例一的流程示意图。该方法可以应用于具有标签数据的参与方,为了便于区分,后续将具有标签数据的参与方称为主动方。如图2所示,该联邦学习方法具体可以包括如下步骤:
103.s201、将样本加密标签的第一分量共享至参与方。
104.其中,样本加密标签为主动方对样本标签加密得到,样本加密标签包括第一分量和第二分量,第一分量用于参与方计算得到待构建模型中分裂节点的每个分裂的信息增益分量,其中,样本标签为分裂节点的样本标签。
105.在本实施例中,参与方的数量可以是一个或两个以上,样本加密标签中可以包括有若干份互不相同的第一分量,每一个参与方都可以得到主动方共享的一份第一分量。
106.示例性的,以参与方数量取值为i为例,i为不小于1的正整数。样本加密标签可以通过样本标签向量《x〉表示,其中,《x〉=(《x》0,

,《x》i)。第二分量可以是《x》0,第一分量可以是《x》i。
107.示例性的,可以对所有的参与方执行多方安全计算的秘密安全共享,使得第i个参
与方可以获得一个第一分量《x》i。
108.在本实施例中,待构建模型可以是决策树,决策树中至少包括有一个根节点和该根节点对应的叶子节点。其中,分裂节点是指决策树中未到达停止分裂条件,还可以继续分裂出左节点和右节点的节点。示例性的,参考图1,树模型f1的深度为4,其包括有一个根节点,根节点分裂得到一个左节点和右节点,右节点又可以分裂得到一个左叶子节点和右叶子节点,其中的根节点就可以视为分裂节点。
109.在本实施例中,当主动方将第一分量共享至参与方之后,对于每个分裂节点,可以广播所有分裂对应的左节点和右节点的样本向量。以v
l
表示左节点的样本向量,vr表示右节点的样本向量为例,参与方可以根据v
l
、vr和第一分量,在本地计算得到每个分裂的信息增益,而不需要与主动方进行通讯,减少通讯成本。
110.s202、根据第二分量,计算得到主动方的每个分裂的信息增益分量。
111.在本实施例中,当主动方对所有的参与方执行多方安全计算的秘密安全共享之后,主动方会从样本标签向量中分配得到一个第二分量《x》0。参与方可以根据分配得到的第一分量《x》i,在本地计算得到每个分裂的信息增益,而主动方也可以根据第二分量《x》0,在本地计算出每个分裂的信息增益。
112.示例性的,以v
l
表示左节点的样本向量,vr表示右节点的样本向量为例,主动方可以根据v
l
、vr和第二分量,在本地计算得到每个分裂的信息增益。
113.其中,左节点的样本向量和右节点的样本向量需要根据数值进行划分,例如以数值为0.5为例,划分到左节点的样本向量小于0.5,划分到右节点的样本向量大于0.5。
114.在本实施例中,分裂信息包括有特征、特征值、指示往左分裂还是往右分裂的信息以及信息增益分量。其中,信息增益分量表明了节点信息,具体可以是用来表明如果将分裂节点按照分裂信息进行分裂得到左节点和右节点时的一个得分,其用来指示指按照分裂信息划分了左节点和右节点之后是不是能让标签结果更好。
115.示例性的,可以通过如下公式计算得到每个分裂的信息增益分量:
[0116][0117]
上式中,《gini》为信息增益分量,w
l
为左节点样本比率,wr为右节点样本比率,∑
{k

∈k}
《p
l,k

》2表示划分至左节点的信息量,∑
{k

∈k}
《p
r,k

》2表示划分至右节点的信息量,∑
{k

∈k}
《pk》2表示没有划分左右节点时的信息量。
[0118]
s203、根据参与方的每个分裂的信息增益分量和主动方的每个分裂的信息增益分量,从分裂中确定出最优分裂。
[0119]
其中,最优分裂的信息增益分量值最大。
[0120]
示例性的,在本实施例中,所有主动方和参与方可以通过最大值安全计算,在本地通过安全比较得到最优分裂对应的指标(《i
*
》,《j
*
》,《s
*
》,《gini
*
》),其中,《j
*
》为特征,《s
*
》为分裂,《gini
*
》为信息增益分量。
[0121]
示例性的,对于主动方和参与方,可以对i进行遍历,ui设定标志向量(i,j,s),ui为第i个参与方,j为特征,s为分裂,初始化四个共享分量《gain
max
》,《i
*
》,《j
*
》,《s
*
》,并赋值《-1》,使用安全比较算法,比较所有信息增益分量的大小:
[0122]
ui设定《gain
τ
》,比较《gain
max
》与《gain
τ
〉的大小,并通过如下算法对最优分裂的信息增益进行更新,得到信息增益分量值最大的信息增益gain
max

[0123]
sign=1如果《gain
τ
〉》《gain
max

[0124]
sign=0otherwise
[0125]
更新《gain
max
〉,《i
*
〉,《j
*
》,《s
*

[0126]
gain
max
=gain
max
*(1-sign)+gain
τ
*sign
[0127]
s204、根据最优分裂,与参与方共同构建得到最优分裂的分裂信息。
[0128]
其中,最优分裂的分裂信息用于构建待构建模型中分裂节点的左节点和右节点。
[0129]
在本实施例中,样本加密标签被划分为若干份标签分量,分别分配给了每一个参与方和主动方。在参与方和主动方根据各自分配的标签分量在本地计算之后,得到的实际上是最优分裂的分裂信息的一部分,需要将每个参与方和主动方的计算结果合并,并共同解密之后,才能够重建得到完整的分裂信息。
[0130]
示例性的,当得到分裂信息之后,可以增加节点到分裂节点下,完成一次节点的分裂,然后再重复上述步骤,直到决策树中每一个节点达到分裂条件,不需要再进行分裂。
[0131]
本技术实施例通过主动方将样本标签中的标签分量共享给参与方,由主动方和参与方在本地直接计算所有分裂的信息增益,并在本地比较最优分裂以及分裂信息之后,主动方再与参与方通讯计算最优分裂和分裂信息的明文,能够减少联邦学习的训练过程中主动方与参与方之间的通讯成本。
[0132]
在一些实施例中,上述步骤s201具体可以通过如下步骤实现:
[0133]
与参与方共同生成公钥和私钥;
[0134]
根据公钥和私钥,将样本标签中的第一分量加密共享至参与方。
[0135]
其中,每个参与方和主动方持有至少一个私钥。示例性的,主动方与参与方可以共享私钥信息的一部分(门限加密),然后使用公钥加密样本标签。在解密的过程中需要主动方和参与方合作完成。
[0136]
示例性的,主动方与参与方合作生成门限公私钥对,其中,公钥可以用pk表示,私钥包括主动方持有sk0,参与方持有ski,i为不小于1的正整数。样本标签加密之后可以得到《x》=(《x》0,

,《x》i),主动方与参与方分别通过各自所持有的私钥,对《x》解密得到对应的标签分量。示例性的,主动方分配得到《x》0,第i个参与方分配得到《x》i。
[0137]
进一步的,在上述实施例的基础上,在一些实施例中,上述步骤“根据公钥和私钥,将样本标签中的第一分量加密共享至参与方”,具体可以通过如下步骤实现:
[0138]
获取每个参与方发送的第一加密结果;
[0139]
使用公钥对主动方持有的随机密码消息进行加密,得到第二加密结果;
[0140]
根据第一加密结果和第二加密结果,对样本标签进行加密得到密文值;
[0141]
与参与方共同对密文值进行解密,得到解密结果;
[0142]
根据每个参与方持有的私钥,从解密结果中得到第一分量,共享至参与方。
[0143]
其中,第一加密结果为参与方使用公钥对持有的随机秘密消息进行加密得到的。
[0144]
在本实施例中,参与方和主动方分别使用公钥对各自所持有的随机秘密消息进行加密,加密之后主动方生成的第二加密结果为[r0],第i个参与方生成的第一加密结果为[ri]。每个参与方将各自的第一加密结果发送给主动方。
[0145]
示例性的,主动方根据每个参与方发送的第一加密结果,计算得到密文值如下:
[0146][0147]
其中,[e]表示密文值,[x]表示样本标签。
[0148]
当主动方得到密文值之后,可以与参与方合作将密文值[e]解密得到e。
[0149]
参与方通过其所持有的私钥,获得分配的第一分量:
[0150]
《x》i=rimod q
[0151]
上式中,q可以为预设数值。
[0152]
在一些实施例中,主动方可以通过其所持有的私钥,从解密结果中得到第二分量:
[0153]
《x》0=e-r
0 mod q
[0154]
本技术实施例通过使用多方安全计算实现样本标签分量的加密共享,能够使得主动方和参与方都在本地计算每个分裂的信息增益分量,减少联邦学习训练过程中的通讯成本,同时通过加密也能够避免主动方样本标签隐私的泄露。
[0155]
在上述实施例的基础上,在一些实施例中,在主动方计算每个分裂的信息增益分量时,可以通过如下步骤实现:
[0156]
根据第二分量、左节点的样本向量和右节点的样本向量,计算左节点的标签向量和右节点的标签向量;
[0157]
根据左节点的标签向量和右节点的标签向量,获取左节点的标签比率和右节点的标签比率;
[0158]
根据左节点的样本向量和右节点的样本向量,获取左节点的样本比率和右节点的样本比率;
[0159]
根据左节点的标签比率、左节点的样本比率、右节点的标签比率和右节点的样本比率,计算得到主动方的每个分裂的信息增益分量。
[0160]
具体的,主动方可以根据特征和分类,得到每个分裂的左节点的样本向量v
l
和右节点的样本向量vr。左节点的标签向量可以用《g
l,k
》表示,右节点的标签向量可以用《g
r,k
》表示。示例性的,当为二分类时,《g
l,k
》具体可以包括《g
l,1
》和《g
l,2
》,《g
r,k
》具体可以包括《g
r,1
》,《g
r,2
》。
[0161]
其中,《g
l,1
》表示左节点中样本标签为1的标签向量,《g
l,2
》表示左节点中样本标签为2的标签向量,《g
r,1
》表示右节点中样本标签为1的标签向量,《g
r,2
》表示右节点中样本标签为2的标签向量。《g
l,1
》,《g
l,2
》,《g
r,1
》,《g
r,2
》具体计算过程如下:
[0162]
《g
l,1
》=v
l

《x》
i,1
,《g
l,2
》=v
l

《x》
0,2
[0163]
《g
r,1
》=vr⊙
《x》
i,1
,《g
r,2
》=vr⊙
《x》
0,2
[0164]
在本实施例中,左节点的标签比率可以用《p
l,k
》表示,右节点的标签比率可以用《p
r,k
》表示。示例性的,可以通过如下公式计算得到左节点的标签比率和右节点的标签比率:
[0165][0166]
[0167]
在本实施例中,可以通过如下公式计算得到左节点的样本比率和右节点的样本比率:
[0168][0169][0170]
上式中,w
l
表示左节点的样本比率,wr表示右节点的样本比率。
[0171]
在本实施例中,每个分裂的信息增益分量可以通过上述公式计算得到:
[0172][0173]
本技术实施例通过利用分配给主动方的第二分量,使得主动方可以在本地计算得到每个分裂的信息增益分量,不需要主动方与参与方进行大量的密文通讯,能够减少通讯成本。
[0174]
进一步的,在上述实施例的基础上,一些实施例中,参与方在本地计算每个分裂的信息增益分量时,可以根据第一分量、左节点的样本向量和右节点的样本向量计算得到。
[0175]
具体的,参与方可以根据特征和分类,得到每个分裂的左节点的样本向量v
l
和右节点的样本向量vr。左节点的标签向量可以用《g
l,k
》表示,右节点的标签向量可以用《g
r,k
》表示。示例性的,当为二分类时,《g
l,k
》具体可以包括《g
l,1
》和《g
l,2
》,《g
r,k
》具体可以包括《g
r,1
》,《g
r,2
》。
[0176]
其中,《g
l,1
》表示左节点中样本标签为1的标签向量,《g
l,2
》表示左节点中样本标签为2的标签向量,《g
r,1
》表示右节点中样本标签为1的标签向量,《g
r,2
》表示右节点中样本标签为2的标签向量。《g
l,1
〉,《g
l,2
〉,《g
r,1
〉,《g
r,2
〉具体计算过程如下:
[0177]
《g
l,1
》=v
l

《x》
i,1
,《g
l,2
》=v
l

《x〉
i,2
[0178]
《g
r,1
》=vr⊙
《x》
i,1
,《g
r,2
》=vr⊙
《x》
i,2
[0179]
在本实施例中,左节点的标签比率可以用《p
l,k
》表示,右节点的标签比率可以用《p
r,k
》表示。示例性的,可以通过如下公式计算得到左节点的标签比率和右节点的标签比率:
[0180][0181][0182]
在本实施例中,可以通过如下公式计算得到左节点的样本比率和右节点的样本比率:
[0183][0184]
[0185]
上式中,w
l
表示左节点的样本比率,wr表示右节点的样本比率。
[0186]
在本实施例中,每个分裂的信息增益分量可以通过上述公式计算得到:
[0187][0188]
上式中,《gini》为信息增益分量,w
l
为左节点样本比率,wr为右节点样本比率,∑
{k

∈k}
《p
l,k

》2表示划分至左节点的信息量,∑
{k

∈k}
《p
r,k

》2表示划分至右节点的信息量,∑
{k

∈k}
《pk》2表示没有划分左右节点时的信息量。
[0189]
在本实施例中,当主动方和参与方分别在本地完成每个分裂的信息增益的计算之后,会在本地比较最优分裂和分裂信息,然后进行通讯,由主动方和参与方合作重建得到最优分裂的分裂信息的明文。
[0190]
本技术实施例通过将第一分量共享给参与方,能够使得参与方在本地计算得到每个分裂的信息增益,之后主动方与参与方之间只需要通过多方安全计算本地比较得到最优分裂,最后主动方与参与方之间通讯合作共同构建得到最优分裂的分裂信息明文,能够避免主动方与参与方之间使用大量密文通讯,降低通讯成本。
[0191]
在一些实施例中,上述步骤s203具体可以通过如下步骤实现:
[0192]
获取参与方的最优分裂分量;
[0193]
根据主动方的每个分裂的信息增益分量,得到主动方的最优分裂分量;
[0194]
根据参与方的最优分裂分量和主动方的最优分裂分量,从分裂中确定出最优分裂。
[0195]
其中,最优分裂分量为参与方在本地根据每个分裂的信息增益分量计算得到的。
[0196]
在本实施中,主动方和参与方在本地基于多方计算的比较算法,根据每个分裂的信息增益分量,计算得到最优分裂分量,之后合并得到最优分裂和最优分裂的分裂信息。最后主动方再与参与方进行通讯,合作恢复最优分裂的分裂信息明文,分裂信息明文即用于构建待构建模型中分裂节点的左节点和右节点。
[0197]
在一些实施例中,在上述步骤s203中“从分裂中确定出最优分裂”,具体可以通过如下步骤实现:
[0198]
基于多方安全计算,与参与方通讯共同比较主动方的最优分裂分量和参与方的最优分裂分量,确定出最优分裂。
[0199]
在本实施例中,多方安全计算的目标是对一组计算的参与者,每个参与者拥有自己的数据,并且不信任其它参与者和任何第三方,在这种前提下,可以通过多方安全计算对各自私密的数据计算出一个目标结果的过程。
[0200]
示例性的,以三个拥有不同财富的参与者为例,三个参与者想要确定出哪个所拥有的财富值最多,此时可以通过多方安全计算在各自的财富值不暴露给对方的情况下,找出财富值最大的一个参与者。
[0201]
本技术实施例通过使用多方安全计算比较得到最优分裂,能够实现主动方与参与方在本地计算最优分裂的信息增益,减少联邦学习的通讯成本。
[0202]
在一些实施例中,上述步骤s204具体可以通过如下步骤实现:
[0203]
获取最优分裂对应的指标,根据最优分裂对应的指标,与参与方构建得到最优分
裂的分裂信息。
[0204]
其中,指标至少包括特征分量、分裂分量和信息增益分量。具体的,特征分量是指上述的《j
*
》,分裂增量是指上述的《s
*
》,信息增益分量是指上述的《gain
max
》。
[0205]
在本实施例中,对于参与方和主动方,可以对i进行遍历,其中,i为不小于1的正整数。初始化四个共享分量《gain
max
》,《i
*
》,《j
*
》,《s
*
》,并赋值《-1》,ui设定《gain
τ
》,使用安全比较算法,比较所有信息增益分量的大小,并通过如下算法对最优分裂的信息增益进行更新:
[0206]
比较《gain
max
》与《gain
τ
》:
[0207]
sign=1如果《gain
τ
〉》《gain
max

[0208]
sign=0otherwise
[0209]
更新《gain
max
》,《i
*
》,《j
*
》,《s
*

[0210]
gain
max
=gain
max
*(1-sign)+gain
τ
*sign
[0211]
其中,在得到最优分裂对应的指标《gain
max
》,《i
*
》,《j
*
》,《s
*
》之后,参与方和主动方可以根据各自持有的私钥sk0和ski,根据最优分裂对应的指标,合作构建最优分裂的分裂信息(i
*
,j
*
,s
*
,gini
*
)。
[0212]
在一些实施例中,上述联邦学习方法还可以包括如下步骤:
[0213]
确定左节点/右节点是否达到预设分裂条件;
[0214]
若左节点/右节点达到预设分裂条件,则将左节点/右节点作为待构建模型的叶子节点;
[0215]
获取参与方发送的叶子节点的节点编号和叶子节点的标签向量;
[0216]
根据叶子节点的标签向量,得到叶子节点的样本标签。
[0217]
在本实施例中,叶子节点即表示不会再发生分裂,已经达到预设分裂条件的节点。示例性的,预设分裂条件可以是决策树的最大深度。
[0218]
示例性的,对于没有达到预设分裂条件的节点,则可以视为分裂节点,继续进行分裂,得到该分裂节点对应的左节点和右节点,然后再判定左节点和右节点是否达到预设分裂条件,若没有达到,则继续作为分裂节点进行分裂,直到整个决策树模型构建完毕。
[0219]
在本实施例中,决策树模型在推理的过程中,主动方具有树模型的结构、样本id以及叶子节点标签,参与方包括各自节点对应的分裂特征和阈值。
[0220]
其中,主动方可以根据树模型结构,发起对查询的样本的询问,由参与方根据特征信息分裂得到样本分裂情况,如果是叶子节点,则将该叶子节点的节点编号发送给主动方,主动方根据叶子节点标签推理得到样本标签。
[0221]
图3为本技术实施例提供的联邦学习方法实施例二的流程示意图,该联邦学习方法可以应用于参与方,该联邦学习方法具体可以包括如下步骤:
[0222]
s301、获取主动方加密共享的第一分量、待构建模型中分裂节点的每个分裂的左节点样本向量、右节点样本向量;
[0223]
s302、根据第一分量、左节点的样本向量和右节点的样本向量,计算得到参与方的每个分裂的信息增益分量;
[0224]
s303、根据主动方的每个分裂的信息增益分量和参与方的每个分裂的信息增益分量,从分裂中确定出最优分裂。
[0225]
s304、根据最优分裂,与主动方共同构建得到最优分裂的分裂信息。
[0226]
其中,最优分裂的信息增益分量值最大。
[0227]
在本实施例中,参与方可以根据主动方共享的第一分量,在本地计算得到每个分裂的信息增益分量,之后与主动方利用多方安全计算的“最大值计算”安全比较得到最优分裂和最优分裂对应的指标(《i
*
》,《j
*
》,《s
*
》,《gain
max
》),最后与主动方通过多方安全计算重建得到最优分裂(i
*
,j
*
,s
*
)。
[0228]
在一些实施例中,上述步骤s301具体可以通过如下步骤实现:
[0229]
与主动方共同生成公钥和私钥;
[0230]
根据公钥,对持有的随机秘密消息进行加密,得到第一加密结果;
[0231]
将第一加密结果发送至主动方;
[0232]
与主动方共同对密文值进行解密,得到解密结果;
[0233]
根据持有的私钥,从解密结果中得到第一分量。
[0234]
其中,每个参与方和主动方持有至少一个私钥,第一加密结果用于与主动方的样本标签加密结果结合得到密文值,其中,主动方也会对样本标签进行加密,得到一个样本标签加密结果。
[0235]
本技术实施例中,参与方与主动方的秘密值安全共享的过程可以参见上述主动方的执行过程,在此不做赘述。
[0236]
在一些实施例中,上述步骤s302可以通过如下步骤\实现:
[0237]
根据第一分量、左节点的样本向量和右节点的样本向量,计算左节点的标签向量和右节点的标签向量;
[0238]
根据左节点的标签向量和右节点的标签向量,获取左节点的标签比率和右节点的标签比率;
[0239]
根据左节点的样本向量和右节点的样本向量,获取左节点的样本比率和右节点的样本比率;
[0240]
根据左节点的标签比率、左节点的样本比率、右节点的标签比率和右节点的样本比率,计算得到参与方的每个分裂的信息增益分量。
[0241]
图4为本技术实施例提供的联邦学习方法的交互示意图。如图4所示,其具体包括如下步骤:
[0242]
s401、将节点样本加密得到标签向量[x],对所有的参与方执行多方安全计算的秘密值安全共享,为参与方分配第一分量《x》i,为主动方分配第二标签向量《x〉0。
[0243]
s402、广播所有的分裂对应的左节点划分的样本向量和右节点划分的样本向量。
[0244]
s403、主动方在本地计算每个分裂的信息增益分量;
[0245]
s404、参与方在本地计算每个分裂的信息增益分量;
[0246]
s405、主动方和参与方分别在本地基于多方安全计算“最大值计算”最优分裂和最优分裂对应的指标;
[0247]
s406、主动方和参与方合作重建得到最优分裂信息明文。
[0248]
s407、增加节点到分裂节点中,广播开启下一轮。
[0249]
本技术实施例通过使用多方安全计算,在模型训练初期,主动方和参与方共享标签分量。实现了主动方与参与方在本地计算最优分裂的信息增益,减少联邦学习的通讯成
本。同时通过共享主动方样本标签分量实现联邦模型训练,保证在分量上的运算整合后等于明文上的运算结果。该方案在保证主动方样本标签数据隐私的同时,实现了多方联邦学习的目的。
[0250]
下述为本技术装置实施例,可以用于执行本技术方法实施例。对于本技术装置实施例中未披露的细节,请参照本技术方法实施例。
[0251]
图5为本技术实施例提供的联邦学习装置实施例一的结构示意图,该联邦学习装置可以集成在主动方提供的计算机设备上,也可以独立于主动方提供的计算机设备,且与主动方计算机设备协同实现上述方法。如图5所示,该联邦学习装置50包括标签共享模块51、分量计算模块52、第一分裂确定模块53、第一信息构建模块54。
[0252]
其中,标签共享模块51用于将样本加密标签的第一分量共享至参与方。分量计算模块52用于根据第二分量,计算得到主动方的每个分裂的信息增益分量。第一分裂确定模块53用于根据参与方的每个分裂的信息增益分量和主动方的每个分裂的信息增益分量,从分裂中确定出最优分裂。第一信息构建模块54用于根据最优分裂,与参与方共同构建得到最优分裂的分裂信息。
[0253]
其中,样本加密标签为主动方对样本标签加密得到,样本加密标签包括第一分量和第二分量,第一分量用于参与方计算得到待构建模型中分裂节点的每个分裂的信息增益分量。
[0254]
可选的,在一些实施例中,上述标签共享模块51具体可以用于:
[0255]
与参与方共同生成公钥和私钥;
[0256]
根据公钥和私钥,将样本加密标签的第一分量共享至参与方。
[0257]
其中,每个参与方和主动方持有至少一个私钥。
[0258]
可选的,在一些实施例中,上述标签共享模块51具体可以用于:
[0259]
获取每个参与方发送的第一加密结果;
[0260]
使用公钥对主动方持有的随机秘密消息进行加密,得到第二加密结果;
[0261]
根据第一加密结果和第二加密结果,对样本标签进行加密得到密文值;
[0262]
与参与方共同对密文值进行解密,得到解密结果;
[0263]
根据每个参与方持有的私钥,从解密结果中得到第一分量,共享至参与方。
[0264]
其中,第一加密结果为参与方使用公钥对持有的随机秘密消息进行加密得到的。
[0265]
在一些实施例中,上述联邦学习装置50还可以包括解密模块,用于根据主动方持有的私钥,从解密结果中得到第二分量。
[0266]
在一些实施例中,上述分量计算模块52具体可以用于:
[0267]
获取每个分裂的左节点的样本向量和右节点的样本向量;
[0268]
根据第二分量、左节点的样本分量和右节点的样本向量,计算得到主动方的每个分裂的信息增益分量。
[0269]
可选的,在一些实施例中,上述分量计算模块52具体可以用于:
[0270]
根据第二分量、左节点的样本向量和右节点的样本向量,计算左节点的标签向量和右节点的标签向量;
[0271]
根据左节点的标签向量和右节点的标签向量,获取左节点的标签比率和右节点的标签比率;
[0272]
根据左节点的样本向量和右节点的样本向量,获取左节点的样本比率和右节点的样本比率;
[0273]
根据左节点的标签比率、左节点的样本比率、右节点的标签比率和右节点的样本比率,计算得到主动方的每个分裂的信息增益分量。
[0274]
在一些实施例中,上述第一分裂确定模块,用于:
[0275]
获取参与方的最优分裂分量,最优分裂分量为参与方在本地根据每个分裂的信息增益分量计算得到的;
[0276]
根据主动方的每个分裂的信息增益分量,得到主动方的最优分裂分量;
[0277]
根据参与方的最优分裂分量和主动方的最优分裂分量,从分裂中确定出最优分裂。
[0278]
其中,信息增益分量为参与方根据第一分量、左节点的样本向量和右节点的样本向量计算得到。
[0279]
在一些实施例中,上述第一分裂确定模块53具体可以用于:
[0280]
基于多方安全计算,与参与方通讯共同比较主动方的最优分裂分量和参与方的最优分裂分量,确定出最优分裂。
[0281]
在一些实施例中,上述第一信息构建模块54具体可以用于:
[0282]
获取最优分裂对应的指标;
[0283]
根据最优分裂对应的指标,与参与方构建得到最优分裂的分裂信息。
[0284]
其中,指标至少包括特征分量、分裂分量和信息增益分量。
[0285]
在一些实施例中,上述联邦学习装置还可以包括确定模块,用于:
[0286]
确定左节点/右节点是否达到预设分裂条件;
[0287]
若左节点/右节点达到预设分裂条件,则将左节点/右节点作为待构建模型的叶子节点;
[0288]
获取参与方发送的叶子节点的节点编号和叶子节点的标签向量;
[0289]
根据叶子节点的标签向量,得到叶子节点的样本标签。
[0290]
图6为本技术实施例提供的联邦学习装置实施例二的结构示意图,该联邦学习装置可以集成在参与方的计算机设备,也可以独立于参与方计算机设备且与参与方计算机设备系统实现上述方法。如图6所示,该联邦学习装置60包括分量获取模块61、增益计算模块62、第二分裂确定模块63和第二信息构建模块64。
[0291]
其中,分量获取模块61用于获取主动方加密共享的第一分量、待构建模型中分裂节点的每个分裂的左节点样本向量、右节点样本向量。增益计算模块62用于根据第一分量、左节点的样本向量和右节点的样本向量,计算得到参与方的每个分裂的信息增益分量。第二分裂确定模块63用于根据主动方的每个分裂的信息增益分量和参与方的每个分裂的信息增益分量,从分裂中确定出最优分裂。第二信息构建模块64用于根据最优分裂,与主动方共同构建得到最优分裂的分裂信息。
[0292]
其中,最优分裂的信息增益分量值最大
[0293]
在一些实施例中,上述分量获取模块61具体可以用于:
[0294]
与主动方共同生成公钥和私钥;
[0295]
根据公钥,对持有的随机秘密消息进行加密,得到第一加密结果;
[0296]
将第一加密结果发送至主动方;
[0297]
与主动方共同对密文值进行解密,得到解密结果;
[0298]
根据持有的私钥,从解密结果中得到第一分量。
[0299]
其中,每个参与方和主动方持有至少一个私钥,第一加密结果用于与主动方的样本标签加密结果结合得到密文值。
[0300]
在一些实施例中,上述增益计算模块具体可以用于:
[0301]
根据第一分量、左节点的样本向量和右节点的样本向量,计算左节点的标签向量和右节点的标签向量;
[0302]
根据左节点的标签向量和右节点的标签向量,获取左节点的标签比率和右节点的标签比率;
[0303]
根据左节点的样本向量和右节点的样本向量,获取左节点的样本比率和右节点的样本比率;
[0304]
根据左节点的标签比率、左节点的样本比率、右节点的标签比率和右节点的样本比率,计算得到参与方的每个分裂的信息增益分量。
[0305]
本技术实施例提供的装置,可用于执行上述对应实施例中的方法,其实现原理和技术效果类似,在此不再赘述。
[0306]
需要说明的是,应理解以上装置的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。例如,分量计算模块可以为单独设立的处理元件,也可以集成在上述装置的某一个芯片中实现,此外,也可以以程序代码的形式存储于上述装置的存储器中,由上述装置的某一个处理元件调用并执行以上分量计算模块的功能。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。在实现过程中,上述方法的各步骤或以上各个模块可以通过软件形式的指令完成。
[0307]
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本技术实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输。
[0308]
图7为本技术实施例提供的计算机设备实施例一的结构示意图。该计算机设备可以作为主动方的计算机设备,如图7所示,该计算机设备70包括:至少一个处理器71、存储器72、总线73及通信接口74。
[0309]
其中:处理器71、通信接口74以及存储器72通过总线73完成相互间的通信。
[0310]
通信接口74用于与其它设备进行通信。该通信接口74包括用于进行数据传输的通信接口以及用于进行人机交互的显示界面或者操作界面等。
[0311]
处理器71,用于执行存储器72中存储的计算机执行指令,具体可以执行上述实施例中所描述的方法中的相关步骤。
[0312]
处理器可能是中央处理器。计算机设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个cpu;也可以是不同类型的处理器,如一个或多个cpu以及一个或多个asic。
[0313]
存储器72,用于存放计算机执行指令。存储器可能包含高速ram存储器,也可能还包括非易失性存储器,例如至少一个磁盘存储器。
[0314]
图8为本技术实施例提供的计算机设备实施例二的结构示意图,该计算机设备可以作为参与方的计算机设备,如图8所示,该计算机设备80包括:至少一个处理器81、存储器82、总线83及通信接口84。
[0315]
其中:处理器81、通信接口84以及存储器82通过总线83完成相互间的通信。
[0316]
通信接口84用于与其它设备进行通信。该通信接口84包括用于进行数据传输的通信接口以及用于进行人机交互的显示界面或者操作界面等。
[0317]
处理器81,用于执行存储器82中存储的计算机执行指令,具体可以执行上述实施例中所描述的方法中的相关步骤。
[0318]
处理器可能是中央处理器。计算机设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个cpu;也可以是不同类型的处理器,如一个或多个cpu以及一个或多个asic。
[0319]
存储器82,用于存放计算机执行指令。存储器可能包含高速ram存储器,也可能还包括非易失性存储器,例如至少一个磁盘存储器。
[0320]
本实施例还提供一种可读存储介质,可读存储介质中存储有计算机指令,当计算机设备的至少一个处理器执行该计算机指令时,计算机设备执行上述的各种实施方式提供的方法步骤。
[0321]
本实施例还提供一种程序产品,该程序产品包括计算机指令,该计算机指令存储在可读存储介质中。计算机设备的至少一个处理器可以从可读存储介质读取该计算机指令,至少一个处理器执行该计算机指令使得计算机设备实施上述的各种实施方式提供的方法步骤。
[0322]
本技术中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b的情况,其中a,b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系;在公式中,字符“/”,表示前后关联对象是一种“相除”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中,a,b,c可以是单个,也可以是多个。
[0323]
可以理解的是,在本技术实施例中涉及的各种数字编号仅为描述方便进行的区分,并不用来限制本技术的实施例的范围。在本技术的实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术的实施例的实施过程构成任何限定。
[0324]
最后应说明的是:以上各实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述各实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进
行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1