CN110569659B - 数据处理方法、装置和电子设备 - Google Patents

数据处理方法、装置和电子设备 Download PDF

Info

Publication number
CN110569659B
CN110569659B CN201910583556.0A CN201910583556A CN110569659B CN 110569659 B CN110569659 B CN 110569659B CN 201910583556 A CN201910583556 A CN 201910583556A CN 110569659 B CN110569659 B CN 110569659B
Authority
CN
China
Prior art keywords
data
node
leaf
splitting
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910583556.0A
Other languages
English (en)
Other versions
CN110569659A (zh
Inventor
李漓春
张晋升
王华忠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced New Technologies Co Ltd
Advantageous New Technologies Co Ltd
Original Assignee
Advanced New Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Advanced New Technologies Co Ltd filed Critical Advanced New Technologies Co Ltd
Priority to CN201910583556.0A priority Critical patent/CN110569659B/zh
Publication of CN110569659A publication Critical patent/CN110569659A/zh
Priority to PCT/CN2020/071586 priority patent/WO2021000573A1/zh
Priority to US16/779,285 priority patent/US20200167662A1/en
Priority to TW109104356A priority patent/TWI729697B/zh
Priority to US16/890,850 priority patent/US20200293908A1/en
Application granted granted Critical
Publication of CN110569659B publication Critical patent/CN110569659B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database

Abstract

本说明书实施例提供一种数据处理方法、装置和电子设备。该方法包括:基于业务数据和分裂条件,分析决策森林中的叶子节点被匹配的可能性;若叶子节点的分析结果为有可能被匹配,确定该叶子节点对应的第一数据选择值;以第一数据选择值为输入与模型方进行不经意传输,得到第一数据作为目标数据,所述目标数据用于确定决策森林的预测结果。

Description

数据处理方法、装置和电子设备
技术领域
本说明书实施例涉及计算机技术领域,特别涉及一种数据处理方法、装置和电子设备。
背景技术
在业务实际中,通常一方拥有需要保密的模型和全体业务数据中的一部分业务数据(以下称为模型方),另一方拥有需要保密的全体业务数据中的另一部分业务数据(以下称为数据方)。如何在模型方不泄漏自身的模型和业务数据、且数据方也不泄漏自身的业务数据的条件下,使得模型方和/或数据方获得基于所述模型对全体业务数据进行预测后的预测结果,是当前亟需解决的技术问题。
发明内容
本说明书实施例的目的是提供一种数据处理方法、装置和电子设备,以便于在模型方不泄漏自身的模型和业务数据、且数据方也不泄漏自身的业务数据的条件下,由模型方和/或数据方获得基于所述模型对全体业务数据进行预测后的预测结果。
为实现上述目的,本说明书中一个或多个实施例提供的技术方案如下。
根据本说明书一个或多个实施例的第一方面,提供了一种数据处理方法,应用于模型方,包括:从决策森林中选取与数据方持有的业务数据相关联的分裂节点作为目标分裂节点,所述决策森林包括至少一个决策树,所述决策树包括至少一个分裂节点和至少两个叶子节点;向数据方发送所述目标分裂节点的分裂条件,保留其它分裂节点的分裂条件以及叶子节点的叶子值。
根据本说明书一个或多个实施例的第二方面,提供了一种数据处理装置,设置于模型方,包括:选取单元,用于从决策森林中选取与数据方持有的业务数据相关联的分裂节点作为目标分裂节点,所述决策森林包括至少一个决策树,所述决策树包括至少一个分裂节点和至少两个叶子节点;发送单元,用于向数据方发送所述目标分裂节点的分裂条件,保留其它分裂节点的分裂条件以及叶子节点的叶子值。
根据本说明书一个或多个实施例的第三方面,提供了一种电子设备,包括:存储器,用于存储计算机指令;处理器,用于执行所述计算机指令以实现如第一方面所述的方法步骤
根据本说明书一个或多个实施例的第四方面,提供了一种数据处理方法,应用于模型方,所述模型方持有业务数据,该方法包括:基于所述业务数据,分析决策森林中的叶子节点被匹配的可能性,所述决策森林包括至少一个决策树,所述决策树包括至少一个分裂节点和至少两个叶子节点;若叶子节点的分析结果为有可能被匹配,确定该叶子节点对应的第一数据集合,所述第一数据集合包括随机数和叶子值密文;以第一数据集合为输入与数据方进行不经意传输。
根据本说明书一个或多个实施例的第五方面,提供了一种数据处理装置,设置于模型方,所述模型方持有业务数据,该装置包括:分析单元,用于基于所述业务数据,分析决策森林中的叶子节点被匹配的可能性,所述决策森林包括至少一个决策树,所述决策树包括至少一个分裂节点和至少两个叶子节点;确定单元,用于若叶子节点的分析结果为有可能被匹配,确定该叶子节点对应的第一数据集合,所述第一数据集合包括随机数和叶子值密文;传输单元,用于以第一数据集合为输入与数据方进行不经意传输。
根据本说明书一个或多个实施例的第六方面,提供了一种电子设备,包括:存储器,用于存储计算机指令;处理器,用于执行所述计算机指令以实现如第四方面所述的方法步骤。
根据本说明书一个或多个实施例的第七方面,提供了一种数据处理方法,应用于数据方,所述数据方持有业务数据和决策森林中与所述业务数据相关联的分裂节点的分裂条件,所述决策森林包括至少一个决策树,所述决策树包括至少一个分裂节点和至少两个叶子节点;该方法包括:基于所述业务数据和所述分裂条件,分析决策森林中的叶子节点被匹配的可能性;若叶子节点的分析结果为有可能被匹配,确定该叶子节点对应的第一数据选择值;以第一数据选择值为输入与模型方进行不经意传输,得到第一数据作为目标数据,所述目标数据用于确定决策森林的预测结果。
根据本说明书一个或多个实施例的第八方面,提供了一种数据处理装置,设置于数据方,所述数据方持有业务数据和目标分裂节点的分裂条件,所述目标分裂节点为决策森林中与所述业务数据相关联的分裂节点,所述决策森林包括至少一个决策树,所述决策树包括至少一个分裂节点和至少两个叶子节点;该装置包括:分析单元,用于基于所述业务数据和所述分裂条件,分析决策森林中的叶子节点被匹配的可能性;确定单元,用于若叶子节点的分析结果为有可能被匹配,确定该叶子节点对应的第一数据选择值;传输单元,用于以第一数据选择值为输入与模型方进行不经意传输,得到第一数据作为目标数据,所述目标数据用于确定决策森林的预测结果。
根据本说明书一个或多个实施例的第九方面,提供了一种电子设备,包括:存储器,用于存储计算机指令;处理器,用于执行所述计算机指令以实现如第七方面所述的方法步骤。
由以上本说明书实施例提供的技术方案可见,本实施例的数据处理方法,通过向数据方发送目标分裂节点的分裂条件,保留其它分裂节点的分裂条件以及叶子节点的叶子值,利用不经意传输,可以实现在模型方不泄漏自身的决策森林和业务数据、且数据方也不泄漏自身的业务数据的条件下,由数据方获得决策森林的预测结果或精度受限的预测结果;或者,由模型方获得决策森林的预测结果或精度受限的预测结果;又或者,由模型方和/或数据方获得决策森林的预测结果与预设阈值的大小关系。所述目标分裂节点为决策森林中与所述业务数据相关联的分裂节点。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书实施例一种决策树的结构示意图;
图2为本说明书实施例一种数据处理方法的流程图;
图3为本说明书实施例一种数据处理方法的流程图;
图4为本说明书实施例一种数据处理方法的流程图;
图5为本说明书实施例一种数据处理方法的流程图;
图6为本说明书实施例一种数据处理装置的功能结构示意图;
图7为本说明书实施例一种数据处理装置的功能结构示意图;
图8为本说明书实施例一种数据处理装置的功能结构示意图;
图9为本说明书实施例一种电子设备的功能结构示意图。
具体实施方式
下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。此外,应当理解,尽管在本说明书可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。
不经意传输(Oblivious Transfer,OT),又称为茫然传输,是一种可以保护隐私的双方通信协议,能够使通信双方以一种选择模糊化的方式传递数据。发送方可以具有多个数据。经由不经意传输接收方能够获得所述多个数据中的一个或多个数据。在此过程中,发送方不知晓接收方接收的是哪些数据;而接收方不能够获得其所接收数据之外的其它任何数据。
决策树:一种有监督的机器学习模型。所述决策树可以包括二叉树等。所述决策树可以包括多个节点。每个节点可以对应有位置信息,所述位置信息用于表示节点在决策树中的位置,例如可以为节点的编号等。所述多个节点能够形成多个预测路径。所述预测路径的起始节点为所述决策树的根节点,终止节点为所述决策树的叶子节点。
所述决策树可以包括回归决策树和分类决策树等。所述回归决策树的预测结果可以为一个具体的数值。所述分类决策树的预测结果可以为一个具体的类别。值得说明的是,为了便于分析计算,通常可以采用向量来表示类别。例如,向量[1 0 0]可以表示类别A,向量[0 1 0]可以表示类别B,向量[0 0 1]可以表示类别C。当然,此处的向量仅为示例,在实际应用中还可以采用其它的数学方式来表示类别。
分裂节点:当决策树中的一个节点能够向下分裂时,可以将该节点称为分裂节点。所述分裂节点可以包括根节点、以及除叶子节点和根节点以外的其它节点。所述分裂节点对应有分裂条件和数据类型,所述分裂条件可以用于选择预测路径,所述数据类型用于表示分裂条件针对的是哪些类型的数据。
叶子节点:当决策树中的一个节点不能够向下分裂时,可以将该节点称为叶子节点。所述叶子节点对应有叶子值。不同叶子节点对应的叶子值可以相同或不同。每个叶子值可以表示一种预测结果。所述叶子值可以为数值或向量等。例如,回归决策树的叶子节点对应的叶子值可以为数值,分类决策树的叶子节点对应的叶子值可以为向量。
为了更好地对以上术语进行理解,以下介绍一个场景示例。
请参阅图1。在本场景示例中,决策树Tree1可以包括节点1、2、3、4和5。节点1、2、3、4和5的位置信息分别为1、2、3、4和5。其中,节点1为根节点,节点1、2和3为分裂节点,节点3、4和5为叶子节点。节点1、2和4可以形成一个预测路径,节点1、2和5可以形成另一个预测路径,节点1和3可以形成另一个预测路径。
分裂节点1、2和3对应的分裂条件和数据类型可以如下表1所示。
表1
分裂节点 分裂条件 数据类型
1 年龄大于20岁 年龄
2 年收入大于5万 收入
叶子节点3、4和5对应的叶子值可以如下表2所示。
表2
叶子节点 叶子值
3 200
4 700
5 500
在决策树Tree1中,分裂条件“年龄大于20岁”、“年收入大于5万”可以用于选择预测路径。当满足分裂条件时,可以选择左边的预测路径;当不满足分裂条件时,可以选择右边的预测路径。具体地,针对节点1,当满足分裂条件“年龄大于20岁”时,可以选择左边的预测路径,进而跳转到节点2;当不满足分裂条件“年龄大于20岁”时,可以选择右边的预测路径,进而跳转到节点3。针对节点2,当满足分裂条件“年收入大于5万”时,可以选择左边的预测路径,进而跳转到节点4;当不满足分裂条件“年收入大于5万”时,可以选择右边的预测路径,进而跳转到节点5。
一个或多个决策树可以构成决策森林。所述决策森林可以包括回归决策森林和分类决策森林。所述回归决策森林可以包括一个或多个回归决策树。当回归决策森林包括一个回归决策树时,可以将该回归决策树的预测结果作为该回归决策森林的预测结果。当回归决策森林包括多个回归决策树时,可以对所述多个回归决策树的预测结果进行求和处理,可以将求和结果作为该回归决策森林的预测结果。所述分类决策森林可以包括一个或多个分类决策树。当分类决策森林包括一个分类决策树时,可以将该分类决策树的预测结果作为该分类决策森林的预测结果。当分类决策森林包括多个分类决策树时,可以对所述多个分类决策树的预测结果进行统计,可以将统计结果作为该分类决策森林的预测结果。值得说明的是,在一些场景下,分类决策树的预测结果可以表示为向量,所述向量可以用于表示类别。如此,可以对分类决策森林中多个分类决策树预测出的向量进行求和处理,可以将求和结果作为分类决策森林的预测结果。例如,某一分类决策森林可以包括分类决策树Tree2、Tree3、Tree4。分类决策树Tree2的预测结果可以表示为向量[1 0 0],向量[1 0 0]表示类别A。分类决策树Tree3的预测结果可以表示为向量[0 1 0],向量[0 1 0]表示类别B。分类决策树Tree4的预测结果可以表示为向量[1 0 0],向量[0 0 1]表示类别C。那么,可以对向量[1 0 0]、[0 1 0]和[1 0 0]进行求和处理,得到向量[2 1 0]作为分类决策森林的预测结果。向量[2 1 0]表示在分类决策森林中预测结果为类别A的次数为2次、预测结果为类别B的次数为1次,预测结果为类别C的次数为0次。
本说明书提供数据处理系统的一个实施例。
所述数据处理系统可以包括模型方和数据方。模型方和数据方可以分别为服务器、手机、平板电脑、或个人电脑等设备;或者,也可以分别为由多台设备组成的系统,例如由多个服务器组成的服务器集群。模型方持有需要保密的决策森林和全体业务数据中的一部分业务数据,数据方持有需要保密的全体业务数据中的另一部分业务数据。例如,模型方持有交易业务数据,数据方持有借贷业务数据。模型方和数据方可以进行协作计算,以便于模型方和/或数据方获得基于所述决策森林对全体业务数据进行预测后的预测结果。在此过程中,模型方不能够泄漏自身的决策森林和业务数据,数据方也不能够泄漏自身的业务数据。
请参阅图2。基于前面的数据处理系统实施例,本说明书提供数据处理方法的一个实施例。该实施例应用于预处理阶段。该实施例以模型方为执行主体,可以包括以下步骤。
步骤S10:从决策森林中选取与数据方持有的业务数据相关联的分裂节点作为目标分裂节点,所述决策森林包括至少一个决策树,所述决策树包括至少一个分裂节点和至少两个叶子节点。
在一些实施例中,分裂节点与数据方持有的业务数据相关联可以理解为:分裂节点对应的数据类型与数据方持有业务数据的数据类型相同。模型方可以预先获得数据方持有业务数据的数据类型。如此模型方可以从决策森林中选取对应的数据类型与数据方持有的业务数据的数据类型相同的分裂节点作为目标分裂节点。所述目标分裂节点数量可以为一个或多个。
步骤S12:保留除所述目标分裂节点以外其它分裂节点的分裂条件以及叶子节点的叶子值,向数据方发送所述目标分裂节点的分裂条件。
在一些实施例中,模型方可以向数据方发送所述目标分裂节点的分裂条件,但不发送除所述目标分裂节点以外其它分裂节点的分裂条件以及叶子节点的叶子值。数据方可以接收目标分裂节点的分裂条件,但无法获得除所述目标分裂节点以外其它分裂节点的分裂条件以及叶子节点的叶子值,实现了对决策森林的隐私保护。
在一些实施例中,模型方还可以向数据方发送决策森林中分裂节点的位置信息和叶子节点的位置信息。数据方可以接收决策森林中分裂节点的位置信息和叶子节点的位置信息;可以基于决策森林中分裂节点的位置信息和叶子节点的位置信息,重构决策森林中决策树的拓扑结构。决策树的拓扑结构可以包括决策树中分裂节点和叶子节点的连接关系。
本实施例的数据处理方法,模型方可以从决策森林中选取与数据方持有的业务数据相关联的分裂节点作为目标分裂节点,可以保留除所述目标分裂节点以外其它分裂节点的分裂条件以及叶子节点的叶子值,向数据方发送所述目标分裂节点的分裂条件。这样一方面,实现了对决策森林的隐私保护。另一方面,便于利用决策森林对全体业务数据进行预测。
请参阅图3。基于前面的数据处理系统实施例,本说明书提供数据处理方法的另一个实施例。该实施例应用于预测阶段,可以包括以下步骤。
步骤S20:模型方基于持有的业务数据,分析决策森林中的叶子节点被匹配的可能性。
在一些实施例中,所述决策森林可以包括至少一个决策树,所述决策树可以包括至少一个分裂节点和至少两个叶子节点。模型方可以确定决策森林中的每个分裂节点是否与自身持有的业务数据相关联;若是,可以将该分裂节点作为第一类分裂节点;若否,可以将该分裂节点作为第二类分裂节点。这里分裂节点与模型方持有的业务数据相关联可以理解为:分裂节点对应的数据类型与模型方持有业务数据的数据类型相同。
在一些实施例中,在决策树中每个叶子节点的叶子值可以表示一种预测结果。若决策树的一个叶子节点被匹配,便可以将该叶子节点的叶子值作为该决策树的预测结果。
决策森林中每个决策树的节点能够形成多个预测路径,每个预测路径可以包括至少一个分裂节点和一个叶子节点。如此模型方可以基于自身持有的业务数据和预测路径中分裂节点的分裂条件,确定该预测路径中的叶子节点被匹配的可能性。叶子节点被匹配的可能性可以包括:有可能被匹配、不可能被匹配。值得说明的是,决策树中至少包括一个在模型方的分析结果为有可能被匹配的叶子节点。具体分为以下两种情况:情况1),决策树中的所有叶子节点在模型方的分析结果均为有可能被匹配;情况2),决策树中的一部分叶子节点在模型方的分析结果为有可能被匹配,另一部分叶子节点在模型方的分析结果为不可能被匹配。
在实际应用中,若一个预测路径中的所有分裂节点均为第一类分裂节点、并且模型方持有的业务数据不满足该预测路径中一个或多个分裂节点的分裂条件,模型方可以确定该预测路径中叶子节点被匹配的可能性为不可能被匹配;否则,模型方可以确定该预测路径中叶子节点被匹配的可能性为有可能被匹配。
所述有可能被匹配可以进一步包括:会被匹配、不确定。
在实际应用中,进一步地,若一个预测路径中的所有分裂节点均为第一类分裂节点,模型方可以确定自身持有的业务数据是否满足该预测路径中所有分裂节点的分裂条件;若是,可以确定该预测路径中叶子节点被匹配的可能性为会被匹配;若否,可以确定该预测路径中叶子节点被匹配的可能性为不可能被匹配。另外,若一个预测路径中的所有分裂节点均为第二类分裂节点,或者,一部分分裂节点为第一类分裂节点,另一部分分裂节点为第二类分裂节点,模型方可以确定该预测路径中叶子节点被匹配的可能性为不确定。
步骤S22:若叶子节点的分析结果为有可能被匹配,模型方确定该叶子节点对应的第一数据集合。
在一些实施例中,模型方可以为决策森林中的每个叶子节点生成随机数。决策森林中各个叶子节点的随机数之和可以为特定数值。所述特定数值可以为一个完全随机数,例如随机数r。或者,所述特定数值也可以为固定数值0。例如,所述决策森林可以包括k个叶子节点。模型方可以为k-1个叶子节点分别依次生成k-1个随机数r1、r2、…、ri、…、rk-1;可以计算rk=0-(r1+r2+…+ri+…+rk-1)作为第k个叶子节点的随机数。或者,所述特定数值还可以为一个预设噪声数据(以下称为第一噪声数据)。例如,所述决策森林可以包括k个叶子节点。模型方可以为k-1个叶子节点分别依次生成k-1个随机数r1、r2、…、ri、…、rk-1;可以计算rk=s1-(r1+r2+…+ri+…+rk-1)作为第k个叶子节点的随机数。s1表示所述第一噪声数据。
在一些实施例中,第一数据集合可以包括叶子值密文和随机数。第一数据集合中的数据可以具有一定的顺序。例如,叶子值密文可以为第一数据集合中的第一个数据,随机数可以为第一数据集合中的第二个数据。当然根据实际需要,随机数也可以为第一数据集合中的第一个数据,叶子值密文也可以为第一数据集合中的第二个数据。
针对决策森林中的叶子节点,若该叶子节点的分析结果为有可能被匹配,模型方可以将该叶子节点的随机数作为第一数据集合中的随机数,可以对该叶子节点的叶子值进行加密,可以将加密得到的叶子值密文作为第一数据集合中的叶子值密文。模型方具体可以利用叶子节点的随机数对该叶子节点的叶子值进行加密。至于采用哪种方式进行加密,本实施例并不做具体限定。例如,可以将随机数与叶子值相加。
步骤S24:数据方基于持有的业务数据,分析决策森林中的叶子节点被匹配的可能性。
在一些实施例中,在决策森林中一个分裂节点要么与模型方持有的业务数据相关联,要么与数据方持有的业务数据相关联。如此数据方可以确定决策森林中的分裂节点是否与自身持有的业务数据相关联;若是,可以将该分裂节点作为第二类分裂节点;若否,可以将该分裂节点作为第一类分裂节点。这里分裂节点与数据方持有的业务数据相关联可以理解为:分裂节点对应的数据类型与数据方持有业务数据的数据类型相同。在实际应用中,鉴于数据方持有与自身业务数据相关联的分裂节点的分裂条件,而不持有其它分裂节点的分裂条件,因此数据方可以直接将对应有分裂条件的分裂节点作为第二类分裂节点,可以将没有对应分裂条件的分裂节点作为第一类分裂节点。
在一些实施例中,如前面所述,决策森林中每个决策树的节点能够形成多个预测路径,每个预测路径可以包括至少一个分裂节点和一个叶子节点。如此数据方可以基于自身持有的业务数据和预测路径中分裂节点的分裂条件,确定该预测路径中叶子节点被匹配的可能性。叶子节点被匹配的可能性可以包括有可能被匹配、不可能被匹配。值得说明的是,决策树中至少包括一个在数据方的分析结果为有可能被匹配的叶子节点。具体分为两种情况:情况1),决策树中的所有叶子节点在数据方的分析结果均为有可能被匹配;情况2),决策树中的一部分叶子节点在数据方的分析结果为有可能被匹配,另一部分叶子节点在数据方的分析结果为不可能被匹配。还需要说明的是,若一个叶子节点在模型方的分析结果和在数据方的分析结果均为有可能被匹配,那么便可以确定该叶子节点与全体业务数据相匹配;否则,便可以确定该叶子节点与全体业务数据不匹配。
在实际应用中,若一个预测路径中的所有分裂节点均为第二类分裂节点,并且数据方持有的业务数据不满足该预测路径中一个或多个分裂节点的分裂条件,数据方可以确定该预测路径中叶子节点被匹配的可能性为不可能被匹配;否则,数据方可以确定该预测路径中叶子节点被匹配的可能性为有可能被匹配。
所述有可能被匹配可以进一步包括:会被匹配、不确定。
在实际应用中,进一步地,若一个预测路径中的所有分裂节点均为第二类分裂节点,数据方可以确定自身持有的业务数据是否满足该预测路径中所有分裂节点的分裂条件;若是,可以确定该预测路径中叶子节点被匹配的可能性为会被匹配;若否,可以确定该预测路径中叶子节点被匹配的可能性为不可能被匹配。另外,若一个预测路径中的所有分裂节点均为第一类分裂节点,或者,一部分分裂节点为第二类分裂节点,另一部分分裂节点为第一类分裂节点,数据方可以确定该预测路径中叶子节点被匹配的可能性为不确定。
步骤S26:若叶子节点的分析结果为有可能被匹配,数据方确定该叶子节点对应的第一数据选择值。
在一些实施例中,数据选择值作为数据方在不经意传输过程中的输入,可以用于从模型方在不经意传输过程中输入的数据集合中选择目标数据。数据选择值可以包括第一数据选择值和第二数据选择值。所述第一数据选择值可以用于从数据集合中选择第一个数据作为目标数据,所述第二数据选择值可以用于从数据集合中选择第二个数据作为目标数据。当然根据实际需要,所述第一数据选择值也可以用于从数据集合中选择第二个数据作为目标数据,所述第二数据选择值也可以用于从数据集合中选择第一个数据作为目标数据。例如,所述第一数据选择值可以为数值1,所述第二数据选择值可以为数值2。
在一些实施例中,针对决策森林中的叶子节点,若该叶子节点的分析结果为有可能被匹配,数据方可以确定第一数据选择值为该叶子节点对应的数据选择值;若该叶子节点的分析结果为不可能被匹配,数据方可以确定第二数据选择值为该叶子节点对应的数据选择值。
步骤S28:针对决策森林中的叶子节点,若该叶子节点在模型方的分析结果为有可能被匹配,模型方以该叶子节点对应的第一数据集合作为输入;若该叶子节点在数据方的分析结果为有可能被匹配,数据方以该叶子节点对应的第一数据选择值为输入;二者进行不经意传输。数据方从第一数据集合中选择目标数据。
在一些实施例中,针对决策森林中的叶子节点,若该叶子节点在模型方的分析结果为有可能被匹配,模型方可以以该叶子节点对应的第一数据集合作为输入;若该叶子节点在数据方的分析结果为有可能被匹配,数据方可以以该叶子节点对应的第一数据选择值为输入,或者,若该叶子节点在数据方的分析结果为不可能被匹配,数据方可以以该叶子节点对应的第二数据选择值为输入;二者进行不经意传输。数据方可以从第一数据集合中选择目标数据。这样便实现若一个叶子节点在模型方的分析结果和在数据方的分析结果均为有可能被匹配,数据方从第一数据集合中选择叶子值密文作为目标数据;否则,数据方从第一数据集合中选择随机数作为目标数据。根据不经意传输的特性,模型方并不知晓数据方具体选择哪个数据作为目标数据,数据方也不能够知晓除了所选择的目标数据以外的其它数据。
在一些实施例中,针对决策森林中的叶子节点,若该叶子节点的分析结果为不可能被匹配,模型方可以确定该叶子节点对应的第二数据集合。所述第二数据集合可以包括两个相同的随机数。模型方具体可以将叶子节点的随机数作为第二数据集合中的随机数。
针对决策森林中的叶子节点,若该叶子节点在模型方的分析结果为不可能被匹配,模型方可以以该叶子节点对应的第二数据集合作为输入;若该叶子节点在数据方的分析结果为有可能被匹配,数据方可以以该叶子节点对应的第一数据选择值为输入,或者,若该叶子节点在数据方的分析结果为不可能被匹配,数据方可以以该叶子节点对应的第二数据选择值为输入;二者进行不经意传输。数据方可以从第二数据集合中选择目标数据。鉴于第二数据集合中包括的是两个相同的随机数,这样便实现若一个叶子节点在模型方的分析结果和在数据方的分析结果中的一个或全部为不可能被匹配,数据方从第二数据集合中选择随机数作为目标数据。根据不经意传输的特性,模型方并不知晓数据方具体选择哪个数据作为目标数据,数据方也不能够知晓除了所选择的目标数据以外的其它数据。
在一些实施例中,叶子节点有可能被匹配可以进一步包括:会被匹配、不确定。如此在步骤S22中,针对决策森林中的叶子节点,若该叶子节点在模型方的分析结果为不确定,模型方可以确定该叶子节点对应的第一数据集合;若该叶子节点在模型方的分析结果为会被匹配,模型方可以对该叶子节点的叶子值进行加密,得到叶子值密文;若该叶子节点在模型方的分析结果为不可能被匹配,模型方可以确定该叶子节点对应的随机数。模型方具体可以利用叶子节点的随机数对该叶子节点的叶子值进行加密。至于采用哪种方式进行加密,本实施例并不做具体限定。例如,可以将随机数与叶子值相加。另外,模型方还可以将为叶子节点生成的随机数作为该叶子节点对应的随机数。
在步骤S28中,针对决策森林中的叶子节点,若该叶子节点在模型方的分析结果为不确定,模型方可以以该叶子节点对应的第一数据集合作为输入;若该叶子节点在数据方的分析结果为有可能被匹配,数据方可以以该叶子节点对应的第一数据选择值为输入,或者,若该叶子节点在数据方的分析结果为不可能被匹配,数据方可以以该叶子节点对应的第二数据选择值为输入;二者进行不经意传输。数据方可以从第一数据集合中选择目标数据。另外,若该叶子节点在模型方的分析结果为会被匹配,模型方可以直接向数据方发送该叶子节点的叶子值密文,数据方可以接收叶子值密文作为目标数据;若该叶子节点在模型方的分析结果为不可能被匹配,模型方可以直接向数据方发送该叶子节点对应的随机数,数据方可以接收随机数作为目标数据。
这样可以减少不经意传输的次数,提高预测效率。
在一些实施例中,一些情况下,模型方可以从决策森林中选取所有分裂节点均与自身的业务数据相关联的决策树作为目标决策树。鉴于所述目标决策树的所有分裂节点均与模型方持有的业务数据相关联,如此模型方可以利用所述目标决策树对自身持有的业务数据进行预测,得到所述目标决策树的预测结果;可以对所述目标决策树的预测结果进行加密,可以向数据方发送加密得到的预测结果密文。数据方可以接收预测结果密文作为目标数据。目标决策树的预测结果可以包括目标决策树中被匹配的叶子节点的叶子值,目标决策树的预测结果密文可以包括对叶子值进行加密得到的叶子值密文。模型方具体可以利用叶子节点的随机数对该叶子节点的叶子值进行加密。至于采用哪种方式进行加密,本实施例并不做具体限定。例如,模型方可以将随机数与叶子值相加。
这样可以减少不经意传输的次数,提高预测效率。
在一些实施例中,目标数据可以用于确定决策森林的预测结果。
在一些实施方式中,可以由数据方获得决策森林的预测结果或混合了第一噪声数据的预测结果(一种精度受限的预测结果)。这里预测结果混合第一噪声数据可以理解为:预测结果与第一噪声数据相加。
数据方可以将各个目标数据相加,得到决策森林的预测结果或混合了第一噪声数据的预测结果。如前面所述,模型方可以为决策森林中的每个叶子节点生成随机数。决策森林中各个叶子节点的随机数之和可以为特定数值。如此在所述特定数据为固定数值0时,数据方通过将各个目标数据相加,可以获得决策森林的预测结果。在所述特定数据为第一噪声数据时,数据方通过将各个目标数据相加,可以获得决策森林的混合了第一噪声数据的预测结果。
在一些实施方式中,可以由模型方获得决策森林的预测结果或混合了第二噪声数据的预测结果(另一种精度受限的预测结果)。所述第二噪声数据的大小可以根据实际需要灵活设定,通常小于全体业务数据。这里预测结果混合第二噪声数据可以理解为:预测结果与第二噪声数据相加。
数据方可以将各个目标数据相加,得到第一相加结果;可以向模型方发送第一相加结果。模型方可以接收第一相加结果;可以基于第一相加结果计算得到决策森林的预测结果。如前面所述,模型方可以为决策森林中的每个叶子节点生成随机数。决策森林中各个叶子节点的随机数之和可以为特定数值。如此在所述特定数据为一个完全的随机数r时,由于模型方知晓随机数r,从而可以基于第一相加结果u+r,计算决策森林的预测结果u。
或者,数据方可以将各个目标数据相加,得到第一相加结果;可以将第一相加结果与第二噪声数据相加,得到第二相加结果;可以向模型方发送第二相加结果。模型方可以接收第二相加结果;可以基于第二相加结果计算得到决策森林的混合了第二噪声数据的预测结果。如前面所述,模型方可以为决策森林中的每个叶子节点生成随机数。决策森林中各个叶子节点的随机数之和可以为特定数值。如此在所述特定数据为一个完全的随机数r时,数据方可以将第一相加结果u+r与第二噪声数据s2相加,得到第二相加结果u+r+s2。由于模型方知晓随机数r,从而可以基于第二相加结果u+r+s2,计算决策森林的混合了第二噪声数据的预测结果u+s2。
在一些实施方式中,可以由模型方和/或数据方获得决策森林的预测结果与预设阈值的大小关系。所述预设阈值的大小可以根据实际需要灵活设定。在实际应用中,所述预设阈值可以为一个临界值。在预测结果大于所述预设阈值时,可以执行一种预置操作;在预测结果小于所述预设阈值时,可以执行另一种预置操作。例如,所述预设阈值可以为风险评估业务中的一个临界值。决策森林的预测结果可以为用户的信用分值。当某一用户的信用分值大于所述预设阈值时,表示该用户的风险水平较高,可以拒绝执行对该用户进行贷款的操作;当某一用户的信用分值小于所述阈值时,表示该用户的风险水平较低,可以执行对该用户进行贷款的操作。值得说明的是,在本实施方式中模型方和数据方仅知晓决策森林的预测结果与预设阈值的大小关系、以及具体的预设阈值,而无法知晓决策森林的具体预测结果。
如前面所述,模型方可以为决策森林中的每个叶子节点生成随机数。决策森林中各个叶子节点的随机数之和可以为特定数值。所述特定数据可以为一个完全的随机数r。如此数据方可以将各个目标数据相加,得到第一相加结果u+r。数据方可以以第一相加结果u+r为输入,模型方可以以随机数r和预设阈值t为输入,协作执行多方安全比较算法。通过执行多方安全比较算法可以实现:在数据方不泄漏第一相加结果u+r、且模型方不泄漏随机数r的条件下,模型方和/或数据方获得决策森林的预测结果u与预设阈值t的大小关系。值得说明的是,这里可以采用现有的任意多方安全比较算法来实现,具体过程不再做具体的介绍。
本实施例的数据处理方法,通过向数据方发送目标分裂节点的分裂条件,保留其它分裂节点的分裂条件以及叶子节点的叶子值,利用不经意传输,可以实现在模型方不泄漏自身的决策森林和业务数据、且数据方也不泄漏自身的业务数据的条件下,由数据方获得决策森林的预测结果或精度受限的预测结果;或者,由模型方获得决策森林的预测结果或精度受限的预测结果;又或者,由模型方和/或数据方获得决策森林的预测结果与预设阈值的大小关系。所述目标分裂节点为决策森林中与所述业务数据相关联的分裂节点。
请参阅图4。基于同样的发明构思,本说明书提供数据处理方法的另一个实施例。该实施例以模型方为执行主体,可以包括以下步骤。
步骤S30:基于持有的业务数据,分析决策森林中的叶子节点被匹配的可能性。
步骤S32:若叶子节点的分析结果为有可能被匹配,确定该叶子节点对应的第一数据集合,所述第一数据集合包括随机数和叶子值密文。
步骤S34:以第一数据集合为输入与数据方进行不经意传输。
步骤S30、步骤S32和步骤S34的具体过程可以参见图2对应的实施例,在此不再赘述。
本实施例的数据处理方法,模型方可以在不泄漏自身持有的决策森林和业务数据的条件下,向数据方传输/发送预测所需数据,以便利用决策森林对全体业务数据进行预测。
请参阅图5。基于同样的发明构思,本说明书提供数据处理方法的另一个实施例。该实施例以数据方为执行主体。所述数据方持有业务数据和目标分裂节点的分裂条件,所述目标分裂节点为决策森林中与所述业务数据相关联的分裂节点,所述决策森林包括至少一个决策树,所述决策树包括至少一个分裂节点和至少两个叶子节点。该实施例可以包括以下步骤。
步骤S40:基于业务数据和分裂条件,分析决策森林中的叶子节点被匹配的可能性。
步骤S42:若叶子节点的分析结果为有可能被匹配,确定该叶子节点对应的第一数据选择值。
步骤S44:以第一数据选择值为输入与模型方进行不经意传输,得到第一数据作为目标数据,所述目标数据用于确定决策森林的预测结果。
在一些实施例中,所述第一数据可以选自叶子值密文和随机数。
在一些实施例中,若叶子节点的分析结果为不可能被匹配,数据方可以确定该叶子节点对应的第二数据选择值;可以以第二数据选择值为输入与模型方进行不经意传输,得到第二数据作为目标数据。所述第二数据可以选自叶子值密文和随机数。
在一些实施例中,数据方还可以接收模型方发来的叶子节点的第三数据作为目标数据。所述第三数据可以选自叶子值密文和随机数。
在一些实施例中,数据方还可以接收模型方发来的决策树的第四数据作为目标数据。所述第四数据可以包括预测结果密文。
在一些实施例中,数据方可以将各个目标数据相加,得到决策森林的预测结果或混合了第一噪声数据的预测结果。
在一些实施例中,数据方可以将各个目标数据相加,得到第一相加结果;可以向模型方发送第一相加结果,以便模型方基于第一相加结果确定决策森林的预测结果;或者,还可以将第一相加结果与第二噪声数据相加,得到第二相加结果,可以向模型方发送第二相加结果,以便模型方基于第二相加结果确定决策森林的混合了第二噪声数据的预测结果。
在一些实施例中,数据方可以将各个目标数据相加,得到第一相加结果;可以以第一相加结果为输入与模型方协作执行多方安全比较算法,以便比较决策森林的预测结果与预设阈值的大小。
本实施例的数据处理方法,数据方可以在不泄漏自身持有的业务数据的条件下,利用模型方传输/发来的预测所需数据,获得决策森林的预测结果或决策森林的精度受限的预测结果,或者,获得决策森林的预测结果与预设阈值的大小关系。
请参阅图6。本说明书还提供一种数据处理装置的实施例。该实施例可以设置于模型方。所述装置可以包括以下单元。
选取单元50,用于从决策森林中选取与数据方持有的业务数据相关联的分裂节点作为目标分裂节点,所述决策森林包括至少一个决策树,所述决策树包括至少一个分裂节点和至少两个叶子节点;
发送单元52,用于保留除所述目标分裂节点以外其它分裂节点的分裂条件以及叶子节点的叶子值,向数据方发送所述目标分裂节点的分裂条件。
请参阅图7。本说明书还提供一种数据处理装置的实施例。该实施例可以设置于模型方。所述模型方持有业务数据。所述装置可以包括以下单元。
分析单元60,用于基于所述业务数据,分析决策森林中的叶子节点被匹配的可能性,所述决策森林包括至少一个决策树,所述决策树包括至少一个分裂节点和至少两个叶子节点;
确定单元62,用于若叶子节点的分析结果为有可能被匹配,确定该叶子节点对应的第一数据集合,所述第一数据集合包括随机数和叶子值密文;
传输单元64,用于以第一数据集合为输入与数据方进行不经意传输。
请参阅图8。本说明书还提供一种数据处理装置的实施例。该实施例可以设置于数据方。所述数据方持有业务数据和目标分裂节点的分裂条件,所述目标分裂节点为决策森林中与所述业务数据相关联的分裂节点。所述决策森林包括至少一个决策树,所述决策树包括至少一个分裂节点和至少两个叶子节点。所述装置可以包括以下单元。
分析单元70,用于基于所述业务数据和所述分裂条件,分析决策森林中的叶子节点被匹配的可能性;
确定单元72,用于若叶子节点的分析结果为有可能被匹配,确定该叶子节点对应的第一数据选择值;
传输单元74,用于以第一数据选择值为输入与模型方进行不经意传输,得到第一数据作为目标数据,所述目标数据用于确定决策森林的预测结果。
下面介绍本说明书电子设备的一个实施例。图9是该实施例中一种电子设备的硬件结构示意图。如图9所示,所述电子设备可以包括一个或多个(图中仅示出一个)处理器、存储器和传输模块。当然,本领域普通技术人员可以理解,图9所示的硬件结构仅为示意,其并不对上述电子设备的硬件结构造成限定。在实际中所述电子设备还可以包括比图9所示更多或者更少的组件单元;或者,具有与图9所示不同的配置。
所述存储器可以包括高速随机存储器;或者,还可以包括非易失性存储器,例如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。当然,所述存储器还可以包括远程设置的网络存储器。所述远程设置的网络存储器可以通过诸如互联网、企业内部网、局域网、移动通信网等网络连接至所述电子设备。所述存储器可以用于存储应用软件的程序指令或模块,例如本说明书图2所对应实施例的程序指令或模块、本说明书图4所对应实施例的程序指令或模块、图5所对应实施例的程序指令或模块。
所述处理器可以按任何适当的方式实现。例如,所述处理器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific IntegratedCircuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式等等。所述处理器可以读取并执行所述存储器中的程序指令或模块。
所述传输模块可以用于经由网络进行数据传输,例如经由诸如互联网、企业内部网、局域网、移动通信网等网络进行数据传输。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其它实施例的不同之处。尤其,对于装置实施例和电子设备实施例而言,由于其基本相似于数据处理方法实施例,所以描述的比较简单,相关之处参见数据处理方法实施例的部分说明即可。
另外,可以理解的是,本领域技术人员在阅读本说明书文件之后,可以无需创造性劳动想到将本说明书列举的部分或全部实施例进行任意组合,这些组合也在本说明书公开和保护的范围内。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片2。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog2。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本说明书可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本说明书各个实施例或者实施例的某些部分所述的方法。
本说明书可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
虽然通过实施例描绘了本说明书,本领域普通技术人员知道,本说明书有许多变形和变化而不脱离本说明书的精神,希望所附的权利要求包括这些变形和变化而不脱离本说明书的精神。

