掌桥专利:专业的专利平台
掌桥专利
首页

基于分类决策树模型的分类方法、装置及电子设备

文献发布时间:2023-06-19 10:51:07


基于分类决策树模型的分类方法、装置及电子设备

技术领域

本申请涉及人工智能技术,尤其涉及一种基于分类决策树模型的分类方法、装置及电子设备。

背景技术

人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。

在人工智能的联邦学习领域,是通过数据提供方和数据使用方共同训练一个模型,然后各数据使用方基于各自的模型来进行相应的预测,然而,对于单个参与方,其对应的模型的预测准确性无法保障,预测准确率低。

发明内容

本申请实施例提供一种基于分类决策树模型的分类方法、装置、电子设备、计算机可读存储介质及计算机程序产品,能够提高分类预测的准确率。

本申请实施例的技术方案是这样实现的:

本申请实施例提供一种基于分类决策树模型的分类方法,应用于第一参与方设备,所述方法包括:

获取第二参与方设备发送的分类决策树模型中目标叶子节点的标识;

其中,所述分类决策树模型包括至少一棵决策树,所述目标叶子节点与待分类数据相匹配,所述标识为基于所述待分类数据遍历所述决策树得到;

基于所述目标叶子节点的标识、分类决策树模型中叶子节点的标识和相应分类类别评分的映射关系,得到所述目标叶子节点对应的分类类别的评分;

对所述评分进行隐私保护处理,得到相应的扩展评分;

将所述扩展评分发送至第三参与方设备,以使所述第三参与方设备对至少两个第一参与方设备发送的扩展评分进行融合处理,得到所述待分类数据对应的分类结果并返回至所述第一参与方设备;

接收并输出所述待分类数据对应的分类结果。

本申请实施例提供一种基于分类决策树模型的分类装置,包括:

获取模块,用于获取第二参与方设备发送的分类决策树模型中目标叶子节点的标识;

其中,所述分类决策树模型包括至少一棵决策树,所述目标叶子节点与待分类数据相匹配,所述标识为基于所述待分类数据遍历所述决策树得到;

评分获取模块,用于基于所述目标叶子节点的标识、分类决策树模型中叶子节点的标识和相应分类类别评分的映射关系,得到所述目标叶子节点对应的分类类别的评分;

隐私保护处理模块,用于对所述评分进行隐私保护处理,得到相应的扩展评分;

分类模块,用于将所述扩展评分发送至第三参与方设备,以使所述第三参与方设备对至少两个第一参与方设备发送的扩展评分进行融合处理,得到所述待分类数据对应的分类结果并返回至所述第一参与方设备;

接收模块,用于接收并输出所述待分类数据对应的分类结果。

上述方案中,所述隐私保护处理模块,还用于当所述目标叶子节点的数量为至少两个时,对至少两个所述目标叶子节点对应的评分进行求和,得到相应的总评分;基于目标叶子节点与分类类别的对应关系,分别对各所述分类类别对应的目标叶子节点的评分进行求和,得到各所述分类类别的类别评分;分别计算各所述分类类别的类别评分与所述总评分的比值,将所述比值作为相应分类类别的评分权重;对所述评分权重进行加密,将加密后的评分权重作为所述扩展评分。

上述方案中,所述隐私保护处理模块,还用于对所述评分进行模糊处理,将模糊处理后的评分作为所述扩展评分。

上述方案中,所述隐私保护处理模块,还用于对所述评分进行同态加密,将同态加密后的评分作为所述扩展评分。

上述方案中,所述获取模块,还用于向第二参与方设备发送数据分类请求,所述数据分类请求携带待分类数据的数据标识;所述数据分类请求,用于所述第二参与方设备基于所述数据标识,获取相应的所述待分类数据,并基于所述待分类数据,遍历分类决策树模型的决策树,得到所述决策树中与所述待分类数据相匹配的目标叶子节点的标识;接收所述第二参与方设备返回的与所述待分类数据相匹配的目标叶子节点的标识。

上述方案中,所述分类模块,还用于将所述扩展评分发送至第三参与方设备,以使所述第三参与方设备基于扩展评分与分类类别的对应关系,分别对各所述分类类别的扩展评分进行求和,得到相应的分类类别的类别扩展评分,并选取类别扩展评分最大的分类类别作为所述待分类数据对应的分类结果并返回至所述第一参与方设备。

上述方案中,所述基于分类决策树模型的分类装置,还包括:模型训练模块,用于通过所述分类决策树模型,对第二参与方设备中样本数据的分类类别进行预测,得到预测分类结果;获取所述样本数据所对应的分类标签,所述分类标签指示所述样本数据所归属的分类类别;基于所述预测分类结果与所述分类标签的误差,确定所述分类决策树模型的梯度信息,所述梯度信息,用于更新所述分类决策树模型。

上述方案中,所述模型训练模块,还用于获取第二参与方设备发送的分类决策树模型中样本叶子节点的标识;其中,所述样本叶子节点为,所述分类决策树模型的决策树中与样本数据相匹配的叶子节点;基于所述样本叶子节点的标识、分类决策树模型中叶子节点的标识和相应分类类别评分的映射关系,得到所述样本叶子节点对应的分类类别的样本评分;对所述样本评分进行隐私保护处理,得到相应的样本扩展评分;将所述样本扩展评分发送至第三参与方设备,以使所述第三参与方设备对至少两个第一参与方设备发送的样本扩展评分进行融合处理,得到所述样本数据对应的预测分类结果并返回至所述第一参与方设备。

上述方案中,所述模型训练模块,还用于对所述梯度信息进行同态加密,得到相应的加密梯度信息;将所述加密梯度信息发送至所述第二参与方设备,以使所述第二参与方设备基于所述加密梯度信息,确定针对所述分类决策树模型中待分裂节点的分裂点与加密增益值的对应关系并返回至所述第一参与方设备;其中,所述分裂点基于与所述待分裂节点对应的样本数据所确定;基于所述分裂点与加密增益值的对应关系,确定所述待分裂节点的目标分裂点;基于所述目标分裂点,分裂所述待分裂节点,以更新所述分类决策树模型。

本申请实施例提供一种基于分类决策树模型的分类方法,应用于第二参与方设备,所述方法包括:

获取待分类数据;

遍历分类决策树模型中的决策树,得到所述决策树中与所述待分类数据相匹配的目标叶子节点的标识;

分别将所述目标叶子节点的标识发送至至少两个第一参与方设备;

所述目标叶子节点的标识,用于所述第一参与方设备基于所述目标叶子节点的标识、分类决策树模型中叶子节点的标识和相应分类类别评分的映射关系,得到所述目标叶子节点对应的分类类别的评分,并对所述评分进行隐私保护处理,得到相应的扩展评分,将所述扩展评分发送至第三参与方设备,以使所述第三参与方设备对至少两个第一参与方设备发送的扩展评分进行融合处理,得到所述待分类数据对应的分类结果。

本申请实施例提供一种基于分类决策树模型的分类装置,包括:

获取模块,用于获取第二参与方设备发送的分类决策树模型中目标叶子节点的标识;

其中,所述分类决策树模型包括至少一棵决策树,所述目标叶子节点与待分类数据相匹配,所述标识为基于所述待分类数据遍历所述决策树得到;

