CN111695588A - 一种基于云计算的分布式决策树学习*** - Google Patents

一种基于云计算的分布式决策树学习*** Download PDF

Info

Publication number
CN111695588A
CN111695588A CN202010291696.3A CN202010291696A CN111695588A CN 111695588 A CN111695588 A CN 111695588A CN 202010291696 A CN202010291696 A CN 202010291696A CN 111695588 A CN111695588 A CN 111695588A
Authority
CN
China
Prior art keywords
data
attribute
module
node
decision tree
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.)
Granted
Application number
CN202010291696.3A
Other languages
English (en)
Other versions
CN111695588B (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.)
Beijing Speedycloud Technology Co ltd
Original Assignee
Beijing Speedycloud Technology 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 Beijing Speedycloud Technology Co ltd filed Critical Beijing Speedycloud Technology Co ltd
Priority to CN202010291696.3A priority Critical patent/CN111695588B/zh
Publication of CN111695588A publication Critical patent/CN111695588A/zh
Application granted granted Critical
Publication of CN111695588B publication Critical patent/CN111695588B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/24323Tree-organised classifiers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种基于云计算的分布式决策树学习***,包括:分布模块,随机分布目标数据到数据输入节点;扫描模块,对目标数据进行扫描处理,并构建元属性数据库;抽取模块,当主备节点向映射节点发送第一任务请求时,控制映射节点从数据输入节点抽取第一目标数据对;输出模块,当主备节点向规约节点发送第二任务请求时,控制规约节点从第一目标数据对中选择第一***属性,并输出第二目标数据对;记录模块,记录第二目标数据对,及确定的决策位置,将其保存到模型数据节点中;第一构建模块,根据输出结果和记录结果构建决策树,并重复执行后续操作,直到决策树构建完成。便于支持在大规模数据上快速构建决策树,具有非常强的工程实用价值。

Description