Claims (21)

1.一种数据处理方法,应用于模型方,包括:
从决策森林中选取与数据方持有的业务数据相关联的分裂节点作为目标分裂节点,所述决策森林包括至少一个决策树,所述决策树包括至少一个分裂节点和至少两个叶子节点,所述相关联包括:分裂节点对应的数据类型与数据方持有业务数据的数据类型相同;
保留除所述目标分裂节点以外其它分裂节点的分裂条件以及叶子节点的叶子值,向数据方发送所述目标分裂节点的分裂条件,以使模型方基于自身持有的业务数据,数据方基于所述目标分裂节点的分裂条件和自身持有的业务数据,进行不经意传输;其中,所述进行不经意传输包括:模型方基于自身持有的业务数据,分析决策森林中的叶子节点被匹配的可能性;若叶子节点的分析结果为有可能被匹配,确定该叶子节点对应的第一数据集合;以第一数据集合为输入与数据方进行不经意传输;所述第一数据集合包括随机数和叶子值密文。
2.一种数据处理装置,设置于模型方,包括:
选取单元,用于从决策森林中选取与数据方持有的业务数据相关联的分裂节点作为目标分裂节点,所述决策森林包括至少一个决策树,所述决策树包括至少一个分裂节点和至少两个叶子节点,所述相关联包括:分裂节点对应的数据类型与数据方持有业务数据的数据类型相同;
发送单元,用于保留除所述目标分裂节点以外其它分裂节点的分裂条件以及叶子节点的叶子值,向数据方发送所述目标分裂节点的分裂条件,以使模型方基于自身持有的业务数据,数据方基于所述目标分裂节点的分裂条件和自身持有的业务数据,进行不经意传输;其中,所述进行不经意传输包括:模型方基于自身持有的业务数据,分析决策森林中的叶子节点被匹配的可能性;若叶子节点的分析结果为有可能被匹配,确定该叶子节点对应的第一数据集合;以第一数据集合为输入与数据方进行不经意传输;所述第一数据集合包括随机数和叶子值密文。
3.一种电子设备,包括:
存储器,用于存储计算机指令;
处理器,用于执行所述计算机指令以实现如权利要求1所述的方法步骤。
4.一种数据处理方法,应用于模型方,所述模型方能够保留决策森林中除目标分裂节点以外其它分裂节点的分裂条件以及叶子节点的叶子值,将目标分裂节点的分裂条件发送至数据方,所述目标分裂节点为决策森林中与数据方持有的业务数据相关联的分裂节点,所述决策森林包括至少一个决策树,所述决策树包括至少一个分裂节点和至少两个叶子节点,所述相关联包括:分裂节点对应的数据类型与数据方持有业务数据的数据类型相同;该方法包括:
基于自身持有的业务数据,分析决策森林中的叶子节点被匹配的可能性;
若叶子节点的分析结果为有可能被匹配,确定该叶子节点对应的第一数据集合,所述第一数据集合包括随机数和叶子值密文;
以第一数据集合为输入与数据方进行不经意传输。
5.如权利要求4所述的方法,所述确定该叶子节点对应的第一数据集合,包括:
为决策森林中的各个叶子节点生成随机数,各个叶子节点的随机数之和为预设值;
若叶子节点的分析结果为有可能被匹配,将该叶子节点的随机数作为第一数据集合中的随机数,对该叶子节点的叶子值进行加密,将加密得到的叶子值密文作为第一数据集合中的叶子值密文。
6.如权利要求4所述的方法,还包括:
若叶子节点的分析结果为不可能被匹配,确定该叶子节点对应的第二数据集合,所述第二数据集合包括两个相同的随机数;
以第二数据集合为输入与数据方进行不经意传输。
7.如权利要求6所述的方法,所述确定该叶子节点对应的第二数据集合,包括:
为决策森林中的各个叶子节点生成随机数,各个叶子节点的随机数之和为预设值;
若叶子节点的分析结果为不可能被匹配,将该叶子节点的随机数作为第二数据集合中的随机数。
8.如权利要求4所述的方法,所述确定该叶子节点对应的第一数据集合,包括:
若叶子节点的分析结果为不确定,确定该叶子节点对应的第一数据集合;
相应地,所述方法还包括:
若叶子节点的分析结果为会被匹配,对该叶子节点的叶子值进行加密,向数据方发送加密得到的叶子值密文;
若叶子节点的分析结果为不可能被匹配,确定该叶子节点对应的随机数,向数据方发送确定的随机数。
9.如权利要求4所述的方法,还包括:
从决策森林中选取所有分裂节点均与所述业务数据相关联的决策树作为目标决策树;
利用所述目标决策树对所述业务数据进行预测,得到所述目标决策树的预测结果;
对所述目标决策树的预测结果进行加密,向数据方发送加密得到的预测结果密文;
相应地,所述分析决策森林中的叶子节点被匹配的可能性,包括:
分析决策森林中除所述目标决策树以外其它决策树的叶子节点被匹配的可能性。
10.一种数据处理装置,设置于模型方,所述模型方能够保留决策森林中除目标分裂节点以外其它分裂节点的分裂条件以及叶子节点的叶子值,将目标分裂节点的分裂条件发送至数据方,所述目标分裂节点为决策森林中与数据方持有的业务数据相关联的分裂节点,所述决策森林包括至少一个决策树,所述决策树包括至少一个分裂节点和至少两个叶子节点,所述相关联包括:分裂节点对应的数据类型与数据方持有业务数据的数据类型相同;该装置包括:
分析单元,用于基于自身持有的业务数据,分析决策森林中的叶子节点被匹配的可能性;
确定单元,用于若叶子节点的分析结果为有可能被匹配,确定该叶子节点对应的第一数据集合,所述第一数据集合包括随机数和叶子值密文;
传输单元,用于以第一数据集合为输入与数据方进行不经意传输。
11.一种电子设备,包括:
存储器,用于存储计算机指令;
处理器,用于执行所述计算机指令以实现如权利要求4-9中任一项所述的方法步骤。
12.一种数据处理方法,应用于数据方,所述数据方持有业务数据和目标分裂节点的分裂条件,其中,目标分裂节点的分裂条件由模型方发送给数据方,所述模型方保留了除目标分裂节点以外其它分裂节点的分裂条件以及叶子节点的叶子值;所述目标分裂节点为决策森林中与所述业务数据相关联的分裂节点,所述决策森林包括至少一个决策树,所述决策树包括至少一个分裂节点和至少两个叶子节点,所述相关联包括:分裂节点对应的数据类型与数据方持有业务数据的数据类型相同;该方法包括:
基于所述业务数据和所述分裂条件,分析决策森林中的叶子节点被匹配的可能性;
若叶子节点的分析结果为有可能被匹配,确定该叶子节点对应的第一数据选择值;
以第一数据选择值为输入与模型方进行不经意传输,得到第一数据作为目标数据,所述目标数据用于确定决策森林的预测结果。
13.如权利要求12所述的方法,所述模型方持有一部分业务数据;所述数据方持有另一部分业务数据,但不持有其它分裂节点的分裂条件和叶子节点的叶子值。
14.如权利要求12所述的方法,还包括:
若叶子节点的分析结果为不可能被匹配,确定该叶子节点对应的第二数据选择值;
以第二数据选择值为输入与模型方进行不经意传输,得到第二数据作为目标数据。
15.如权利要求12所述的方法,还包括:
接收叶子节点的第三数据作为目标数据,所述第三数据选自叶子值密文和随机数。
16.如权利要求12所述的方法,还包括:
接收决策树的第四数据作为目标数据,所述第四数据包括预测结果密文。
17.如权利要求12、14、15或16所述的方法,还包括:
将获得的多个目标数据相加,得到决策森林的预测结果或混合了第一噪声数据的预测结果。
18.如权利要求12、14、15或16所述的方法,还包括:
将获得的多个目标数据相加,得到第一相加结果;
向模型方发送第一相加结果,以便模型方基于第一相加结果确定决策森林的预测结果;或者,将第一相加结果与第二噪声数据相加,得到第二相加结果,向模型方发送第二相加结果,以便模型方基于第二相加结果确定决策森林的混合了第二噪声数据的预测结果。
19.如权利要求12、14、15或16所述的方法,还包括:
将获得的多个目标数据相加,得到第一相加结果;
以第一相加结果为输入与模型方协作执行多方安全比较算法,以便比较决策森林的预测结果与预设阈值的大小。
20.一种数据处理装置,设置于数据方,所述数据方持有业务数据和目标分裂节点的分裂条件,其中,目标分裂节点的分裂条件由模型方发送给数据方,所述模型方保留了除目标分裂节点以外其它分裂节点的分裂条件以及叶子节点的叶子值;所述目标分裂节点为决策森林中与所述业务数据相关联的分裂节点,所述决策森林包括至少一个决策树,所述决策树包括至少一个分裂节点和至少两个叶子节点;所述相关联包括:分裂节点对应的数据类型与数据方持有业务数据的数据类型相同;该装置包括:
分析单元,用于基于所述业务数据和所述分裂条件,分析决策森林中的叶子节点被匹配的可能性;
确定单元,用于若叶子节点的分析结果为有可能被匹配,确定该叶子节点对应的第一数据选择值;
传输单元,用于以第一数据选择值为输入与模型方进行不经意传输,得到第一数据作为目标数据,所述目标数据用于确定决策森林的预测结果。
21.一种电子设备,包括:
存储器,用于存储计算机指令;
处理器,用于执行所述计算机指令以实现如权利要求12-19中任一项所述的方法步骤。
CN201910583556.0A 2019-07-01 2019-07-01 数据处理方法、装置和电子设备 Active CN110569659B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201910583556.0A CN110569659B (zh) 2019-07-01 2019-07-01 数据处理方法、装置和电子设备
PCT/CN2020/071586 WO2021000573A1 (zh) 2019-07-01 2020-01-11 数据处理方法、装置和电子设备
US16/779,285 US20200167662A1 (en) 2019-07-01 2020-01-31 Performing data processing based on decision tree
TW109104356A TWI729697B (zh) 2019-07-01 2020-02-12 資料處理方法、裝置和電子設備
US16/890,850 US20200293908A1 (en) 2019-07-01 2020-06-02 Performing data processing based on decision tree

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910583556.0A CN110569659B (zh) 2019-07-01 2019-07-01 数据处理方法、装置和电子设备