评分获取模块,用于基于所述目标叶子节点的标识、分类决策树模型中叶子节点的标识和相应分类类别评分的映射关系,得到所述目标叶子节点对应的分类类别的评分;

隐私保护处理模块,用于对所述评分进行隐私保护处理,得到相应的扩展评分;

分类模块,用于将所述扩展评分发送至第三参与方设备,以使所述第三参与方设备对至少两个第一参与方设备发送的扩展评分进行融合处理,得到所述待分类数据对应的分类结果并返回至所述第一参与方设备;

接收模块,用于接收并输出所述待分类数据对应的分类结果。

上述方案中,所述基于分类决策树模型的分类装置,还包括:模型训练模块,用于获取所述第一参与方设备发送的加密梯度信息;其中,所述加密梯度信息为所述第一参与方设备基于预测分类结果与分类标签的误差所确定,所述预测分类结果为通过所述分类决策树模型,对第二参与方设备中样本数据的分类类别进行预测得到,所述分类标签指示所述样本数据所归属的分类类别;基于所述加密梯度信息,确定针对所述分类决策树模型中待分裂节点的分裂点与加密增益值的对应关系;其中,所述分裂点与加密增益值的对应关系,用于确定所述待分裂节点的目标分裂点,所述目标分裂点,用于分裂所述待分裂节点,以更新所述分类决策树模型。

本申请实施例提供一种电子设备,包括:

存储器,用于存储可执行指令;

处理器,用于执行所述存储器中存储的可执行指令时,实现本申请实施例提供的基于分类决策树模型的分类方法。

本申请实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时,实现本申请实施例提供的基于分类决策树模型的分类方法。

本申请实施例提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现本申请实施例提供的基于分类决策树模型的分类方法。

本申请实施例具有以下有益效果:

与现有技术中数据使用方仅基于其持有的模型对待分类数据进行分类预测的方式相比,本申请实施例的数据使用方(第一参与方设备)在联合数据提供方(第二参与方设备)进行待分类数据的分类类别的预测后,还将预测的分类类别的评分经隐私保护处理后发送给第三参与方设备,使第三参与方设备融合至少两个第一参与方设备发送的针对待分类数据的扩展评分得到分类结果,也即是说,第三参与方设备综合了至少两个分类决策树模型对同一待分类数据的类别评分,来确定待分裂数据的分类结果,使得分类预测容错率提高,克服了现有技术中预测准确率低的缺陷,提高了分类预测的准确率。

附图说明

图1是本申请实施例提供的基于分类决策树模型的分类系统100的一个可选的架构示意图;

图2是本申请实施例提供的电子设备500的一个可选的结构示意图;

图3是本申请实施例提供的基于分类决策树模型的分类方法的一个可选的流程示意图;

图4是本申请实施例提供的联邦架构的一个可选的示意图;

图5是本申请实施例提供的基于分类决策树模型的分类系统的模型架构的一个可选的示意图;

图6是本申请实施例提供的分类决策树模型的一个可选的结构示意图;

图7是本申请实施例提供的分类决策树模型的一个可选的结构示意图;

图8是本申请实施例提供的分类决策树模型的一个可选的结构示意图;

图9是本申请实施例提供的基于分类决策树模型的分类方法的一个可选的流程示意图;

图10是本申请实施例待分裂节点的一个可选的节点分裂示意图;

图11是本申请实施例提供的基于分类决策树模型的分类方法的一个可选的流程示意图;

图12是本申请实施例提供的遍历决策树过程的一个可选的示意图;

图13是本申请实施例提供的基于分类决策树模型的分类方法的一个可选的流程示意图;

图14是本申请实施例提供的基于分类决策树模型的分类装置的一个可选的结构示意图;

图15是本申请实施例提供的基于分类决策树模型的分类装置的一个可选的结构示意图。

具体实施方式

为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。

在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。

在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。

除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。

对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。

1)决策树(Decision Tree)是一种机器学习的方法,它具体是一种树形结构,其中每个内部节点表示一个属性上的判断,每个分支代表一个判断结果的输出,最后每个叶节点代表一种分类结果。

2)联邦机器学习(Federated machine learning/Federated Learning),又名联邦学习,联合学习,联盟学习。联邦机器学习是一个机器学习框架,能有效帮助多个机构在满足用户隐私保护、数据安全和政府法规的要求下,进行数据使用和机器学习建模。联邦学习作为分布式的机器学习范式,可以有效解决数据孤岛问题,让参与方在不共享数据的基础上联合建模,能从技术上打破数据孤岛,实现协作智能。

联邦学习(Federated Learning,a.k.a.Federated Machine Learning)可以分为三类:横向联邦学习(Horizontal Federated Learning),纵向联邦学习(VerticalFederated Learning),联邦迁移学习(Federated Transfer Learning)。

其中,横向联邦学习也称为特征对齐的联邦学习(Feature-Aligned FederatedLearning),即横向联邦学习的参与者的数据特征是对齐的,适用于参与者的数据特征重叠较多,而样本标识(ID,Identity document)重叠较少的情况。纵向联邦学习也称为样本对齐的联邦学习(Sample-Aligned Federated Learning),即纵向联邦学习的参与者的训练样本是对齐的,适用于参与者训练样本ID重叠较多,而数据特征重叠较少的情况。

3)同态加密(HE,Homomorphic Encryption)是一种对称加密算法,由IBM的CraigGentry在2009年提出。同态加密的目的是找到一种加密算法,这种加密算法能够在密文上执行加法、乘法运算,使得对加密后的密文进行某种操作所得到的结果,恰好等于对加密前的明文进行预期操作后再加密得到的密文。同态加密有效保证了数据处理方可以直接对数据的密文进行相应的处理,而无法获知其所处理的数据明文信息。同态加密的这一特性使用户的数据和隐私可以得到相应的安全保障,因此,同态加密被应用于许多现实场景来保证数据的安全。

如果一个加密函数同时满足加法同态和乘法同态,称为全同态加密。使用这个加密函数可以完成各种加密后的运算(加减乘除、多项式求值、指数、对数、三角函数等)。

4)人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。

机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。

基于此,本申请实施例提供一种基于分类决策树模型的分类方法、装置、电子设备、计算机可读存储介质及计算机程序产品,能够提高分类预测的准确率。

首先对本申请实施例提供的基于分类决策树模型的分类系统进行说明,参见图1,图1是本申请实施例提供的基于分类决策树模型的分类系统100的一个可选的架构示意图,基于分类决策树模型的分类系统100包括至少两个第一参与方设备200-1、一个第二参与方设备200-2和一个第三参与方设备200-3,第一参与方设备200-1通过网络300连接第二参与方设备200-2及第三参与方设备200-3。网络300可以是广域网或者局域网,又或者是二者的组合,使用无线链路实现数据传输。其中,第二参与方设备200-2为数据提供方,提供待分类数据,第一参与方设备200-1为数据使用方,需通过第二参与方设备200-2提供的待分类数据获得相应的分类结果,第三参与方设备200-3基于至少两个第一参与方设备200-1发送的分类类别的评分,最终确定待分类数据的分类结果,并将分类结果返回给各第一参与方设备200-1。其中,每一个第一参与方设备200-1与第二参与方设备200-2共同训练一个分类决策树模型,本申请实施例通过至少两个第一参与方设备200-1对应的分类决策树模型分别对待分类数据进行分类预测,并通过第三参与方设备200-3将所有分类决策树模型的预测结果(分类类别的评分)进行融合处理,得到待分类数据的最终分类结果。本申请实施例中至少两个第一参与方设备200-1构成横向联邦架构,而第一参与方设备200-1与第二参与方设备200-2构成纵向联邦架构,以构成横向联邦和纵向联邦结合的联邦架构。