一种基于云计算的分布式决策树学习***
技术领域
本发明涉及云计算技术领域,特别涉及一种基于云计算的分布式决策树学习***。
背景技术
传统的基于信息熵增益构建的决策树算法并不是针对大量数据实现的,原因是决策树算法运行在一台计算机上,并且对应的数据需要全部放到内存中。但是由于在大数据时代,数据是海量的,且分布在云计算分布式平台上,如何构建新的基于云计算分布式***的决策树学习***变成了一个非常关键的问题。在这种情况下,面临的难题是:
1.数据是海量的,不能一次存放到内存中;
2.数据是分布式的,不能只在一台计算机***上;
3.传统的决策树算法基本上完全不可用;
4.用于决策树学习的数据属性可能非常多。
因此,为了解决以上难题,本发明在云计算平台上,构建了基于Map-Reduce(映射-规约)的决策树学习***。
发明内容
本发明提供一种基于云计算的分布式决策树学习***,用以通过***属性及信息熵增益,构建基于映射-规约结构的决策树算法,其支持在大规模数据上快速构建决策树,具有非常强的工程实用价值。
本发明实施例提供一种基于云计算的分布式决策树学习***,包括:
分布模块,用于将目标数据随机分布到若干个数据输入节点;
扫描模块,用于在所述分布模块执行分布操作之前,对所述目标数据进行扫描处理,并构建元属性数据库;
抽取模块,用于当主备节点向映射节点发送第一任务请求时,控制所述映射节点根据所述第一任务请求,并基于所述元属性数据库,从对应的数据输入节点中抽取第一目标数据对;
输出模块,用于当所述主备节点向规约节点发送第二任务请求时,控制所述规约节点根据所述第二任务请求,并基于信息熵增益方法,从对应的所述映射节点抽取的第一目标数据对中选择相应的第一***属性,并输出与第一***属性相关的第二目标数据对;
记录模块,用于记录根据所述输出模块输出的第二目标数据对,确定的决策位置,并将所述第二目标数据对保存到与决策位置相关的模型数据节点中;
第一构建模块,用于根据所述输出模块的输出结果和所述记录模块的记录结果构建决策树,并控制所述抽取模块、输入模块和记录模块重复执行相应的操作,直到所述决策树构建完成。
在一种可能实现的方式中,还包括:
确定模块,用于在所述抽取模块执行抽取操作之前,确定基于所述元属性数据库确定的第一属性集合A中的每个选择属性的信息熵增益;
所述确定模块,包括:
第一计算子模块,用于当选择属性Ai***数据前,根据公式(1)计算得到所述选择属性Ai***数据前对应的第一数据的信息熵E(X);
Figure BDA0002450630800000021
其中,pg表示处于类g的训练数据实例的概率,即若所述目标数据对应的数据集合D中有N个数据实例,处于决策树中,用于分类的总G类中,且属于类g的数据实例个数是Ng,则
Figure BDA0002450630800000022
第二计算子模块,用于当所述选择属性Ai***数据后,根据公式(2)和(3)得到所述选择属性Ai***数据后对应的第二数据的混合信息熵E′(X);
Figure BDA0002450630800000031
Figure BDA0002450630800000032
其中,n表示选择属性Ai***数据后得到的分支个数;Nij表示记录的选择属性Ai***数据后处于分支j的数据个数;Ni表示在节点i上记录的数据总个数;K表示决策树用于分类的类个数;
Figure BDA0002450630800000033
表示数据实例属于类c,且在分支j上的数据实例的概率;
其中,
Figure BDA0002450630800000034
Figure BDA0002450630800000035
表示节点i得到分支j属于类c的数据实例的个数;Nij表示节点i的分支j包括的数据实例的个数;Vc(Nij)表示类c的总属性对应的分支j的所有数据的方差;
Figure BDA0002450630800000038
表示属于类c的属性是Ai的分支j的数据值;
Figure BDA0002450630800000037
表示属于类c的属性是Ai的分支j的数据值的平均值;
确定子模块,用于根据所述第一计算子模块得到的信息熵E(X)和所述第二计算子模块得到的混合信息熵E′(X),同时根据公式(4)确定所述选择属性Ai的信息熵增益I(X);
I(X)=E(X)-E′(X) (4)。
在一种可能实现的方式中,还包括:
排序模块,用于基于所述确定子模块确定的信息熵增益,获取从对应的所述映射节点抽取的所有第一目标数据对对应的信息熵增益,并对获取的与第一目标数据对对应的所有信息熵增益进行优先级排序,得到优先级排序结果中的最大信息熵增益;
其中,所述最大信息熵增益对应的选择属性作为第一***属性。
在一种可能实现的方式中,
所述第一目标数据对包括:所述第一目标数据所处位置的节点及节点标号、与第一目标数据相关的属性及属性名称、所述属性的信息熵增益值。
在一种可能实现的方式中,还包括:
合并模块,用于基于规约节点,获取从对应所述映射节点抽取的所有第一目标数据对,并将具有第一相同信息的第一目标数据对进行合并处理,同时对合并处理后的具有第二相同信息的第一目标数据中的混合信息熵增益进行累加处理,得到总增益v;
v=v1+v2+v3…+vm (5);
其中,vm表示具有第二相同信息的第m个第一目标数目的混合信息熵增益。
在一种可能实现的方式中,还包括:
汇总模块,用于获取所有的根据所述排序模块得到的最大信息熵增益进而确定的第一***属性,对获取的所有第一***属性进行汇总处理,得到最优划分属性;
第二构建模块,用于根据所述最优划分属性,并自顶向下逐层构建所述决策树的节点集合,并根据构建的所述节点集合,来实现对所述决策树的构建;
其中,所述决策树的节点,是基于所述选择属性构成的。
在一种可能实现的方式中,还包括:
元属性数据节点,用于存放所述扫描模块构建的的元属性数据库;
所述模型数据节点,用于存放与所述第一构建模块构建的决策树相关的最终决策树模型。
在一种可能实现的方式中,还包括:
选择模块,用于根据预设选择方式,并基于所述扫描模块构建的元属性数据库,确定第二属性集合,并从所述第二属性集合中选择第二***属性B1;
划分模块,用于根据所述选择模块选择的第二***属性B1,将预先设定的所述目标数据对应的数据集合D划分为子集合DL和DR
第一处理模块,用于判断所述划分模块划分的子集合DL是否满足第一***停止条件,若不满足,则从所述第二属性集合中选择与所述子集合DL相关的第三***属性B2,同时控制所述划分模块根据所述第三***属性B2对所述子集合DL进行再次划分,并继续执行后续操作;
第二处理模块,用于判断所述划分模块划分的子集合DR是否满足第二***停止条件,若不满足,则从所述第二属性集合中选择与所述子集合DR相关的第四***属性B3,同时控制所述划分模块根据所述第四***属性B3对所述子集合DR进行再次划分,并继续执行后续操作;
第三处理模块,用于对划分得到的所有子集合递归处理,直到完整的决策树构建完毕。
在一种可能实现的方式中,
所述数据输入节点,用于基于云计算分布式平台,存储所述目标数据,所述目标数据包括:原始数据、属性数据、元属性数据和决策树模型;
所述映射节点,用于对所述数据输入节点存储的目标数据进行映射处理;
所述规约节点,用于对所述映射节点的映射处理结果进行规约处理,其中,所述映射处理结果为规约节点可进行规约处理的目标结构;
所述主备节点,用于在所述映射节点进行映射处理及所述规约节点进行规约处理时,控制所述映射节点和规约节点进行分布式算法的运行调度;
其中,所述目标结构与所述决策树模型的结构数据相对应。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明实施例中一种基于云计算的分布式决策树学习***的结构图;
图2为本发明实施例中一种基于云计算的分布式决策树学习***的第一体系结构图;
图3为本发明实施例决策树结构示例图;
图4为本发明实施例中一种基于云计算的分布式决策树学习***的第二体系结构图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
本发明实施例提供一种基于云计算的分布式决策树学习***,如图1所示,包括:
分布模块,用于将目标数据随机分布到若干个数据输入节点;
扫描模块,用于在所述分布模块执行分布操作之前,对所述目标数据进行扫描处理,并构建元属性数据库;
抽取模块,用于当主备节点向映射节点发送第一任务请求时,控制所述映射节点根据所述第一任务请求,并基于所述元属性数据库,从对应的数据输入节点中抽取第一目标数据对;
输出模块,用于当所述主备节点向规约节点发送第二任务请求时,控制所述规约节点根据所述第二任务请求,并基于信息熵增益方法,从对应的所述映射节点抽取的第一目标数据对中选择相应的第一***属性,并输出与第一***属性相关的第二目标数据对;
记录模块,用于记录根据所述输出模块输出的第二目标数据对,确定的决策位置,并将所述第二目标数据对保存到与决策位置相关的模型数据节点中;
第一构建模块,用于根据所述输出模块的输出结果和所述记录模块的记录结果构建决策树,并控制所述抽取模块、输入模块和记录模块重复执行相应的操作,直到所述决策树构建完成。
优选的,所述第一目标数据对包括:所述第一目标数据所处位置的节点及节点标号、与第一目标数据相关的属性及属性名称、所述属性的信息熵增益值。
优选的,还包括:
元属性数据节点,用于存放所述扫描模块构建的的元属性数据库;
所述模型数据节点,用于存放与所述第一构建模块构建的决策树相关的最终决策树模型。
上述第一任务请求,可以是控制映射节点从对应的数据输入节点中抽取第一目标数据对的请求;
上述第二任务请求,可以是控制规约节点选择第一***属性的请求;
上述技术方案首先从若干个输入节点中抽取第一目标数据对到对应的映射节点进行映射处理,再由规约节点对对应的映射节点的结果进行选择相应的第一***属性,来输出与第一***属性相关的第二目标数据对;
如:存在数据输入节点a1、a2和a3,其中,数据输入节点a1、a2与映射节点b1建立连接关系,且映射节点b1抽取的第一目标数据对即是从数据输入节点a1、a2中抽取的,与映射节点建立连接的规约节点c1从映射节点b1的处理结果中,选择第一***属性,并由输出模块输出与第一***属性相关的第二目标数据对,其第二目标数据对可以是数据输入节点a1、a2所有第一目标数据对中的一个,对应的第一***属性,是根据计算获取的最佳***属性。
上述决策位置,例如是通过第二目标数据对中存在的节点及节点编号来确定的,并将其存储到模型数据节点中;
上述模型数据节点中的决策树模型,可以是第一构建模型循环操作的过程中一层级、一层级构建来的,也可以是根据预先设定好的空白模型,来将对应的数据在其上进行填充获得的,但是,在此实施例中,更偏向于一层级、一层级构建来的。
在云计算平台上,因为需要用到映射-规约方法,即Map-Reduce方法,所以首先要给出Map(映射)与Reduce(规约)使用的目标数据的第一目标数据对(key,Value);
对于决策树而言,给定的key包括节点标号与属性名称,而Value则对应决策树属性质量值,即信息熵增益值,也就是,Value=v,其中,Nodei表示决策树中的第i个节点,假设Node0是根节点,Aj表示第j个属性,Aj∈A,A是目标数据的数据属性集合,v是属性质量值,也就是混合信息熵增益值,因此,得到的Key-Value的表达是。
针对其具体结构参见图2,,在图2中,数据输入节点表示拥有数据的计算机节点,Map节点表示负责从数据输入节点获取目标数据,然后根据目标数据的属性和值做Key-Value映射,Reduce节点表示使用Map节点得到的Key-Val ue对选择最佳***属性,所有的Reduce节点的输出结果只是部分局部的最优选择结果,所以Master节点还需要对Reduce节点的输出结果进行汇总,从而得到全局的最优划分属性,从而构建出决策树的节点,其中,Master(主备)节点自顶向下逐层构建决策树节点集合,且决策树的节点,是选择属性及属性条件构成的节点。在图2中,模型数据节点是用来存放最终的决策树模型的,元属性数据节点是用来存放原始数据的元属性集合。
上述多个数据输入节点可以对应一个映射节点,且多个映射节点可以对应一个规约节点。
上述技术方案的有益效果是:通过***属性及信息熵增益,构建基于映射-规约结构的决策树算法,其支持在大规模数据上快速构建决策树,具有非常强的工程实用价值。
本发明实施例提供一种基于云计算的分布式决策树学习***,还包括:
确定模块,用于在所述抽取模块执行抽取操作之前,确定基于所述元属性数据库确定的第一属性集合A中的每个选择属性的信息熵增益;
所述确定模块,包括:
第一计算子模块,用于当选择属性Ai***数据前,根据公式(1)计算得到所述选择属性Ai***数据前对应的第一数据的信息熵E(X);
Figure BDA0002450630800000091
其中,pg表示处于类g的训练数据实例的概率,即若所述目标数据对应的数据集合D中有N个数据实例,处于决策树中,用于分类的总G类中,且属于类g的数据实例个数是Ng,则
Figure BDA0002450630800000092
第二计算子模块,用于当所述选择属性Ai***数据后,根据公式(2)和(3)得到所述选择属性Ai***数据后对应的第二数据的混合信息熵E′(X);
Figure BDA0002450630800000093
Figure BDA0002450630800000094
其中,n表示选择属性Ai***数据后得到的分支个数;Nij表示记录的选择属性Ai***数据后处于分支j的数据个数;Ni表示在节点i上记录的数据总个数;K表示决策树用于分类的类个数;
Figure BDA0002450630800000095
表示数据实例属于类c,且在分支j上的数据实例的概率;
其中,
Figure BDA0002450630800000096
Figure BDA0002450630800000097
表示节点i得到分支j属于类c的数据实例的个数;Nij表示节点i的分支j包括的数据实例的个数;Vc(Nij)表示类c的总属性对应的分支j的所有数据的方差;
Figure BDA0002450630800000098
表示属于类c的属性是Ai的分支j的数据值;
Figure BDA0002450630800000099
表示属于类c的属性是Ai的分支j的数据值的平均值;
确定子模块,用于根据所述第一计算子模块得到的信息熵E(X)和所述第二计算子模块得到的混合信息熵E′(X),同时根据公式(4)确定所述选择属性Ai的信息熵增益I(X);
I(X)=E(X)-E′(X) (4)。
上述信息熵增益I(X)越大***可能越好,显然,给定选择属性Ai仅仅需要选择最大信息熵增益的属性作为最终的***属性即可,其操作简单,节省时间,进一步提高构建决策树的效率。
上述技术方案的有益效果是:通过对目标数据构成的属性集合中的每个选择属性进行信息熵增益的获取,便于实现对每个选择属性的精确控制,提高选择***属性的可靠性,为后续构建基于映射-规约结构的决策树算法提供重要的数据基础,同时,采用上述方法获得的信息熵增益相比较传统的方式获得的信息熵增益,适应性更强,更具备优势。
本发明实施例提供一种基于云计算的分布式决策树学习***,还包括:
排序模块,用于基于所述确定子模块确定的信息熵增益,获取从对应的所述映射节点抽取的所有第一目标数据对对应的信息熵增益,并对获取的与第一目标数据对对应的所有信息熵增益进行优先级排序,得到优先级排序结果中的最大信息熵增益;
其中,所述最大信息熵增益对应的选择属性作为第一***属性。
如:存在数据输入节点a1、a2和a3,其中,数据输入节点a1、a2与映射节点b1建立连接关系,数据输入节点a3与映射节点b2建立连接关系,且映射节点b1抽取的第一目标数据对即是从数据输入节点a1、a2中抽取的,映射节点b2抽取的第一目标数据对即是从数据输入节点a3中抽取的,如果对应的映射节点b1和b2分别对应有规约节点,则获取若干个不同的***属性;如果对应的映射节点b1和b2对应有一个规约节点,则根据抽取的目标数据对获取若干个***属性,所以,当获取若干个***属性后,可以对其的信息熵增益进行优先级排序,获取最大的信息熵增益,便于构建策树的节点。
Master节点通过对所有的Reduce节点给出的最佳(Nodei,Aj,v)根据其v值进行排序,选择最大的v对应的Aj作为Nodei的***属性,重复以上步骤,直到决策树构建工作完成为止。
上述技术方案的有益效果是:便于有效的确定与规约节点间接对应的数据输入节点,其对应的最大信息熵增益,便于为后续构建决策树的节点提供便利。
本发明实施例提供一种基于云计算的分布式决策树学习***,还包括:
合并模块,用于基于规约节点,获取从对应所述映射节点抽取的所有第一目标数据对,并将具有第一相同信息的第一目标数据对进行合并处理,同时对合并处理后的具有第二相同信息的第一目标数据中的混合信息熵增益进行累加处理,得到总增益v;
v=v1+v2+v3…+vm (5);
其中,vm表示具有第二相同信息的第m个第一目标数目的混合信息熵增益。
在分布式云计算***中,每个Map节点都会得到一个信息熵增益,Im(X)=Em(X)-Em′(X),这个增益就是(Nodei,Aj,v)中的v值,也是Key-Value中的Value值。但是由于Map节点不是一个,那么最终Reduce节点负责把对应的所有的具有同样的Key的(Nodei,Aj,v)合并,对混合信息熵增益进行累加,即v=v1+v2+v3…+vm
上述技术方案的有益效果是:便于针对同个映射节点对应的所有数据输入节点的信息熵增益进行累加,为确定最优***属性提供数据基础。
本发明实施例提供一种基于云计算的分布式决策树学习***,还包括:
汇总模块,用于获取所有的根据所述排序模块得到的最大信息熵增益进而确定的第一***属性,对获取的所有第一***属性进行汇总处理,得到最优划分属性;
第二构建模块,用于根据所述最优划分属性,并自顶向下逐层构建所述决策树的节点集合,并根据构建的所述节点集合,来实现对所述决策树的构建;
其中,所述决策树的节点,是基于所述选择属性构成的。
上述进行汇总处理,是根据规约节点和排序模块的输出结果,进行的信息熵增益的汇总,进而确定的最优划分属性;且如图3所述,为根据最优划分属性,自顶向下逐层构建节点集合,进而构建的决策树。
上述技术方案的有益效果是:便于根据最优划分属性,有效确定节点结合,进而构建决策树。
本发明实施例提供一种基于云计算的分布式决策树学习***,还包括:
选择模块,用于根据预设选择方式,并基于所述扫描模块构建的元属性数据库,确定第二属性集合,并从所述第二属性集合中选择第二***属性B1;
划分模块,用于根据所述选择模块选择的第二***属性B1,将预先设定的所述目标数据对应的数据集合D划分为子集合DL和DR
第一处理模块,用于判断所述划分模块划分的子集合DL是否满足第一***停止条件,若不满足,则从所述第二属性集合中选择与所述子集合DL相关的第三***属性B2,同时控制所述划分模块根据所述第三***属性B2对所述子集合DL进行再次划分,并继续执行后续操作;
第二处理模块,用于判断所述划分模块划分的子集合DR是否满足第二***停止条件,若不满足,则从所述第二属性集合中选择与所述子集合DR相关的第四***属性B3,同时控制所述划分模块根据所述第四***属性B3对所述子集合DR进行再次划分,并继续执行后续操作;
第三处理模块,用于对划分得到的所有子集合递归处理,直到完整的决策树构建完毕。
上述实施例是为了解决在云计算平台上构建决策树首先考虑的一般情况,其只是在一个计算节点上构建的能够放到内存中的决策树。假设数据的属性有n个,也就是属性集合为A={A1,A2,…,An},构建决策树就是考虑每次选择最优的属性进行数据集合***,然后构建决策树。
上述是以一个数据输入节点为基础,进行的多次***,进而根据每次***来构建传统的决策树,且其传统的决策树的构建,为后续构建Map-Reduce结构决策树,提供构建基础。
在上述实施例的基础上,来设置Map-Reduce结构,进而对其进行改善,具体阐述参见以上实施例。
上述技术方案的有益效果是:便于基于在一个节点上构建能够放到内存中的决策树,进而通过映射-规约结构对其进行改善,可支持Map-Reduce结构,可以在Hadoop平台上容易实现,且支持在大规模数据上快速构建决策树;还具有非常强的工程实用价值。
本发明实施例提供一种基于云计算的分布式决策树学习***,
所述数据输入节点,用于基于云计算分布式平台,存储所述目标数据,所述目标数据包括:原始数据、属性数据、元属性数据和决策树模型;
所述映射节点,用于对所述数据输入节点存储的目标数据进行映射处理;
所述规约节点,用于对所述映射节点的映射处理结果进行规约处理,其中,所述映射处理结果为规约节点可进行规约处理的目标结构;
所述主备节点,用于在所述映射节点进行映射处理及所述规约节点进行规约处理时,控制所述映射节点和规约节点进行分布式算法的运行调度;
其中,所述目标结构与所述决策树模型的结构数据相对应。
如图4所示,在该实施例中,数据输入节点用于保存数据,包括原始数据、属性数据、元属性数据,决策树模型(包括中间状态的模型对应的结构数据)。Map节点用来做Key-Value(关键字-值)映射,就是把原始数据进行处理映射成为能够让Reduce节点规约处理的Key-Value(关键字-值)结构;
Master节点用于对Map节点和Reduce节点进行分布式算法的运行调度控制。
上述运行调度控制,可以是当映射节点进行映射处理时或者规约节点进行规约处理时,对其处理采用的算法进行调度控制,或者是对其处理的时间进行调度控制等。
上述技术方案的有益效果是:为构建决策树,提供有效的技术基础。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (9)

