决策树学习研究综述

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

科技论坛

决策树学习研究综述

叶萌

(黑龙江电力职工大学,黑龙江哈尔滨150030)

1概述

决策树是构建人工智能系统的主要方法之一,随着数据挖掘技术在商业智能等方面的应用,决策树技术将在未来发挥越来越强大的作用[1]。自从Quinlan 在1979年提出构造决策树ID3算法以来,决策树的实现已经有很多算法,常见的有:CLS (concept learning system )学习算法,ID4、ID5R 、C4.5算法,以及CART 、C5.0、FuzzyC4.5、0C1、QUEST 和CAL5等[2]。

现在,许多学者在规则学习与决策树学习的结合方面,做了大量的研究工作。Brako 等的ASSISTANT ,将AQ15中的近似匹配方法引入决策树中。Clark 等的CN2,将ID3算法和AQ 算法编织在一起,用户可选择其中任何一种算法使用。Utgoff 等的ID5R 算法,不要求一次性提供所有的训练实例,训练实例可以逐次提供,生成的决策树逐次精化,以支持增量式学习。洪家荣教授结合实际应用问题对ID3算法作了一些改进,提出了两个ID3和AQ 结合的改进算法,IDAQ 和AQID ,此外,还陆续出现了处理大规模数据集的决策树算法,如SLIQ ,SPRINT 等等[3]。

2决策树算法研究2.1构造决策树算法

决策树学习是从无次序、无规则的样本数据集中推理出决策树表示形式、逼近离散值目标函数的分类规则方法。它采用自顶向下的递归方式,在决策树的内部结点进行属性值的比较并根据不同的属性值判断从该结点向下的分支,在决策树的叶结点得到结论,因此从根结点到叶结点的一条路径就对应着一条规则,整棵决策树就对应着一组表达式规则。我们可将决策树看成是定义布尔函数的一种方法。其输入是一组属性描述的对象,输出为yes/no 决策。决策树代表一个假设,可以写成逻辑公式。决策树的表达能力限于命题逻辑,该对象的任一个属性的任一次测试均是一个命题。在命题逻辑范围内,决策树的表达能力是完全的。一棵决策树可以代表一个决定训练例集分类的决策过程,树的每个结点对应于一个属性名或一个特定的测试,该测试在此结点根据测试的可能结果对训练例集进行划分。划分出的每个部分都对应于相应训练例集子空间的一个分类子问题,该分类子问题可以由一棵决策树来解决。因此,一

棵决策树可以看作是一个对目标分类的划分和获取策略[4]

2.2处理大规模数据集的决策树算法

ID3或者C4.5算法都是在建树时将训练集一次性装载入内存的。但当面对大型的有着上百万条纪录的数据库时,就无法实际应用这些算

法。针对这一问题,

前人提出了不少改进方法,如数据采样法、连续属性离散化法或将数据分为若干小块分别建树然后综合成一个最终的树,但这些改进都以降低了树的准确性为代价。直到M etha,Agrawal 和Ris-sane 在1996年提出了SLIQ 方法,以及在此基础上进行改进得到的SPRINT [6]方法。

3决策树学习的常见问题3.1过度拟合

在利用决策树归纳学习时,需要事先给定一个假设空间,且必须在这个假设空间中选择一个,使之与训练实例集相匹配。我们知道任何一个学习算法不可能在没有任何偏置的情况下学习。如果事先知道所要学习的函数属于整个假设空间中的一个很小的子集,那么即使训练实例不完整,也有可能从已有的训练实例集中学习到有用的假设,使它对未来的实例进行正确的分类。当然,我们往往无法事先知道所要学习的函数属于整个假设空间中的哪个很小的子集,即使是知道,我们还是希望有一个大的训练实例集。因为训练实例集越大,关于分类的信息就越多。这时,即使随机地从与训练实例集相匹配的假设集中选择一个,它也能对未知实例的分类进行预测。相反,如果训练实例集与整个假设空间相比

过小,即使在有偏置的情况下,仍有过多的假设与训练实例集相匹配,这

时作出假设的泛化能力将很差。当有过多的假设与训练实例集相匹配,便称为过度拟合(overfit )。

3.2树剪枝

对决策树进行修剪可以控制决策树的复杂程度,避免决策树过于复

杂和庞大。此外,

还可以解决过度拟合的问题。修剪决策树有多种算法,通常分为这样五类。最为常用的是通过预

剪枝(pre-pruning

)和后剪枝(post-pruning )完成,或逐步调整树的大小;其次是扩展测试集方法,首先按特征构成是数据驱动还是假设驱动的差别,将建立的特征组合或分割,然后在此基础上引进多变量测试集。第三类方法包括选择不同的测试集评价函数,通过改善连续特征的描述或修改搜索算法本身实现;第四类方法使用数据库约束,即通过削减数据库或实例描述特征集来简化决策树;第五类方法是将决策树转化成另一种数据结构。这些方法通常可以在同另一种算法相互结合中,增强各自的功能。

4决策树在工程中的应用

决策树在工程中的诸多领域获得了非常广泛的应用,主要有以下几个方面:

4.1决策树技术应用于机器人导航

E.Swere 和D .J.M ulvaney 将决策树技术应用于移动机器人导航并取得了一定的成功。

4.2决策树技术应用于地铁中的事故处理

法国的Brezillon 等人成功地将决策树技术应用于地铁交通调度智能系统。他们根据决策树的基本思想开发出上下文图表来帮助驾驶员针对事故做出正确的处理。

4.3决策树技术应用于图像识别

决策树技术应用于包括图像在内的科学数据分析。如利用决策树对上百万个天体进行分类,利用决策树对卫星图像进行分析以估计落叶林和针叶林的基部面积值。

4.4决策树应用于制造业

决策树技术已经成功应用于焊接质量的检测以及大规模集成电路

的设计,它不仅可以规划印刷电路板的布线,

波音公司甚至将它用于波音飞机生产过程的故障诊断以及质量控制。

5决策树技术面临的问题和挑战发展至今,决策树技术面临的问题和挑战表现在以下几个方面:5.1决策树方法的效率亟待提高

数据挖掘面临的数据往往是海量的,对实时性要求较高的决策场所,数据挖掘方法的主动性和快速性显得日益重要。应用实时性技术、主动数据库技术和分布并行算法设计技术等现代计算机先进技术,是数据挖掘方法实用化的有效途径。

5.2适应多数据类型、容噪的决策树挖掘方法随着计算机网络和信息的社会化,数据挖掘的对象已不是关系数据库模型,而是分布、异构的多类型数据库,数据的非结构化程度、噪声等现象越来越突出,这也是决策树技术面临的困难问题。

6结论

决策树技术早已被证明是利用计算机模仿人类决策的有效方法,已经得到广泛的应用,并且已经有了许多成熟的系统。但是,解决一个复杂的数据挖掘问题的任何算法都要面临以下问题:从错误的数据中学习、从分布的数据中学习、从有偏的数据中学习、学习有弹性的概念、学习那些抽象程度不同的概念、整合定性与定量的发现等,因此,还有很多未开

发的课题等待研究。若将决策树技术与其他新兴

摘要:决策树分类学习算法是使用广泛、实用性很强的归纳推理方法之一,在机器学习、数据挖掘等人工智能领域有相当重要的理

论意义与实用价值。在详细阐述决策树技术的几种典型算法以及它的一些常见问题后,

介绍了它在工程上的实际应用,最后提出了它的研究方向以及它所面临的问题和挑战。

关键词:决策树;决策树算法;ID3;C4.5;SLIQ ;SPRINT (下转156页)22··

相关文档
最新文档