在一些实施例中,第一参与方设备200-1可以实施为终端或服务器,第二参与方设备200-2也可以实施为终端或服务器,第三参与方设备200-3也可以实施为终端或服务器。其中,终端可以是笔记本电脑,平板电脑,台式计算机,智能手机,专用消息设备,便携式游戏设备,智能音箱,智能手表等,但并不局限于此。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。网络100可以是广域网或者局域网,又或者是二者的组合。第一参与方设备200-1、第二参与方设备200-2及第三参与方设备200-3可以通过有线或无线通信方式进行直接或间接地连接,本申请实施例中不做限制。

第一参与方设备200-1,用于向第二参与方设备发送数据分类请求,所述数据分类请求携带待分类数据的数据标识。

第二参与方设备200-2,用于响应于数据分类请求,对数据分类请求进行解析,获取数据分类请求所携带的数据标识,并基于所述数据标识,获取相应的所述待分类数据,并基于所述待分类数据,遍历分类决策树模型的决策树,得到所述决策树中与所述待分类数据相匹配的目标叶子节点的标识,发送目标叶子节点的标识至第一参与方设备200-1。

第一参与方设备200-1,还用于接收第二参与方设备200-2发送的分类决策树模型中目标叶子节点的标识,基于所述目标叶子节点的标识、分类决策树模型中叶子节点的标识和相应分类类别评分的映射关系,得到所述目标叶子节点对应的分类类别的评分,对所述评分进行隐私保护处理,得到相应的扩展评分,将所述扩展评分发送至第三参与方设备200-3。

第三参与方设备200-3,用于对至少两个第一参与方设备200-1发送的扩展评分进行融合处理,得到所述待分类数据对应的分类结果并发送至各第一参与方设备200-1,以使第一参与方设备200-1接收并输出所述待分类数据对应的分类结果。

接下来对本申请实施例提供的用于实施基于分类决策树模型的分类方法的电子设备进行说明,参见图2,图2是本申请实施例提供的电子设备500的一个可选的结构示意图,在实际应用中,电子设备500可以实施为图1中的第一参与方设备200-1、第二参与方设备200-2或第三参与方设备200-3,以电子设备为图1所示的第一参与方设备200-1为例,对实施本申请实施例的基于分类决策树模型的分类方法的电子设备进行说明。图2所示的电子设备500包括:至少一个处理器510、存储器550、至少一个网络接口520和用户接口530。电子设备500中的各个组件通过总线系统540耦合在一起。可以理解,总线系统540用于实现这些组件之间的连接通信。总线系统540除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线系统540。

处理器510可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。

用户接口530包括使得能够呈现媒体内容的一个或多个输出装置531,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口530还包括一个或多个输入装置532,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。

存储器550可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器550可选地包括在物理位置上远离处理器510的一个或多个存储设备。

存储器550包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Memory),易失性存储器可以是随机存取存储器(RAM,Random Access Memory)。本申请实施例描述的存储器550旨在包括任意适合类型的存储器。

在一些实施例中,存储器550能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。

操作系统551,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;

网络通信模块552,用于经由一个或多个(有线或无线)网络接口520到达其他计算设备,示例性的网络接口520包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等;

呈现模块553,用于经由一个或多个与用户接口530相关联的输出装置531(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作外围设备和显示内容和信息的用户接口);

输入处理模块554,用于对一个或多个来自一个或多个输入装置532之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。

在一些实施例中,本申请实施例提供的基于分类决策树模型的分类装置可以采用软件方式实现,图2示出了存储在存储器550中的基于分类决策树模型的分类装置555,其可以是程序和插件等形式的软件,包括以下软件模块:获取模块5551、评分获取模块5552、隐私保护处理模块5553、分类模块5554和接收模块5555,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。将在下文中说明各个模块的功能。

在另一些实施例中,本申请实施例提供的基于分类决策树模型的分类装置可以采用硬件方式实现,作为示例,本申请实施例提供的基于分类决策树模型的分类装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本申请实施例提供的基于分类决策树模型的分类方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable LogicDevice)、现场可编程门阵列(FPGA,Field-Programmable Gate Array)或其他电子元件。

基于上述对本申请实施例的基于分类决策树模型的分类系统及电子设备的说明,下面说明本申请实施例提供的基于分类决策树模型的分类方法,本申请实施例提供的基于分类决策树模型的分类方法应用于第一参与方设备。参见图3,图3是本申请实施例提供的基于分类决策树模型的分类方法的一个可选的流程示意图,将结合图3示出的步骤进行说明。

步骤101,第一参与方设备获取第二参与方设备发送的分类决策树模型中目标叶子节点的标识。其中,所述分类决策树模型包括至少一棵决策树,所述目标叶子节点与待分类数据相匹配,所述标识为基于所述待分类数据遍历所述决策树得到。

在实际实施时,参见图4,图4是本申请实施例提供的联邦架构的一个可选的示意图。该联邦架构由多个第一参与方设备及一个第二参与方设备构成,其中,第一参与方设备提供样本的分类标签,第二参与方设备提供样本的样本数据,各第一参与方设备联合第二参与方设备,基于样本数据和分类标签,训练一个相应的分类决策树模型。需要说明的是,第二参与方设备内存储有所有第一参与方设备对应的分类决策树模型。其中,第一参与方设备与第二参与方设备内均存储有该分类决策树模型的模型结构,而第一参与方设备内存储有分类决策树模型的非叶子节点的标识与数据分割点的映射关系,第二参与方设备内存储有分类决策树模型的叶子节点的标识与评分的映射关系。

参见图5,图5是本申请实施例提供的基于分类决策树模型的分类系统的模型架构的一个可选的示意图。各第一参与方设备内均存储有一个分类决策树模型,而第二参与方设备中对应存储有至少两个第一参与方设备的分类决策树模型。示例性地,参见图6,图6是本申请实施例提供的分类决策树模型的一个可选的结构示意图。一个分类决策树模型包括至少一颗决策树,如图4示出的共t棵决策树,t为大于等于1的正整数。其中,每一棵决策树的深度相同,可以设置为depth。各第一参与方设备联合第二参与方设备所构建的分类决策树模型可能互不相同,比如第一参与方设备1联合第二参与方设备所构建的决策树模型的决策树的数量与第二参与方设备2所构建的决策树的数量不相同,或者二者的决策树的深度不相同等。