Publications (2)

Publication Number Publication Date
CN110569659A CN110569659A (zh) 2019-12-13
CN110569659B true CN110569659B (zh) 2021-02-05

Family

ID=68772928

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910583556.0A Active CN110569659B (zh) 2019-07-01 2019-07-01 数据处理方法、装置和电子设备

Country Status (3)

Country Link
CN (1) CN110569659B (zh)
TW (1) TWI729697B (zh)
WO (1) WO2021000573A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110569659B (zh) * 2019-07-01 2021-02-05 创新先进技术有限公司 数据处理方法、装置和电子设备

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107292186B (zh) * 2016-03-31 2021-01-12 阿里巴巴集团控股有限公司 一种基于随机森林的模型训练方法和装置
GB201610883D0 (en) * 2016-06-22 2016-08-03 Microsoft Technology Licensing Llc Privacy-preserving machine learning
EP4220464A1 (en) * 2017-03-22 2023-08-02 Visa International Service Association Privacy-preserving machine learning
CN107124276B (zh) * 2017-04-07 2020-07-28 西安电子科技大学 一种安全的数据外包机器学习数据分析方法
US10831733B2 (en) * 2017-12-22 2020-11-10 International Business Machines Corporation Interactive adjustment of decision rules
US10769570B2 (en) * 2017-12-27 2020-09-08 Accenture Global Solutions Limited Artificial intelligence based risk and knowledge management
CN109299728B (zh) * 2018-08-10 2023-06-27 深圳前海微众银行股份有限公司 基于构建梯度树模型的样本联合预测方法、系统及介质
CN109359476B (zh) * 2018-10-26 2020-12-25 山东师范大学 一种隐藏输入的两方模式匹配方法及装置
CN110569659B (zh) * 2019-07-01 2021-02-05 创新先进技术有限公司 数据处理方法、装置和电子设备

