本发明专利技术涉及分布式决策树训练。计算机化的决策树训练系统可以包括被配置为接收用于训练决策树的训练数据输入的分布式控制处理单元。系统可以进一步包括多个数据批处理单元,其中每个数据批处理单元被配置为为训练数据的分别的数据批次评估决策树的多个分裂函数中的每一个,从而为每个分裂函数、为数据批次中的每个数据计算部分的直方图。系统可以进一步包括多个节点批处理单元,节点批处理单元被配置为为每个分裂函数聚集相关的部分直方图,以为边缘树节点的子集中的每个节点的每个分裂函数形成聚集的直方图,并且被配置为通过计算为边缘树节点产生最高的信息增益的分裂函数来为每个边缘树节点确定选定的分裂函数。
【技术实现步骤摘要】
本专利技术涉及计算机领域,尤其涉及计算机领域中的决策树训练。
技术介绍
可以运用机器学习技术以使得计算机能够处理实验数据并且得出关于其的结论。 一个示例的机器学习技术是基于示例数据训练决策树,以及应用经训练的决策树以将未知数据分类为若干类中的一个。在众多应用中,为决策树的训练使用尽可能大的数据集可以获得更准确的结果。但是,使用大数据集的决策树训练的一个缺点是这种训练可以使计算系统的处理器或存储器资源无法承受,从而造成决策树的训练是不实际或不可能的。因此, 计算机科学家和软件开发者受到他们可以用来训练决策树的数据集大小和复杂度的限制, 并且难以取得在这种决策树的分类能力上的改进。
技术实现思路
提供计算机化的决策树训练系统和方法。计算机化的决策树训练系统可以包括被配置为接收用于训练决策树的训练数据输入的分布式控制处理单元。系统可以进一步包括多个数据批处理单元,其中每个数据批处理单元被配置为为分别的训练数据的数据批次对决策树的多个分裂函数中的每一个评估,从而为每个分裂函数、为数据批次中的每个数据计算部分的直方图。系统可以进一步包括多个节点批处理单元,节点批处理单元被配置为为每个分裂函数聚集相关的部分直方图,以为边缘树节点的子集中的每个节点的每个分裂函数形成聚集的直方图,并且被配置为通过计算为边缘树节点产生最高的信息增益的分裂函数来为每个边缘树节点确定选定的分裂函数。提供本概述以便用一种简单的形式介绍将在以下详细描述中进一步描述的一些概念。本概述不旨在确定所要求保护的主题的关键或必要特征,也不旨在用于限制所要求保护的主题的范围。此外,所要求保护的主题不限于解决在本公开的任何部分中注释的任何或所有缺点的实施。附图说明图1是依照本专利技术的一个实施例的计算机化的决策树训练系统的示意图。图2是示出可以由图1中的系统计算的决策树的示意图。图3是示出可以由图1中的系统实现的决策树的深度优先训练的示意图。图4是示出可以由图1中的系统实现的决策树的广度优先训练的示意图。图5是图1中计算机化的决策树训练系统的机器学习计算机系统的详细示意图, 其被配置为通过处理分别的处理单元上的数据批次和节点批次以训练决策树。图6是示出可以由图1中的系统实现的混合广度优先/深度优先训练算法的示意图。图7是图1中计算机化的决策树训练系统的机器学习计算机系统的另一个实施例的详细示意图,其被配置为通过处理分别的处理单元上的分裂函数以训练决策树。图8是计算机化的决策树训练方法的一个实施例的流程图。具体实施例方式图1示出计算机化的决策树训练系统10。计算机化的决策树训练系统10包括被配置为接收训练数据14、处理训练数据14和输出已训练的决策树16的机器学习计算机系统12。训练数据14包括已经被分类为预定数量的类中的一个类的众多示例。依照以下所述的过程,可以基于训练数据14来训练决策树16。训练数据14可以包括各种数据类型,并且一般地被组织为多个数据单元18。在一个特定示例中,数据单元18可以包含图像20或图像区域,该图像或图像区域依次包括像素数据22。替代地或额外地,数据单元18可以包括音频数据、视频序列、3D医学扫描或其它数据。紧接着计算机化的决策树训练系统10的决策树16的训练,可以在下游计算设备 24的输入模块26中安装决策树16,以用于处理和分类由输入模块26从与计算设备24相关的数据源30接收的数据流28中的数据。在一个示例中,数据源30是深度照相机,计算设备24是游戏控制台,并且数据流28包含一系列包括实时地从深度照相机接收的深度信息的图像。在另一个示例中,数据源30可以是话筒,并且数据流可以包含音频信号流。而在另一个示例中,数据源30可以是医学成像设备,计算设备24可以是医学分析计算机,并且数据流28可以包含从医学成像设备接收的一系列图像。输入模块26被配置为使用决策树16分类数据流18中的数据单元,从而产生经处理的数据32。在一个示例中,经处理的数据32可以包括图像数据,其中每个图像中的每个像素已经如以下所述,通过决策树分配例如身体模型上的身体部分的类。经处理的数据32 可以被传递到例如游戏程序的计算机程序34以用于下游处理。计算机程序34又被配置为解释经处理的数据32并且在与计算设备24相关的显示器36上显示相关的图形输出。在以上示例中,计算机程序可以是游戏程序,并且经处理的数据可以是通过决策树使用身体部分分类的逐像素地编码的玩家的图像。玩家可以在深度照相机前自然地移动其身体,从而创建通过决策树16分类的并且由计算机程序34解释的自然输入,以控制例如在游戏中的玩家人物。现在参考图2,这幅图一般地示出图1中的系统的决策树16的示例。决策树16包括一个根节点38,在由机器学习计算机系统12训练期间,该根节点包含或可访问来自计算机化的决策树训练系统10的机器学习计算机系统12的所有经处理的训练数据14。在训练期间,依照训练算法(诸如以下所述的深度优先、广度优先、或混合广度/深度),决策树 16通过若干层的分裂节点40从根节点38处分叉,并且最终在叶节点终止。在训练算法的任何给定迭代处,可以计算决策树16直到一组边缘树节点48为止,如虚线所示。决策树16具有可以被评估以表明训练数据14中的差别的若干相关的分裂函数。 为了建立决策树16,在每个边缘节点48处,必须选择分裂函数以从边缘节点创建分裂节点。评估多个候选的分裂函数,并且产生最大信息增益(熵)的分裂函数被分配给分裂节点。以这种方式,直到达到信息增益的预定最小阈值,或者达到决策树中预定的层数,或者满足某一其它终止条件之前,树都将进行分支。决策树的分支在叶节点42或末端节点处终6止,其中每个叶节点或末端节点都具有与其相关的类和概率直方图44。直方图表示遍历树到达该叶节点的训练数据是每个类的成员的概率。在一个示例中,如以上所述,类可以表示身体模型45上的身体部位,用于处理由深度照相机拍摄的身体图像。现在参考图3,这幅图示出可以由图1中的系统实现的用于决策树16的深度优先训练算法。深度优先训练算法是递归的决策树遍历算法,该算法从根节点38处开始并且在回溯之前基于最大信息增益在每一步向更深的一层遍历决策树16,直到到达叶节点42为止。在一个特定示例中,最简单的深度优先训练算法对于所有的多个数据单元18开始,数据单元包括例如图像20的像素数据22的所有训练示例,并且通过选择一组分裂函数从根节点38处继续进行操作。对于每个分裂函数,跨多个数据单元18的类建立两个概率直方图44,其中一个用于决策树16的节点处的左侧结果,一个用于右侧结果。可以基于分裂评估准则为每个分裂节点选择分裂函数。在一个实施例中,分裂评估准则包括本地地选择可以依照以下公式表示的给出最大预期信息增益的分裂函数。在以上公式中,E (Q)是分布Q的香农(Shannon)熵,Q_1和Q_r是节点左分支和右分支的直方图。应当理解也可以使用其它分裂评估准则,诸如基尼(Gini)系数熵、名为“二分”的准则、用于平等地分裂树的树平衡准则等。一旦使用这些分裂评估准则中的一个为给定分裂节点本地地选择了分裂函数,含有一组数据单元18的对应分裂节点被划分为数据单元18的左子集和右子集。然后将这一过程递归地应用于数据单元18的左子集和右子集,划分直到本文档来自技高网...
【技术保护点】
1.一种计算机化的决策树训练系统(10),所述系统包括:被配置为接收用于训练决策树(16)的训练数据(14)的输入的分布式控制处理单元(50),训练数据(14)包括多个数据单元(18),每个数据单元(18)进一步包括具有相关类标签的至少一个示例数据;多个数据批处理单元(54),每个数据批处理单元(54)被配置为从分布式控制处理单元(50)接收表示训练数据(14)中数据单元(18)的子集的分别的数据批次(64),并且被配置为为分别的数据批次(64)评估决策树(16)的多个分裂函数中的每一个,从而为数据批次(64)中的每个分裂函数和每个数据计算部分直方图(56);以及多个节点批处理单元(58),对于分别的树节点批次(66)中决策树(16)的边缘树节点(48)的每个子集,每个节点批处理单元(58)被配置为聚集每个分裂函数的相关的部分直方图(56)以在子集的每个边缘树节点(48)处为每个分裂函数形成聚集的直方图(60),所述每个节点批处理单元(58)被配置为通过计算为边缘树节点(48)产生最高信息增益的分裂函数来为分别的子集中的每个边缘树节点(48)确定选定的分裂函数;所述分布式控制处理单元(50)进一步被配置为将每个边缘树节点(48)重新分类为包括分别的一个选定的分裂函数的分裂节点(40),以扩展决策树(16)以包括从分裂节点(40)处分支出的新的边缘树节点(48),并且输出决策树(16)用于安装在下游计算设备(24)上。...
【技术特征摘要】
...
【专利技术属性】
技术研发人员:J·肖顿,MD·布迪尤,A·W·费茨吉本,M·菲诺齐奥,R·E·摩尔,D·罗伯逊,
申请(专利权)人:微软公司,
类型:发明
国别省市:US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。