示例性地,本申请实施例所涉及分类决策树模型可以为风控模型,相应的,本申请实施例所涉及的待分类数据则可以为用户的特征数据,分类标签可以是风控评估结果,风控评估结果例如可以包括信用评估通过和信用评估未通过等。第一参与方为对用户进行信用评估的平台,例如可以为金融贷款平台(如银行),第二参与方可以为持有用户的特征数据的平台,例如多种类型的消费平台(例如,商场、超市、网购平台、游戏平台、手机应用商店等)、或者互联网公司等。其中,用户的特征数据可以包括但不限于用户的基础信息、业务数据、行为数据及设备信息等。基础信息包括但不限于用户的姓名、性别、年龄、学历、职业、手机号、身份证号、地址、收入数据(例如,年薪、月薪)等。业务数据包括多个业务场景下的数据,例如业务场景为贷款业务,业务数据则包括贷款数据及还款数据等,贷款数据包括贷款金额、贷款时间及贷款机构(例如,xx银行)等,还款数据包括还款金额、还款时间、还款机构及逾期还款数据(例如,逾期次数及逾期天数)等;例如业务场景为消费场景,业务数据则包括消费用途(例如,教育消费、购物消费、医疗消费、生活消费等)、消费金额、消费时间、消费机构(例如,商场、超市、便利店、网购店铺等)、消费方式(例如,信用卡消费或储蓄卡消费等)及消费时用户所处的地址等。行为数据例如可以是用户常用的支付机构(例如,微信支付、银行卡支付等)、用户常用的支付方式(例如,二维码支付方式、刷卡支付方式)及操作频率(例如,一段时间内实施支付操作的频率)等。设备信息包括用户常用设备的型号、实施用户行为时设备所处的地址等。本申请实施例在利用样本数据进行模型训练之前,还对样本数据进行特征分箱,例如将年龄这一特征分箱为小于30岁,30-50岁,大于50岁等。通过特征分箱训练得到的模型的可解释性更强。

应当理解的是,分类决策树模型中决策树的非叶子节点则为用户的特征值,而一个分支的叶子节点则为一个分类类别对应的评分。本申请实施例中,若分类决策树模型为二分类,则分类决策树模型包括针对其中一个分类类别的决策树,也即是说,分类决策树模型中的决策树仅预测是否为其中一个分类类别的概率。示例性地,参见图7,图7是本申请实施例提供的分类决策树模型的一个可选的结构示意图,分类决策树模型用于对正类和反类等两个分类类别进行分类预测,这里,分类决策树模型可以训练为预测正类的分类概率,则其中的每一棵决策树均预测正类对应的评分,在一些实施例中,分类决策树模型也可以训练为预测反类的分类概率。示例性地,在风控场景中,正类则可以为风控评估通过,反类则可以为风控评估未通过。

此外,若分类决策树模型为多分类,也即预测结果包含至少三个分类类别,则针对每一个分类类别,均对应有一组决策树,而该组决策树仅预测相应分类类别的概率。示例性地,参见图8,图8是本申请实施例提供的分类决策树模型的一个可选的结构示意图,分类决策树模型用于对N个类别进行分类预测,N为大于等于3的正整数,则对于分类决策树模型,它针对每一个分类类别对应有一组决策树组,该决策树组内的决策树则仅预测该类别的概率,决策树的叶子节点则仅对应该类别的评分。

在一些实施例中,基于图3,步骤101可以通过如下方式实现:第一参与方设备向第二参与方设备发送数据分类请求,所述数据分类请求携带待分类数据的数据标识;所述数据分类请求,用于所述第二参与方设备基于所述数据标识,获取相应的所述待分类数据,并基于所述待分类数据,遍历分类决策树模型的决策树,得到所述决策树中与所述待分类数据相匹配的目标叶子节点的标识;接收所述第二参与方设备返回的与所述待分类数据相匹配的目标叶子节点的标识。

在实际实施时,第一参与方设备获取数据分类请求,这里,数据分类请求可以为用户基于第一参与方设备的输入设备发出。第二参与方设备在接收到待分类数据的数据分类请求后,从该数据分类请求中解析得到数据标识,基于该数据标识获取相应的待分类数据,并基于待分类数据遍历分类决策树模型中的各决策树,遍历得到每一棵决策树的目标叶子节点。在实际实施时,第二参与方设备获取目标叶子节点的标识并发送至第一参与方设备。

步骤102,基于所述目标叶子节点的标识、分类决策树模型中叶子节点的标识和相应分类类别评分的映射关系,得到所述目标叶子节点对应的分类类别的评分。

在实际实施时,第一参与方设备查询本地存储的叶子节点的标识与评分的映射关系,得到目标叶子节点对应的分类类别的评分。

需要说明的是,目标叶子节点的数量与分类决策树模型中的决策树的数量一致,也即针对每一棵决策树均获得一个目标叶子节点的标识。对于二分类的分类决策树模型,各目标叶子节点均对应为同一个分类类别,例如对于包含t棵决策树的分类决策树模型,将得到t个目标叶子节点的标识,而这t个目标叶子节点均对应相同的分类类别。而对于多分类的分类决策树模型,目标叶子节点可能对应不同分类类别,各分类类别所对应的目标叶子节点的数量相同,例如分类决策树模型为三分类模型,对于每一分类类别对应t棵决策树,则共有3t棵决策树,而获得的目标叶子节点的标识的个数也为3t。

步骤103,对所述评分进行隐私保护处理,得到相应的扩展评分。

在一些实施例中,基于图3,步骤103可以通过如下方式实现:当所述目标叶子节点的数量为至少两个时,第一参与方设备对至少两个所述目标叶子节点对应的评分进行求和,得到相应的总评分;基于目标叶子节点与分类类别的对应关系,分别对各所述分类类别对应的目标叶子节点的评分进行求和,得到各所述分类类别的类别评分;分别计算各所述分类类别的类别评分与所述总评分的比值,将所述比值作为相应分类类别的评分权重;对所述评分权重进行加密,将加密后的评分权重作为所述扩展评分。

在实际实施时,第一参与方设备针对每一个分类类别,将该分类类别所对应的评分进行相加,得到该分类类别的总的类别评分。此外,第一参与方设备还将所有目标叶子节点对应的评分进行相加,得到总评分。接着,第一参与方设备针对各分类类别,计算相应分类类别的类别评分与总评分的比值,将该比值作为该分类类别对应的评分权重。可以理解,本申请实施例所确定的评分权重则为相应分类类别的分类概率。

本申请实施例中,第一参与方设备将各分类类别对应的评分权重进行加密处理,将加密处理后的评分权重作为扩展评分。这里加密处理的方式可以为对评分权重进行模糊处理,例如添加噪声、差分隐私处理等,第三参与方设备获得的即为至少两个第一参与方设备对评分权重进行隐私处理后的扩展评分,应当理解的是,第三参与方设备在统计至少两个第一参与方设备的扩展评分时,其中的噪声将会互相抵消,不影响对扩展评分的统计结果。此外,加密处理方式还可以为对评分权重进行同态加密。

在一些实施例中,基于图3,步骤103还可以通过如下方式实现:第一参与方设备对所述评分进行模糊处理,将模糊处理后的评分作为所述扩展评分。

在一些实施例中,基于图3,步骤103还可以通过如下方式实现:第一参与方设备对所述评分进行同态加密,将同态加密后的评分作为所述扩展评分。

在实际实施时,第一参与方设备可以直接将进行模糊处理或者同态加密后得到的扩展评分发送至第三参与方设备,以使第三参与方设备直接对隐私处理后的评分进行统计分析。