1.一种基于云计算的分布式决策树学习***,其特征在于,包括:
分布模块,用于将目标数据随机分布到若干个数据输入节点;
扫描模块,用于在所述分布模块执行分布操作之前,对所述目标数据进行扫描处理,并构建元属性数据库;
抽取模块,用于当主备节点向映射节点发送第一任务请求时,控制所述映射节点根据所述第一任务请求,并基于所述元属性数据库,从对应的数据输入节点中抽取第一目标数据对;
输出模块,用于当所述主备节点向规约节点发送第二任务请求时,控制所述规约节点根据所述第二任务请求,并基于信息熵增益方法,从对应的所述映射节点抽取的第一目标数据对中选择相应的第一***属性,并输出与第一***属性相关的第二目标数据对;
记录模块,用于记录根据所述输出模块输出的第二目标数据对,确定的决策位置,并将所述第二目标数据对保存到与决策位置相关的模型数据节点中;
第一构建模块,用于根据所述输出模块的输出结果和所述记录模块的记录结果构建决策树,并控制所述抽取模块、输入模块和记录模块重复执行相应的操作,直到所述决策树构建完成。
2.如权利要求1所述的***,其特征在于,还包括:
确定模块,用于在所述抽取模块执行抽取操作之前,确定基于所述元属性数据库确定的第一属性集合A中的每个选择属性的信息熵增益;
所述确定模块,包括:
第一计算子模块,用于当选择属性Ai***数据前,根据公式(1)计算得到所述选择属性Ai***数据前对应的第一数据的信息熵E(X);
Figure FDA0002450630790000011
其中,pg表示处于类g的训练数据实例的概率,即若所述目标数据对应的数据集合D中有N个数据实例,处于决策树中,用于分类的总G类中,且属于类g的数据实例个数是Ng,则
Figure FDA0002450630790000021
第二计算子模块,用于当所述选择属性Ai***数据后,根据公式(2)和(3)得到所述选择属性Ai***数据后对应的第二数据的混合信息熵E′(X);
Figure FDA0002450630790000022
Figure FDA0002450630790000023
其中,n表示选择属性Ai***数据后得到的分支个数;Nij表示记录的选择属性Ai***数据后处于分支j的数据个数;Ni表示在节点i上记录的数据总个数;K表示决策树用于分类的类个数;
Figure FDA0002450630790000024
表示数据实例属于类c,且在分支j上的数据实例的概率;
其中,
Figure FDA0002450630790000025
Figure FDA0002450630790000026
表示节点i得到分支j属于类c的数据实例的个数;Nij表示节点i的分支j包括的数据实例的个数;Vc(Nij)表示类c的总属性对应的分支j的所有数据的方差;
Figure FDA0002450630790000027
表示属于类c的属性是Ai的分支j的数据值;
Figure FDA0002450630790000028
表示属于类c的属性是Ai的分支j的数据值的平均值;
确定子模块,用于根据所述第一计算子模块得到的信息熵E(X)和所述第二计算子模块得到的混合信息熵E′(X),同时根据公式(4)确定所述选择属性Ai的信息熵增益I(X);
I(X)=E(X)-E′(X) (4)。
3.如权利要求2所述的***,其特征在于,还包括:
排序模块,用于基于所述确定子模块确定的信息熵增益,获取从对应的所述映射节点抽取的所有第一目标数据对对应的信息熵增益,并对获取的与第一目标数据对对应的所有信息熵增益进行优先级排序,得到优先级排序结果中的最大信息熵增益;
其中,所述最大信息熵增益对应的选择属性作为第一***属性。
4.如权利要求1所述的***,其特征在于,
所述第一目标数据对包括:所述第一目标数据所处位置的节点及节点标号、与第一目标数据相关的属性及属性名称、所述属性的信息熵增益值。
5.如权利要求2所述的***,其特征在于,还包括:
合并模块,用于基于规约节点,获取从对应所述映射节点抽取的所有第一目标数据对,并将具有第一相同信息的第一目标数据对进行合并处理,同时对合并处理后的具有第二相同信息的第一目标数据中的混合信息熵增益进行累加处理,得到总增益v;
v=v1+v2+v3…+vm (5);
其中,vm表示具有第二相同信息的第m个第一目标数目的混合信息熵增益。
6.如权利要求3所述的***,其特征在于,还包括:
汇总模块,用于获取所有的根据所述排序模块得到的最大信息熵增益进而确定的第一***属性,对获取的所有第一***属性进行汇总处理,得到最优划分属性;
第二构建模块,用于根据所述最优划分属性,并自顶向下逐层构建所述决策树的节点集合,并根据构建的所述节点集合,来实现对所述决策树的构建;
其中,所述决策树的节点,是基于所述选择属性构成的。
7.如权利要求1所述的***,其特征在于,还包括:
元属性数据节点,用于存放所述扫描模块构建的的元属性数据库;
所述模型数据节点,用于存放与所述第一构建模块构建的决策树相关的最终决策树模型。
8.如权利要求1所述的***,其特征在于,还包括:
选择模块,用于根据预设选择方式,并基于所述扫描模块构建的元属性数据库,确定第二属性集合,并从所述第二属性集合中选择第二***属性B1;
划分模块,用于根据所述选择模块选择的第二***属性B1,将预先设定的所述目标数据对应的数据集合D划分为子集合DL和DR
第一处理模块,用于判断所述划分模块划分的子集合DL是否满足第一***停止条件,若不满足,则从所述第二属性集合中选择与所述子集合DL相关的第三***属性B2,同时控制所述划分模块根据所述第三***属性B2对所述子集合DL进行再次划分,并继续执行后续操作;
第二处理模块,用于判断所述划分模块划分的子集合DR是否满足第二***停止条件,若不满足,则从所述第二属性集合中选择与所述子集合DR相关的第四***属性B3,同时控制所述划分模块根据所述第四***属性B3对所述子集合DR进行再次划分,并继续执行后续操作;
第三处理模块,用于对划分得到的所有子集合递归处理,直到完整的决策树构建完毕。
9.如权利要求1所述的***,其特征在于,
所述数据输入节点,用于基于云计算分布式平台,存储所述目标数据,所述目标数据包括:原始数据、属性数据、元属性数据和决策树模型;
所述映射节点,用于对所述数据输入节点存储的目标数据进行映射处理;
所述规约节点,用于对所述映射节点的映射处理结果进行规约处理,其中,所述映射处理结果为规约节点可进行规约处理的目标结构;
所述主备节点,用于在所述映射节点进行映射处理及所述规约节点进行规约处理时,控制所述映射节点和规约节点进行分布式算法的运行调度;
其中,所述目标结构与所述决策树模型的结构数据相对应。
CN202010291696.3A 2020-04-14 2020-04-14 一种基于云计算的分布式决策树学习*** Active CN111695588B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010291696.3A CN111695588B (zh) 2020-04-14 2020-04-14 一种基于云计算的分布式决策树学习***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010291696.3A CN111695588B (zh) 2020-04-14 2020-04-14 一种基于云计算的分布式决策树学习***

