logo好方法网

基于纵向联邦学习的决策模型训练方法、预测方法及装置


技术摘要:
本申请涉及一种基于纵向联邦学习的决策模型训练方法、预测方法及装置,所述训练方法包括:随机确定参与训练的训练样本集合,以及训练特征集合;在当前待训练决策树的每个节点处,确定所述节点的节点信息,生成第一分裂增益集合;接收至少一个第二终端生成的分裂样本集  全部
背景技术:
联邦学习指的是多个数据拥有方在原始数据不出本地的情况下也可进行模型训 练并得到最终模型的计算过程,并且保证模型效果与聚合训练效果的差距足够小;根据数 据分布情况,可以把联邦学习分为横向联邦学习、纵向联邦学习以及联邦迁移学习。 对于纵向联邦学习,由于同一样本的不同特征分属于不同的训练参与者,并且样 本标签与特征也是处于分离的状态,即训练参与者拥有相同的样本空间和不同的特征空 间;现有技术中提出的基于纵向联邦学习的随机森林算法需要一个主结点和多个参与者结 点,其中一个参与者结点拥有标签数据,且标签数据是以明文形式发送给主结点的,再由主 结点对标签数据进行加密之后发送给其他参与者结点;主结点接收来自多个参与者结点的 分裂特征及分裂增益;这里的主结点是一个第三方结点,该第三方结点知道所有样本的标 签信息以及各参与者结点的分裂空间,第三方结点的引入会带来额外的安全隐患,并且标 签信息在传输过程中可能存在被泄露的风险。
技术实现要素:
本申请所要解决的技术问题在于,提供了一种基于纵向联邦学习的决策模型训练 方法、预测方法及装置,在联邦学习过程中无需引入第三方结点,从而不会因为引入第三方 结点而带来额外的数据安全隐患;并且对于拥有标签数据的参与者结点,标签数据不会出 本地,从而避免了标签数据在传输过程中被泄露的问题,提高了各参与者结点数据的安全 性,保护了各参与者结点的数据隐私。 为了解决上述技术问题,一方面,本申请提供了一种基于纵向联邦学习的决策模 型训练方法,应用于存储有第一样本数据和标签数据的第一终端,所述第一终端与至少一 个第二终端进行数据通信,所述至少一个第二终端存储有第二样本数据,所述决策模型包 括多棵目标决策树,所述决策模型训练方法包括: 获取基于所述第一样本数据和所述第二样本数据得到的样本交集,以及每个样本 对应的多维度特征; 在对每棵待训练决策树进行训练时,从所述样本交集中随机确定参与训练的训练 样本集合,以及从所述多维度特征中随机确定参与训练的训练特征集合; 获取当前待训练决策树的树结构信息,基于所述树结构信息从所述当前待训练决 策树的根节点依次进行特征分裂; 在每个待分裂的节点处,确定所述节点的节点信息,基于所述节点的节点信息、所 述第一样本数据中的特征数据以及所述标签数据生成第一分裂增益集合; 将所述节点的节点信息发送给所述至少一个第二终端,接收所述至少一个第二终 6 CN 111598186 A 说 明 书 2/17 页 端基于所述节点的节点信息以及所述第二样本数据中的特征数据进行特征分裂之后生成 的分裂样本集合; 基于所述分裂样本集合以及所述标签数据,生成第二分裂增益集合; 基于所述第一分裂增益集合和所述第二分裂增益集合,确定所述节点的分裂特 征; 确定训练完成时的所述待训练决策树为所述目标决策树,基于训练完成的多棵所 述目标决策树生成所述决策模型。 另一方面,本申请提供了一种基于上述的决策模型的预测方法,应用于所述第一 终端,所述方法包括: 依次采用所述决策模型中的每棵目标决策树进行预测,采用单棵目标决策树进行 预测时,从当前目标决策树的根节点开始访问,重复执行以下步骤,直至到达叶子节点: 若当前节点的分裂特征不属于本地特征时,确定当前节点的分裂特征所属的目标 第二终端; 向所述目标第二终端发送判断结果获取请求,以使得所述目标第二终端从所述目 标第二终端本地的待预测样本数据中获取所述当前节点的分裂特征对应的待预测特征数 据; 接收所述目标第二终端基于所述待预测特征数据返回的第一判断结果; 基于所述目标第二终端返回的所述第一判断结果,确定下一待访问节点; 当到达叶子节点时,基于所述叶子节点的信息确定当前目标决策树的预测结果; 基于多棵目标决策树的预测结果生成目标预测结果。 另一方面,本申请提供了一种基于纵向联邦学习的决策模型训练装置,应用于存 储有第一样本数据和标签数据的第一终端,所述第一终端与至少一个第二终端进行数据通 信,所述至少一个第二终端存储有第二样本数据,所述决策模型包括多棵目标决策树,所述 决策模型训练装置包括: 样本数据处理模块,用于获取基于所述第一样本数据和所述第二样本数据得到的 样本交集,以及每个样本对应的多维度特征; 训练数据确定模块,用于在对每棵待训练决策树进行训练时,从所述样本交集中 随机确定参与训练的训练样本集合,以及从所述多维度特征中随机确定参与训练的训练特 征集合; 节点访问模块,用于获取当前待训练决策树的树结构信息,基于所述树结构信息 从所述当前待训练决策树的根节点依次进行特征分裂; 第一分裂增益集合生成模块,用于在每个待分裂的节点处,确定所述节点的节点 信息,基于所述节点的节点信息、所述第一样本数据中的特征数据以及所述标签数据生成 第一分裂增益集合; 分裂样本集合生成模块,用于将所述节点的节点信息发送给所述至少一个第二终 端,接收所述至少一个第二终端基于所述节点的节点信息以及所述第二样本数据中的特征 数据进行特征分裂之后生成的分裂样本集合; 第二分裂增益集合生成模块,用于基于所述分裂样本集合以及所述标签数据,生 成第二分裂增益集合; 7 CN 111598186 A 说 明 书 3/17 页 节点分裂特征确定模块,用于基于所述第一分裂增益集合和所述第二分裂增益集 合,确定所述节点的分裂特征; 决策模型生成模块,用于确定训练完成时的所述待训练决策树为所述目标决策 树,基于训练完成的多棵所述目标决策树生成所述决策模型。 另一方面,本申请提供了一种基于上述决策模型的预测装置,应用于所述第一终 端,所述装置包括: 执行模块,用于依次采用所述决策模型中的每棵目标决策树进行预测,采用单棵 目标决策树进行预测时,从当前目标决策树的根节点开始访问,重复执行以下步骤,直至到 达叶子节点: 第一确定模块,用于若当前节点的分裂特征不属于本地特征时,确定当前节点的 分裂特征所属的目标第二终端; 判断结果获取请求发送模块,用于向所述目标第二终端发送判断结果获取请求, 以使得所述目标第二终端从所述目标第二终端本地的待预测样本数据中获取所述当前节 点的分裂特征对应的待预测特征数据; 第一判断结果接收模块,用于接收所述目标第二终端基于所述待预测特征数据返 回的第一判断结果; 第二确定模块,用于基于所述目标第二终端返回的所述第一判断结果,确定下一 待访问节点; 预测结果确定模块,用于当到达叶子节点时,基于所述叶子节点的信息确定当前 目标决策树的预测结果; 目标预测结果确定模块,用于基于多棵目标决策树的预测结果生成目标预测结 果。 另一方面,本申请提供了一种决策模型训练终端,所述终端包括处理器和存储器, 所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程 序由所述处理器加载并执行以实现如上述的决策模型训练方法。 另一方面,本申请提供了一种预测终端,所述终端包括处理器和存储器,所述存储 器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述 处理器加载并执行以实现如上述的预测方法。 实施本申请实施例,具有如下有益效果: 本申请在对决策模型中的每棵待训练决策树进行训练时,由第一终端从样本交集 中随机确定参与训练的训练样本集合,从多维特征中随机确定参与训练的训练特征集合; 依次对当前待训练决策树的各节点进行分裂,在每个节点处,基于节点的节点信息、第一样 本数据中的特征数据以及标签数据生成第一分裂增益集合;基于至少一个第二终端发送的 分裂样本集合生成的第二分裂集合;基于第一分裂增益集合和第二分裂增益集合,确定当 前节点的分裂特征;对于待训练决策树的每个节点循环执行上述操作,直至满足预设条件, 从而得到了目标决策树。本申请中无需引入第三方结点,由具有标签数据的第一终端负责 随机确定参与训练的样本集合和特征集合,并且负责发起决策模型训练任务,无需发送标 签信息或者加密后的标签信息,甚至是与标签信息有关的中间计算结果,分裂增益的计算 均在第一终端进行,从而避免了引入第三方结点带来的数据安全隐患,并且第一终端所拥 8 CN 111598186 A 说 明 书 4/17 页 有的标签数据不会出本地,从而避免了标签数据在传输过程中可能被泄露的问题,提高了 各参与者结点数据的安全性,保护了各参与者结点的数据隐私。在金融企业以及电商企业 合作完成用户信贷违约评估的应用场景中,由具有用户违约记录标签数据的金融企业端负 责发起决策模型训练任务,标签数据不会出金融企业端本地,避免了标签数据的泄露;另外 分裂增益的计算均在金融企业端进行,从而避免了引入第三方结点带来的数据安全隐患, 保证了金融企业端和电商企业端的数据安全。 附图说明 为了更清楚地说明本申请实施例或现有技术中的技术方案和优点,下面将对实施 例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅 仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下, 还可以根据这些附图获得其它附图。 图1是本申请实施例提供的实施环境示意图; 图2是本申请实施例提供的一种基于纵向联邦学习的决策模型训练方法流程图; 图3是本申请实施例提供的一种样本交集及多维度特征生成方法流程图; 图4是本申请实施例提供的一种训练样本集合和训练特征集合生成方法流程图; 图5是本申请实施例提供的一种第一分裂增益集合生成方法流程图; 图6是本申请实施例提供的一种特征分裂方法流程图; 图7是本申请实施例提供的一种节点分裂特征的确定方法流程图; 图8是本申请实施例提供的一种基于决策模型的预测方法流程图; 图9是本申请实施例提供的决策模型训练过程示意图; 图10是本申请实施例提供的有标签方单决策树的构造流程示意图; 图11是本申请实施例提供的无标签方的训练方法示意图; 图12是本申请实施例提供的一种基于纵向联邦学习的决策模型训练装置示意图; 图13是本申请实施例提供的一种基于决策模型的预测装置示意图; 图14是本申请实施例提供的一种终端结构示意图。
下载此资料需消耗2积分,
分享到:
收藏