步骤104,将所述扩展评分发送至第三参与方设备,以使所述第三参与方设备对至少两个第一参与方设备发送的扩展评分进行融合处理,得到所述待分类数据对应的分类结果并返回至所述第一参与方设备。

在一些实施例中,基于图3,步骤104还可以通过如下方式实现:第一参与方设备将所述扩展评分发送至第三参与方设备,以使所述第三参与方设备基于扩展评分与分类类别的对应关系,分别对各所述分类类别的扩展评分进行求和,得到相应的分类类别的类别扩展评分,并选取类别扩展评分最大的分类类别作为所述待分类数据对应的分类结果并返回至所述第一参与方设备。

在实际实施时,第三参与方设备在接收到至少两个第一参与方设备发送的扩展评分之后,针对每一个分类类别,将相应分类类别的扩展评分进行相加,得到该分类类别对应的总的类别扩展评分,然后选取类别扩展评分最大的分类类别作为待分类数据的分类结果。示例性地,result=result_0+result_1+…+result_k=[p_0_0+p_0_1+…+p_0_k,p_1_0+p_1_1+…+p_1_k,…,p_j_0+p_j_1+…+p_j_k]=[p_final_0,p_final_1,…,p_final_j],其中,j+1为分类类别的数量,k+1为第一参与方设备的数量,result为概率向量,p_final_j为第j+1个分类类别的类别扩展评分,p_j_k为第k+1个第一参与方设备针对第j+1个分类类别的扩展评分。

步骤105,接收并输出所述待分类数据对应的分类结果。

在实际实施时,第三参与方设备在得到分类结果后,将分类结果发送至各第一参与方设备,第一参与方设备在接收到分类结果后输出至显示界面中供用户浏览。在一些实施例中,第三参与方设备在得到分类结果后,还可以仅将分类结果发送至发出数据分类请求的第一参与方设备。

本申请实施例中,第一参与方设备在联合第二参与方设备进行待分类数据的分类类别的预测后,还将预测的分类类别的评分经隐私保护处理后发送给第三参与方设备,使第三参与方设备融合至少两个第一参与方设备发送的针对同一待分类数据的扩展评分,得到该待分类数据的最终分类结果,使得分类预测容错率提高,从而提高了分类预测的准确性。

在一些实施例中,参照图9,图9是本申请实施例提供的基于分类决策树模型的分类方法的一个可选的流程示意图,基于图3,在步骤101之前,还可以执行:

步骤201,第一参与方设备通过所述分类决策树模型,对第二参与方设备中样本数据的分类类别进行预测,得到预测分类结果。

需要说明的是,第一参与方设备在通过使用分类决策树模型对样本数据进行分类预测的过程中,还需第二参与方设备进行联合参与处理。

在一些实施例中,基于图9,步骤201可以通过如下方式实现:第一参与方设备获取第二参与方设备发送的分类决策树模型中样本叶子节点的标识;其中,所述样本叶子节点为,所述分类决策树模型的决策树中与样本数据相匹配的叶子节点;基于所述样本叶子节点的标识、分类决策树模型中叶子节点的标识和相应分类类别评分的映射关系,得到所述样本叶子节点对应的分类类别的样本评分;对所述样本评分进行隐私保护处理,得到相应的样本扩展评分;将所述样本扩展评分发送至第三参与方设备,以使所述第三参与方设备对至少两个第一参与方设备发送的样本扩展评分进行融合处理,得到所述样本数据对应的预测分类结果并返回至所述第一参与方设备。这里对样本数据的的分类预测过程参见步骤101至步骤105对待分类数据的分类预测过程,在此不再赘述。

步骤202,获取所述样本数据所对应的分类标签,所述分类标签指示所述样本数据所归属的分类类别。

在实际实施时,第一参与方设备基于样本数据的样本标识,从本地查找与样本标识对应的分类标签。

步骤203,基于所述预测分类结果与所述分类标签的误差,确定所述分类决策树模型的梯度信息。所述梯度信息,用于更新所述分类决策树模型。

在实际实施时,第一参与方设备基于针对样本数据的预测分类结果与分类标签的误差,计算相应的梯度信息。这里,梯度信息包括一阶梯度和二阶梯度。本申请实施例中,将一阶梯度记为g,二阶梯度记为h。

在一些实施例中,基于图6,还可以执行:第一参与方设备对所述梯度信息进行同态加密,得到相应的加密梯度信息;将所述加密梯度信息发送至所述第二参与方设备,以使所述第二参与方设备基于所述加密梯度信息,确定针对所述分类决策树模型中待分裂节点的分裂点与加密增益值的对应关系并返回至所述第一参与方设备;其中,所述分裂点基于与所述待分裂节点对应的样本数据所确定;基于所述分裂点与加密增益值的对应关系,确定所述待分裂节点的目标分裂点;基于所述目标分裂点,分裂所述待分裂节点,以更新所述分类决策树模型。

在实际实施时,第一参与方设备对一阶梯度g和二阶梯度h进行同态加密,得到相应的加密一阶梯度[g]和加密二阶梯度[h],并将加密后的梯度信息发送至第二参与方设备。第二参与方设备基于加密梯度信息,确定分裂点对应的加密增益值,这里,加密增益值基于一阶梯度和二阶梯度所确定,因而其密文形态仍然是同态加密后的密文。在实际实施时,第二参与方设备基于加密一阶梯度[g]和加密二阶梯度[h],确定相应的加密梯度直方图。第一参与方设备在获取到加密梯度直方图之后,对其进行同态解密,得到各特征对应的梯度直方图,然后基于梯度直方图确定待分裂节点的目标分裂点。需要说明的是,目标分裂点为增益值最大的分裂点。在实际实施时,第一参与方设备基于梯度直方图计算相应特征对应的增益值最大的特征值,将该增益值作为相应特征对应的增益值,并比较各特征对应的增益值,从中选取增益值最大的特征及特征值作为目标分裂点。在实际实施时,第一参与方设备基于目标分裂点,分裂待分裂节点,得到待分裂节点的两个子节点,以更新分类决策树模型的模型结构。

在一些实施例中,第二参与方设备对落入待分裂节点的样本数据的数据分割点进行扩展处理,将扩展处理后的扩展分割点作为分裂点,将扩展分割点发送至第一参与方设备。在实际实施时,第二参与方设备对数据分割点进行编号,将编号作为扩展分割点,也即待分裂节点的分裂点,将编号与加密增益值的对应关系,也即编号与相应的加密梯度直方图发送至第一参与方设备。通过这种方式将样本数据的数据分割点进行隐私保护,避免第一参与方设备获知第二参与方设备的样本数据。

示例性地,参照图10,图10是本申请实施例待分裂节点的一个可选的节点分裂示意图。这里,落在待分裂节点上的样本数据包括样本2、5、7、8和10的对应的样本数据,待分裂节点对应的目标数据分割点为特征3,特征值=0.4,这里,目标数据分割点对应目标分裂点,第二参与方设备仅将数据分割点的编号和对应的加密直方图发送至第一参与方设备,第一参与方设备计算得到目标分裂点之后,分裂待分裂节点,应当理解的是,第一参与方设备仅对待分裂节点进行了分裂,而并不知道目标分裂节点所对应的数据分割点。第一参与方设备计算得到目标分裂点之后,将编号形式的目标分裂点发送至第二参与方设备,第二参与方设备则基于该编号,获取目标分裂点对应的数据分割点,在该处分裂待分裂节点。如图10所示,对待分裂节点分裂之后得到的左子节点则对应有样本2、样本5和样本10,右子节点则对应有样本7和样本8。