Publications (2)

Publication Number Publication Date
CN111695588A true CN111695588A (zh) 2020-09-22
CN111695588B CN111695588B (zh) 2021-03-23

Family

ID=72476280

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010291696.3A Active CN111695588B (zh) 2020-04-14 2020-04-14 一种基于云计算的分布式决策树学习***

Country Status (1)

Country Link
CN (1) CN111695588B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117075884A (zh) * 2023-10-13 2023-11-17 南京飓风引擎信息技术有限公司 一种基于可视化脚本的数字化处理***及方法

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102054002A (zh) * 2009-10-28 2011-05-11 ***通信集团公司 一种数据挖掘***中决策树的生成方法及装置
JP2011170774A (ja) * 2010-02-22 2011-09-01 Nippon Telegr & Teleph Corp <Ntt> 決定木生成装置、決定木生成方法、及びプログラム
CN102214213A (zh) * 2011-05-31 2011-10-12 中国科学院计算技术研究所 一种采用决策树的数据分类方法和***
CN103577555A (zh) * 2013-10-21 2014-02-12 汕头大学 一种基于车联网的大数据分析方法
CN104392250A (zh) * 2014-11-21 2015-03-04 浪潮电子信息产业股份有限公司 一种基于MapReduce的图像分类方法
CN104679911A (zh) * 2015-03-25 2015-06-03 武汉理工大学 一种基于离散弱相关的云平台决策森林分类方法
CN105808582A (zh) * 2014-12-30 2016-07-27 华为技术有限公司 基于分层策略的决策树并行生成方法和装置
CN106484844A (zh) * 2016-09-30 2017-03-08 广州特道信息科技有限公司 大数据挖掘方法及***
CN107817787A (zh) * 2017-11-29 2018-03-20 华南理工大学 一种基于机器学习的智能产线机械手故障诊断方法
CN108170769A (zh) * 2017-12-26 2018-06-15 上海大学 一种基于决策树算法的装配制造质量数据处理方法

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102054002A (zh) * 2009-10-28 2011-05-11 ***通信集团公司 一种数据挖掘***中决策树的生成方法及装置
JP2011170774A (ja) * 2010-02-22 2011-09-01 Nippon Telegr & Teleph Corp <Ntt> 決定木生成装置、決定木生成方法、及びプログラム
CN102214213A (zh) * 2011-05-31 2011-10-12 中国科学院计算技术研究所 一种采用决策树的数据分类方法和***
CN103577555A (zh) * 2013-10-21 2014-02-12 汕头大学 一种基于车联网的大数据分析方法
CN104392250A (zh) * 2014-11-21 2015-03-04 浪潮电子信息产业股份有限公司 一种基于MapReduce的图像分类方法
CN105808582A (zh) * 2014-12-30 2016-07-27 华为技术有限公司 基于分层策略的决策树并行生成方法和装置
CN104679911A (zh) * 2015-03-25 2015-06-03 武汉理工大学 一种基于离散弱相关的云平台决策森林分类方法
CN106484844A (zh) * 2016-09-30 2017-03-08 广州特道信息科技有限公司 大数据挖掘方法及***
CN107817787A (zh) * 2017-11-29 2018-03-20 华南理工大学 一种基于机器学习的智能产线机械手故障诊断方法
CN108170769A (zh) * 2017-12-26 2018-06-15 上海大学 一种基于决策树算法的装配制造质量数据处理方法

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
JIN XIAO 等: "A Hybrid Classification Framework Based on Clustering", 《IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS》 *
YASHUANG MU 等: "A parallel C4.5 decision tree algorithm based on MapReduce", 《CONCURRENCY AND COMPUTATION》 *
李根 等: "基于Map/Reduce的决策树分类挖掘方法应用研究", 《计算机与数字工程》 *
林树地 等: "基于 Hadoop 的 C4.5 决策树分类算法并行化", 《微型机与应用》 *
陆秋 等: "基于 MapReduce 的决策树算法并行化", 《计算机应用》 *
龙志勇: "基于并行化的决策树算法优化及其应用研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117075884A (zh) * 2023-10-13 2023-11-17 南京飓风引擎信息技术有限公司 一种基于可视化脚本的数字化处理***及方法
CN117075884B (zh) * 2023-10-13 2023-12-15 南京飓风引擎信息技术有限公司 一种基于可视化脚本的数字化处理***及方法

