发明名称 一种采用决策树的数据分类方法和系统
摘要 本发明公开了一种采用决策树的数据分类方法和系统。所述方法,包括下列步骤:基于MapReduce机制,并行计算训练数据中包含的每个属性的信息增益,选出最佳的分裂决策属性作为节点构造决策树;根据所述决策树,对输入的数据记录进行分类。其实现了基于MapReduce的并行决策树ID3算法,不仅可以处理大规模数据集,而且并行效率高,即实现构建决策树中节点内部以及同一层节点之间的并行计算。
申请公布号 CN102214213B 申请公布日期 2013.06.19
申请号 CN201110143821.7 申请日期 2011.05.31
申请人 中国科学院计算技术研究所 发明人 庄福振;何清
分类号 G06F17/30(2006.01)I 主分类号 G06F17/30(2006.01)I
代理机构 北京律诚同业知识产权代理有限公司 11006 代理人 祁建国;梁挥
主权项 一种采用决策树的数据分类方法,其特征在于,所述方法,包括下列步骤:步骤100,基于MapReduce机制,并行计算训练数据中包含的每个属性的信息增益,选出最佳的分裂决策属性作为节点构造决策树;其中,在进行属性的信息增益计算时采用MapReduce机制采集数据,在MapReduce机制的Map函数中,根据头文件信息对读入的每一行样本进行解析,产生中间的<key,value>对,key为前缀信息+类别信息+条件属性的名字+条件属性的值或者前缀信息+类别信息,若没有前缀信息,则为空,value为1,MapReduce机制的Map函数的输入key和value分别为样本的在分布式文件系统上偏移位置和样本本身,MapReduce机制的Reduce函数对中间<key,value>对进行融合;步骤200,根据所述决策树,对输入的数据记录进行分类;其中,所述步骤100,包括下列步骤:步骤110,启动一个进程,计算训练数据中包含的每个属性的信息增益,选出最大值作为根节点的分裂属性,并计算决策规则以及传给第一层的前缀信息:步骤120,判断是否产生了新的决策规则,若是,则将产生的新的决策规则保存到规则集中,同时删除当前训练数据中包含该规则的样本,产生新的数据集,执行步骤130;否则,执行步骤130;步骤130,判断是否产生新的前缀信息,若是,则执行步骤140;否则执行步骤160;步骤140,决策树层数加一,判断当前决策树的层数是否小于训练数据中包含的所有属性的总数,若是,则执行步骤150;否则执行步骤160;步骤150,启动一个新的进程,计算在当前前缀信息下,当前训练数据中包含的每个属性的信息增益,选出最大值作为当前节点的分裂属性,并计算决策规则以及传给下一层的前缀信息,返回步骤120;步骤160,结束训练,根据计算得到的决策规则构建决策树。
地址 100080 北京市海淀区中关村科学院南路6号