在实际实施时,若待分裂节点所在的决策树未达到停止分裂条件,则继续进行分裂,直至达到停止分裂条件,则完成对该决策树的构建。此时,第一参与方设备则继续计算损失函数,确定损失函数是否收敛,若未收敛,则继续构建新的决策树,直至损失函数收敛,或者决策树的数量达到预设数量,完成对分类决策树模型的训练。本申请实施例中,通过联合第一参与方设备与第二参与方设备训练分类决策树模型,实现了样本数据和分类标签在保密状态下的模型训练。

下面继续说明本申请实施例提供的基于分类决策树模型的分类方法,本申请实施例提供的基于分类决策树模型的分类方法应用于第二参与方设备。参见图11,图11是本申请实施例提供的基于分类决策树模型的分类方法的一个可选的流程示意图,将结合图11示出的步骤进行说明。

步骤301,第二参与方设备获取待分类数据。

在实际实施时,第二参与方设备响应于第一参与方设备发送的数据分类请求,解析该数据分类请求,从中获取携带的数据标识,根据数据标识获取对应的待分类数据。

步骤302,分别遍历对应至少两个第一参与方设备的分类决策树模型中的决策树,得到相应的所述决策树中与所述待分类数据相匹配的目标叶子节点的标识。

在实际实施时,第二参与方设备内存储有对应至少两个第一参与方设备的分类决策树模型,第二参与方设备分别遍历各分类决策树模型中的决策树,得到相应的目标叶子节点的标识。具体地,第二参与方设备基于待分裂数据,从决策树的根节点开始,遍历决策树,直至遍历至决策树的叶子节点,将遍历到的叶子节点作为与待分类数据相匹配的目标叶子节点。

示例性地,参见图12,图12是本申请实施例提供的遍历决策树过程的一个可选的示意图。假设待分类数据为(32岁,本科),第二参与方设备则根据该待分裂数据遍历图12示出的决策树后,得到的目标叶子节点的标识为A

需要说明的是,第二参与方设备分别针对各第一参与方设备所对应的分类决策树模型进行遍历,得到各第一参与方设备所对应的分类决策树模型中的目标叶子节点。示例性地,第二参与方设备遍历得到第i个第一参与方设备对应的目标叶子节点标识的集合A

步骤303,分别将所述目标叶子节点的标识发送至相应的所述第一参与方设备。所述目标叶子节点的标识,用于所述第一参与方设备基于所述目标叶子节点的标识、分类决策树模型中叶子节点的标识和相应分类类别评分的映射关系,得到所述目标叶子节点对应的分类类别的评分,并对所述评分进行隐私保护处理,将隐私保护处理后得到的扩展评分发送至第三参与方设备,以使所述第三参与方设备对至少两个第一参与方设备发送的扩展评分进行融合处理,得到所述待分类数据对应的分类结果。这里,第一参与方设备基于目标叶子节点的标识确定相应的扩展评分的过程参见上述实施例,在此不再赘述。

在一些实施例中,基于图11,还可以执行:第二参与方设备获取所述第一参与方设备发送的加密梯度信息;其中,所述加密梯度信息为所述第一参与方设备基于预测分类结果与分类标签的误差所确定,所述预测分类结果为通过所述分类决策树模型,对第二参与方设备中样本数据的分类类别进行预测得到,所述分类标签指示所述样本数据所归属的分类类别;基于所述加密梯度信息,确定针对所述分类决策树模型中待分裂节点的分裂点与加密增益值的对应关系;其中,所述分裂点与加密增益值的对应关系,用于确定所述待分裂节点的目标分裂点,所述目标分裂点,用于分裂所述待分裂节点,以更新所述分类决策树模型。

本申请实施例中,第二参与方设备联合至少两个第一参与方设备进行待分类数据的分类预测,获得各第一参与方设备的分类决策树模型对待分类数据进行预测后得到的目标叶子节点的标识,然后将其发送至相应的第一参与方设备,从而使得第一参与方设备获得相应目标叶子节点的评分,经隐私处理后得到扩展评分发送至第三参与方设备,使第三参与方设备融合至少两个分类决策树模型对待分类数据的预测结果得到最终的分类结果,使得分类预测容错率提高,从而提高了分类预测的准确性。

接下来继续对本申请实施例提供的基于分类决策树模型的分类方法进行介绍,图13是本申请实施例提供的基于分类决策树模型的分类方法的一个可选的流程示意图,参见图13,本申请实施例提供的基于分类决策树模型的分类方法由第一参与方设备、第二参与方设备及第三参与方设备协同实施。其中,第一参与方设备提供样本的样本数据,第二参与方设备提供样本的分类标签,第三参与方融合各第一参与方设备对应的预测结果。第一参与方设备、第二参与方设备及第三参与方设备均可以是服务器,也可以是终端。参见图13,图13为本申请实施例提供的基于分类决策树模型的分类方法的一个可选的流程示意图,本申请实施例提供的基于分类决策树模型的分类方法包括:

步骤401,第一参与方设备确定样本的预测分类结果与分类标签之间的误差,基于所述误差计算梯度信息。

这里,预测分类结果为通过分类决策树模型,对第二参与方设备中样本数据的分类类别进行预测得到。在实际实施时,分类决策树模型包括多棵决策树,每一棵决策树的深度相同。这里,将待构建的决策树记为第t棵决策树,分类决策树模型中已构建有t-1棵决策树,预测分类结果则是通过已构建的t-1棵决策树对样本数据进行分类预测得到。在实际实施时,第一参与方设备基于样本的分类标签与t-1棵决策树的残差,计算梯度信息。这里,梯度信息包括一阶梯度和二阶梯度。本申请实施例中,将一阶梯度记为g,二阶梯度记为h。

步骤402,第一参与方设备对梯度信息进行同态加密,得到加密梯度信息。

步骤403,第一参与方设备发送加密梯度信息至第二参与方设备。

步骤404,第二参与方设备基于所述加密梯度信息,确定针对所述分类决策树模型中待分裂节点的分裂点与加密增益值的对应关系。