Also Published As

Publication number Publication date
CN111695588B (zh) 2021-03-23

Similar Documents

Publication Publication Date Title
US20210150372A1 (en) Training method and system for decision tree model, storage medium, and prediction method
US7627542B2 (en) Group identification in large-scaled networks via hierarchical clustering through refraction over edges of networks
CN103226762B (zh) 一种基于云计算平台的物流配送方法
CN110096472A (zh) 节点集群中管理节点的选择
CN115755954B (zh) 巡检路径规划方法、***、计算机设备及存储介质
CN112906865B (zh) 神经网络架构搜索方法、装置、电子设备及存储介质
CN110222248A (zh) 一种大数据聚类方法及装置
CN111695588B (zh) 一种基于云计算的分布式决策树学习***
CN116302539A (zh) 一种边缘计算场景下的模型并行方法、***、设备及介质
CN111597023B (zh) 一种基于学习状态的集群智能调度方法及装置
CN117582652A (zh) 围棋人机对弈方法、装置、计算机设备及存储介质
CN111444007B (zh) 基于云计算的遥感大数据自动化处理方法
CN103823843B (zh) 一种高斯混合模型树及其递增聚类方法
CN114691630B (zh) 一种智慧供应链大数据共享方法及***
US9361588B2 (en) Construction of tree-shaped bayesian network
CN110019830B (zh) 语料处理、词向量获取方法及装置、存储介质及设备
CN114418120A (zh) 联邦树模型的数据处理方法、装置、设备及存储介质
CN114691302A (zh) 一种面向大数据处理的动态缓存替换方法及设备
CN114610758A (zh) 基于数据仓库的数据处理方法、装置、可读介质及设备
JP6047190B2 (ja) リレーショナルモデルを決定するプログラムと装置
CN112948087A (zh) 一种基于拓扑排序的任务调度方法及***
CN112818241A (zh) 一种内容推广方法、装置、计算机设备和存储介质
CN113706325B (zh) 一种面向事件社交网络的规划方法及***
CN110176279A (zh) 基于小样本的先导化合物虚拟筛选方法和装置
CN116108757B (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
GR01 Patent grant
GR01 Patent grant
PP01 Preservation of patent right
PP01 Preservation of patent right

Effective date of registration: 20211124

Granted publication date: 20210323