Also Published As

Publication number Publication date
WO2021000573A1 (zh) 2021-01-07
TWI729697B (zh) 2021-06-01
TW202103151A (zh) 2021-01-16
CN110569659A (zh) 2019-12-13

Similar Documents

Publication Publication Date Title
CN110457912B (zh) 数据处理方法、装置和电子设备
CN110427969B (zh) 数据处理方法、装置和电子设备
CN110414567B (zh) 数据处理方法、装置和电子设备
CN111125727B (zh) 混淆电路生成方法、预测结果确定方法、装置和电子设备
CN109558748B (zh) 数据处理方法、装置、电子设备及存储介质
US10977389B2 (en) Anonymity assessment system
Cartaxo et al. On the use of a similarity function for test case selection in the context of model‐based testing
US10776337B2 (en) Multi-dimensional knowledge index and application thereof
CN111428887B (zh) 一种基于多个计算节点的模型训练控制方法、装置及系统
US20200175426A1 (en) Data-based prediction results using decision forests
WO2021155480A1 (en) System and method for conversational middleware platform
CN111144576A (zh) 模型训练方法、装置和电子设备
US20220086131A1 (en) Multi-factor authentication for non-internet applications
CN111737279A (zh) 基于区块链的业务处理方法、装置、设备及存储介质
CN110874481B (zh) 一种基于gbdt模型的预测方法和装置
US20220382665A1 (en) Model-based biased random system test through rest api
CN110569659B (zh) 数据处理方法、装置和电子设备
Vesyropoulos et al. QoS‐Based Filters in Web Service Compositions: Utilizing Multi‐Criteria Decision Analysis Methods
US20200293908A1 (en) Performing data processing based on decision tree
US20200293911A1 (en) Performing data processing based on decision tree
US20200167661A1 (en) Performing data processing based on decision tree
CN114638998A (zh) 模型更新方法、装置、系统及设备
CN114493850A (zh) 基于人工智能的在线公证方法、系统及存储介质
Baybulatov et al. A Metric for the IACS Availability Risk Assessment
CN117272360A (zh) 代码处理方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40018829

Country of ref document: HK

TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20201010

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant before: Advanced innovation technology Co.,Ltd.

Effective date of registration: 20201010

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant after: Advanced innovation technology Co.,Ltd.

Address before: Greater Cayman, British Cayman Islands

Applicant before: Alibaba Group Holding Ltd.

GR01 Patent grant
GR01 Patent grant