在实际实施时,第二参与方设备初始化待构建的决策树的根节点,将所有样本落入在根节点上,并将根节点加入节点列表。这里,将加密的一阶梯度记为[g],将加密的二阶梯度记为[h],本申请实施例中,通过直方图来确定分裂点与加密增益值的对应关系。具体地,第二参与方设备根据待分裂节点中样本的样本数据,计算相应的梯度直方图,需要说明的是,第二参与方设备是基于加密的梯度信息进行梯度直方图的计算,则梯度直方图中的梯度信息仍然为加密状态,可以记为[g]/[h]直方图。本申请实施例中,样本数据为样本的特征,样本数据中包含有多个特征,在实际实施时,第二参与方设备针对每个特征计算对应的梯度直方图。需要说明的是,第二参与方设备在进行分类决策树的训练之前还对样本数据进行特征分箱处理,样本数据中每一个特征可以被分箱为至少两个箱子,例如对于年龄这一特征,则可以被分箱为小于30岁,30-50岁,大于50岁等,这里,对特征进行分箱的分割点即为该特征对应的分裂点。样本数据包括多个特征,而每个特征对应至少一个分裂点,样本数据的分裂点则为相应特征对应的分箱分割点。在实际实施时,待分裂节点对应一个数据范围,例如若该待分裂节点为对年龄进行分裂后生成,该待分裂节点对应的数据范围为小于30岁,则落入该待分裂节点的样本数据则为小于30岁的所有样本所对应的样本数据。

在一些实施例中,第二参与方设备基于所述加密梯度信息,确定样本数据的数据分割点与加密增益值的对应关系,并对所述数据分割点进行数据扩展处理,得到相应的扩展分割点,并将所述扩展分割点作为针对待分裂节点的分裂点,以得到针对所述待分裂节点的分裂点与加密增益值的对应关系。这里,样本数据的数据分割点则为对样本数据进行分箱处理的分箱分割点。第二参与方设备在确定数据分割点之后,对各数据分割点进行编号,将数据分割点的编号作为待分裂节点的分裂点,将数据分割点的编码与相应的加密增益值发送至第一参与方设备。通过对数据分割点进行扩展处理,从而对数据分割点进行隐私保护,避免第一参与方设备获知样本数据的信息,从而对第二参与方设备内的样本数据进行隐私保护。

步骤405,第二参与方设备发送分裂点与加密增益值的对应关系至第一参与方设备。

在实际实施时,第二参与方设备发送加密的梯度直方图至第一参与方设备。

步骤406,第一参与方设备基于分裂点与加密增益值的对应关系,确定所述待分裂节点的目标分裂点,并基于目标分裂点,分裂待分裂节点,以更新所述分类决策树模型。

在实际实施时,第一参与方设备对加密的梯度直方图进行同态解密,得到各特征对应的梯度直方图,基于梯度直方图计算出待分裂节点的目标分裂点,这里,目标分裂点为增益值最大的分裂点。接着,第一参与方设备基于目标分裂点分裂待分裂节点,以更新当前待构建的决策树,从而更新分类决策树模型。

需要说明的是,第一参与方设备在更新分类决策树模型之后,将分类决策树模型同步至第二参与方设备,以使第二参与方设备内的分类决策树模型的模型结构与第一参与方设备保持一致。在实际实施时,第一参与方设备还基于梯度信息,计算待分裂节点的子节点对应的分类类别的评分。

若当前待构建的决策树未达到停止分裂条件,第一参与方设备则继续分裂待构建的决策树,直至达到停止分裂条件。这里,停止分裂条件可以是决策树的深度达到预设深度或者决策树的增益值达到预设增益值。当新的决策树构建完成时,第一参与方设备根据当前的分类决策树模型和分类标签,计算损失函数的值,当损失函数收敛时,停止分裂决策树模型的训练。

步骤407,第一参与方设备发送数据分类请求至第二参与方设备。

这里,数据分类请求携带待分类数据的数据标识。在实际实施时,数据分类请求可以是由用户通过触发第一参与方设备的输入设备发出,还可以是由其他设备发送,还可以是基于一定的触发条件自动触发。

步骤408,第二参与方设备基于数据分类请求携带的数据标识,获取相应的待分类数据,并基于待分类数据,遍历分类决策树模型的决策树,得到决策树中与待分类数据相匹配的目标叶子节点的标识。

这里,叶子节点的标识为预先设置的节点的编号。待分类数据为样本的特征,第二参与方设备基于样本的特征,遍历分类决策树模型中的决策树,从决策树的根节点开始,直至遍历至决策树的叶子节点,将遍历到的与样本的特征相匹配的叶子节点作为目标叶子节点,获得目标节点的编号。

步骤409,第二参与方设备发送目标叶子节点的标识至第一参与方设备。

步骤410,第一参与方设备接收目标叶子节点的标识,并基于目标叶子节点的标识、分类决策树模型中叶子节点的标识和相应分类类别评分的映射关系,得到目标叶子节点对应的分类类别的评分。

在实际实施时,第一参与方设备和第二参与方设备均保存有分类决策树模型的决策树的树结构。而第一参与方设备保存有分类决策树模型中各决策树的叶子节点的标识与评分之间的映射关系,第二参与方设备保存有分类决策树模型中各决策树的非叶子节点的标识与样本数据的数据分割点之间的映射关系。

步骤411,第一参与方设备对所述评分进行隐私保护处理,得到相应的扩展评分。

这里,第一参与方设备通过安全聚合协议,对评分进行隐私处理,得到相应的扩展评分。在一些实施例中,第一参与方设备可以通过对评分进行模糊处理来对评分进行隐私保护处理,还可以通过对评分进行同态加密来对其进行隐私保护处理等。

需要说明的是,第一参与方设备在获得目标叶子节点的评分之后,还将评分转换为各分类类别的概率。具体地,第一参与方设备将每一分类类别的评分占所有分类类别的评分之和的占比,作为相应分类类别的概率。

示例性地,若分类决策树模型为二分类模型,第一参与方设备则通过sigmoid函数将评分转换为对应分类类别的概率p,构建一个二元数组[p,1-p]。如果分类决策树模型是多分类模型,例如有k个类别,则将每个类别的评分对应的累加到一个k维度向量上,得到[score_0,score_1,…,score_k]的一个向量,经过softmax函数将其转换为各个类的概率[p_0,p_1,…,p_k]。

在实际实施时,第一参与方设备将分类类别的评分转换为对应的分类类别的概率之后,对概率进行加密,将加密后的概率作为所述扩展评分发送至第三参与方设备。

步骤412,第一参与方设备发送扩展评分至第三参与方设备。

示例性地,第三参与方设备接收到的扩展评分例如可以为[[p_0],[p_1],…,[p_k]]。

步骤413,第三参与方设备对至少两个第一参与方设备发送的扩展评分进行融合处理,得到待分类数据对应的分类结果。

在实际实施时,第三参与方设备基于扩展评分与分类类别的对应关系,分别对各所述分类类别的扩展评分进行求和,得到相应的分类类别的类别扩展评分,并选取类别扩展评分最大的分类类别作为所述待分类数据对应的分类结果。

示例性地,第三参与方设备将每一个分类类别的概率进行相加,得到每一个分类类别的概率之和。在实际实施时,第三参与方设备将概率之后最大的分类类别作为待分类树对应的分类结果。

步骤414,第三参与方设备发送待分类数据对应的分类结果至第一参与方设备。

步骤415,第一参与方设备接收并输出所述待分类数据对应的分类结果。

本申请实施例中,第一参与方设备在联合第二参与方设备进行待分类数据的分类类别的预测后,还将预测的分类类别的评分经隐私保护处理后发送给第三参与方设备,使第三参与方设备融合至少两个第一参与方设备发送的针对待分类数据的扩展评分得到分类结果,也即是说,第三参与方设备综合了至少两个分类决策树模型对同一待分类数据的类别评分,来确定待分裂数据的分类结果,使得分类预测容错率提高,提高了分类预测的准确率。

