C4.5算法概述讲解学习
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C4.5算法概述
目录
1 决策树算法 (3)
1.1 具体应用场景和意义 (3)
1.2 现状分析 (5)
2 C4.5算法对ID3算法的改进 (6)
3 C4.5算法描述 (9)
3.1 C4.5算法原理 (9)
3.2 算法框架 (11)
3.3 C4.5算法伪代码 (12)
4 实例分析 (13)
5 C4.5算法的优势与不足 (15)
5.1 C4.5算法的优势 (15)
5.2 C4.5算法的不足: (16)
参考文献 (16)
C4.5算法综述
摘要
最早的决策树算法是由Hunt等人于1966年提出的CLS。当前最有影响的决策树算法是Quinlan于1986年提出的ID3和1993年提出的C4.5。ID3只能处理离散型描述属性,它选择信息增益最大的属性划分训练样本,其目的是进行分枝时系统的熵最小,从而提高算法的运算速度和精确度。ID3算法的主要缺陷是,用信息增益作为选择分枝属性的标准时,偏向于取值较多的属性,而在某些情况下,这类属性可能不会提供太多有价值的信息。C4.5是ID3算法的改进算法,不仅可以处理离散型描述属性,还能处理连续性描述属性。C4.5采用了信息增益比作为选择分枝属性的标准,弥补了ID3算法的不足。
C4.5算法在ID3算法的基础上进行了改进,对于预测变量的缺值处理、剪枝技术、派生规则等方面作了较大的改进,既适合于分类问题,又适合于回归问题,是目前应用最为广泛的归纳推理算法之一,在数据挖掘中收到研究者的广泛关注。
1 决策树算法
1.1具体应用场景和意义
决策树(Decision Tree)是用于分类和预测的主要技术,它着眼于从一组无规则的事例推理出决策树表示形式的分类规则,采用自顶向下的递归方式,在决策树的内部节点进行属性值的比较,并根据不同属性判断从该节点向下分支,在决策树的叶节点得到结论。因此,从根节点到叶节点就对应着一条合理规则,整棵树就对应着一组表达式规则。基于决策树算法的一个最大的优点是
它在学习过程中不需要使用者了解很多背景知识,只要训练事例能够用属性即结论的方式表达出来,就能使用该算法进行学习。
决策树算法在很多方面都有应用,如决策树算法在医学、制造和生产、金融分析、天文学、遥感影像分类和分子生物学、机器学习和知识发现等领域得到了广泛应用。
决策树技术是一种对海量数据集进行分类的非常有效的方法。通过构造决策树模型,提取有价值的分类规则,帮助决策者做出准确的预测已经应用在很多领域。决策树算法是一种逼近离散函数值的方法。它是一种典型的分类方法,首先对数据进行处理,利用归纳算法生成可读的规则和决策树,然后对新数据进行分析。本质上决策树是通过一系列规则对数据进行分类的过程。
决策树的典型算法有ID3、C4.5和CART等,基于决策树的分类模型有如下几个特点:(1)决策树方法结构简单,便于理解;(2)决策树模型效率高,对训练集较大的情况较为适合;(3)决策树方法通常不需要接受训练集数据外的知识;(4)决策树方法具有较高的分类精确度。
在决策树算法中,最常用的、最经典的是C4.5算法,它在决策树算法中的主要优点是:形象直观。该算法通过两个步骤来建立决策树:树的生成阶段和树的剪枝阶段。该算法主要基于信息论中的熵理论。熵在系统学上是表示事物的无序度,是系统混乱程度的统计量。C4.5基于生成的决策树中节点所含的信息熵最小的原理。它把信息增益率作为属性选择的度量标准,可以得出很容易理解的决策规则。
1.2 现状分析
决策树技术是迄今为止发展最为成熟的一种概念学习方法。它最早产生于二十世纪60年代,是由Hunt等人研究人类概念建模时建立的学习系统(CLS,Concept Learning System),到70年代末,J Ross Quinlan提出ID3算法,此算法的目的在于减少树的深度。但是忽略了叶子数目的研究。1975年和1984年,分别有人提出CHAID(Chi-squared Automatic Interaction Detection)和CART(Classification and Regression Tree,亦称BFOS)算法。1986年,J.C.Schlimmer提出ID4算法。1988年,P.E.Utgoff提出ID5R算法。1993年,Quinlan本人以ID3算法为基础研究出C4.5/C5.0算法,C4.5算法在ID3算法的基础上进行了改进,对于预测变量的缺值处理、剪枝技术、派生规则等方面作了较大的改进,既适合于分类问题,又适合于回归问题,因而是目前应用最为广泛的归纳推理算法之一,在数据挖掘中收到研究者的广泛关注。
数据挖掘需要选择复杂度低的算法和并行高效的策略,复杂度低的算法包括尽量把全局最优问题转化成局部最优的问题和近似线性或尽量低阶的多项式复杂度算法等,而高效并行的策略包括需要有高超的递归改为循环的技巧和尽量避免使用全局信息等。
现在研究者们还在继续研究改进的决策树算法,对于C4.5算法研究人员们从不同的角度对其进行了相应的改进,其中有针对C4.5算法处理连续型属性比较耗时的改进,利用数学上的等价无穷小提高信息增益率的计算效率等等方面。本报告时针对C4.5算法本身进行的分析和算法实现,同时会考虑进一步的深入学习。
2 C4.5算法对ID3算法的改进
决策树构造的输入是一组带有类别标记的例子,构造的结果是一棵二叉树或多叉树。二叉树的内部节点(非叶子节点)一般表示为一个逻辑判断,如形式为a=a j的逻辑判断,其中a是属性,a j是该属性的所有取值:树的边是逻辑判断的分支结果。多叉树(ID3)的内部结点是属性,边是该属性的所有取值,有几个属性值就有几条边。树的叶子节点都是类别标记。
由于数据表示不当、有噪声或者由于决策树生成时产生重复的子树等原因,都会造成产生的决策树过大。因此,简化决策树是一个不可缺少的环节。寻找一棵最优决策树,主要应解决以下3个最优化问题:①生成最少数目的叶子节点;②生成的每个叶子节点的深度最小;③生成的决策树叶子节点最少且每个叶子节点的深度最小。
ID3算法是一种经典的决策树算法,它从根节点开始,根节点被赋予一个最好的属性。随后对该属性的每个取值都生成相应的分支,在每个分支上又生成新的节点。对于最好的属性的选择标准,ID3采用基于信息熵定义的信息增益来选择内节点的测试属性,熵(Entropy)刻画了任意样本集的纯度。
ID3算法存在的缺点:(1)ID3算法在选择根节点和内部节点中的分支属性时,采用信息增益作为评价标准。信息增益的缺点是倾向于选择取值较多是属性,在有些情况下这类属性可能不会提供太多有价值的信息。(2)ID3算法只能对描述属性为离散型属性的数据集构造决策树。
ID3算法的局限是它的属性只能取离散值,为了使决策树能应用与连续属性值,Quinlan给出了ID3的一个扩展算法,即C4.5算法。C4.5算法是ID3的改进,其中属性的选择依据同ID3。它对于实值变量的处理与接下来论述的