下面继续说明本申请实施例提供的基于分类决策树模型的分类装置555的实施为软件模块的示例性结构,在一些实施例中,参见图14,图14是本申请实施例提供的基于分类决策树模型的分类装置的一个可选的结构示意图。存储在存储器540的基于分类决策树模型的分类装置555中的软件模块可以包括:

获取模块5551,用于获取第二参与方设备发送的分类决策树模型中目标叶子节点的标识;

其中,所述分类决策树模型包括至少一棵决策树,所述目标叶子节点与待分类数据相匹配,所述标识为基于所述待分类数据遍历所述决策树得到;

评分获取模块5552,用于基于所述目标叶子节点的标识、分类决策树模型中叶子节点的标识和相应分类类别评分的映射关系,得到所述目标叶子节点对应的分类类别的评分;

隐私保护处理模块5553,用于对所述评分进行隐私保护处理,得到相应的扩展评分;

分类模块5554,用于将所述扩展评分发送至第三参与方设备,以使所述第三参与方设备对至少两个第一参与方设备发送的扩展评分进行融合处理,得到所述待分类数据对应的分类结果并返回至所述第一参与方设备;

接收模块5555,用于接收并输出所述待分类数据对应的分类结果。

在一些实施例中,所述隐私保护处理模块5553,还用于当所述目标叶子节点的数量为至少两个时,对至少两个所述目标叶子节点对应的评分进行求和,得到相应的总评分;基于目标叶子节点与分类类别的对应关系,分别对各所述分类类别对应的目标叶子节点的评分进行求和,得到各所述分类类别的类别评分;分别计算各所述分类类别的类别评分与所述总评分的比值,将所述比值作为相应分类类别的评分权重;对所述评分权重进行加密,将加密后的评分权重作为所述扩展评分。

在一些实施例中,所述隐私保护处理模块5553,还用于对所述评分进行模糊处理,将模糊处理后的评分作为所述扩展评分。

在一些实施例中,所述隐私保护处理模块5553,还用于对所述评分进行同态加密,将同态加密后的评分作为所述扩展评分。

在一些实施例中,所述获取模块5551,还用于向第二参与方设备发送数据分类请求,所述数据分类请求携带待分类数据的数据标识;所述数据分类请求,用于所述第二参与方设备基于所述数据标识,获取相应的所述待分类数据,并基于所述待分类数据,遍历分类决策树模型的决策树,得到所述决策树中与所述待分类数据相匹配的目标叶子节点的标识;接收所述第二参与方设备返回的与所述待分类数据相匹配的目标叶子节点的标识。

在一些实施例中,所述分类模块5554,还用于将所述扩展评分发送至第三参与方设备,以使所述第三参与方设备基于扩展评分与分类类别的对应关系,分别对各所述分类类别的扩展评分进行求和,得到相应的分类类别的类别扩展评分,并选取类别扩展评分最大的分类类别作为所述待分类数据对应的分类结果并返回至所述第一参与方设备。

在一些实施例中,所述基于分类决策树模型的分类装置,还包括:模型训练模块,用于通过所述分类决策树模型,对第二参与方设备中样本数据的分类类别进行预测,得到预测分类结果;获取所述样本数据所对应的分类标签,所述分类标签指示所述样本数据所归属的分类类别;基于所述预测分类结果与所述分类标签的误差,确定所述分类决策树模型的梯度信息,所述梯度信息,用于更新所述分类决策树模型。

在一些实施例中,所述模型训练模块,还用于获取第二参与方设备发送的分类决策树模型中样本叶子节点的标识;其中,所述样本叶子节点为,所述分类决策树模型的决策树中与样本数据相匹配的叶子节点;基于所述样本叶子节点的标识、分类决策树模型中叶子节点的标识和相应分类类别评分的映射关系,得到所述样本叶子节点对应的分类类别的样本评分;对所述样本评分进行隐私保护处理,得到相应的样本扩展评分;将所述样本扩展评分发送至第三参与方设备,以使所述第三参与方设备对至少两个第一参与方设备发送的样本扩展评分进行融合处理,得到所述样本数据对应的预测分类结果并返回至所述第一参与方设备。

在一些实施例中,所述模型训练模块,还用于对所述梯度信息进行同态加密,得到相应的加密梯度信息;将所述加密梯度信息发送至所述第二参与方设备,以使所述第二参与方设备基于所述加密梯度信息,确定针对所述分类决策树模型中待分裂节点的分裂点与加密增益值的对应关系并返回至所述第一参与方设备;其中,所述分裂点基于与所述待分裂节点对应的样本数据所确定;基于所述分裂点与加密增益值的对应关系,确定所述待分裂节点的目标分裂点;基于所述目标分裂点,分裂所述待分裂节点,以更新所述分类决策树模型。

下面继续说明本申请实施例提供的基于分类决策树模型的分类装置实施为软件模块的示例性结构,参见图15,图15是本申请实施例提供的基于分类决策树模型的分类装置的一个可选的结构示意图,如图15所示,本申请实施例提供的基于分类决策树模型的分类装置15包括:

获取模块151,用于获取待分类数据;

遍历模块152,用于遍历分类决策树模型中的决策树,得到所述决策树中与所述待分类数据相匹配的目标叶子节点的标识;

发送模块153,用于分别将所述目标叶子节点的标识发送至至少两个第一参与方设备;

所述目标叶子节点的标识,用于所述第一参与方设备基于所述目标叶子节点的标识、分类决策树模型中叶子节点的标识和相应分类类别评分的映射关系,得到所述目标叶子节点对应的分类类别的评分,并对所述评分进行隐私保护处理,将隐私保护处理后得到的扩展评分发送至第三参与方设备,以使所述第三参与方设备对至少两个第一参与方设备发送的扩展评分进行融合处理,得到所述待分类数据对应的分类结果。

在一些实施例中,所述基于分类决策树模型的分类装置,还包括:模型训练模块,用于获取所述第一参与方设备发送的加密梯度信息;其中,所述加密梯度信息为所述第一参与方设备基于预测分类结果与分类标签的误差所确定,所述预测分类结果为通过所述分类决策树模型,对第二参与方设备中样本数据的分类类别进行预测得到,所述分类标签指示所述样本数据所归属的分类类别;基于所述加密梯度信息,确定针对所述分类决策树模型中待分裂节点的分裂点与加密增益值的对应关系;其中,所述分裂点与加密增益值的对应关系,用于确定所述待分裂节点的目标分裂点,所述目标分裂点,用于分裂所述待分裂节点,以更新所述分类决策树模型。

需要说明的是,本申请实施例装置的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果,因此不做赘述。

本申请实施例提供了一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现本申请实施例提供的基于分类决策树模型的分类方法。

本申请实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的方法,例如,如图3示出的基于分类决策树模型的分类方法。

在一些实施例中,计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。

在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。

作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(HTML,Hyper TextMarkup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。

作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。

综上所述,通过本申请实施例能够提高分类预测的准确率。

以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。

相关技术
  • 基于分类决策树模型的分类方法、装置及电子设备
  • 一种基于多变量决策树模型的分布式大数据分类方法
技术分类

06120112707000