C4.5算法

C4.5是一套用来处理分类问题的算法,属于有监督学习的类型,每个实例由一组属性来描述,每个实例仅属于一个类别。

如下是一个数据集

算法的发展历史

J.Ross Quinlan设计的C4.5算法源于名为ID3的一种决策树诱导算法。

而ID3是迭代分解器(iterative dichotomizers)系列算法的第3代。

除了可以分类之外,C4.5还可以具有良好可理解性的规则。

Friedman的Original Tree算法。

Breiman,Olshen和Stone的呢个人参与下发展为CART算法。

CLS(概念学习系统)对于ID3和C4.5的发展也有贡献。

而如今C4.5已被See5/C5.0所取代(Rulequest Research公司的商用产品)。

算法描述

C4.5不是单一的算法,而是泛指C4.5、C4.5-no-pruning等具有诸多遍体的一整套算法。

算法分解:

Step 1、算法的输入是带有属性值的数据集D

Step 2、首先将决策树Tree置为空

Step 3、如果数据集D为纯的或者已经达到了满足终止的准则,那么终止程序,否则转入Step 4

Step 4、对D中所有的属性计算出一个以属性来分类的值

Step 5、根据上面计算出来的值,根据一定的准备选出最佳的分类属性

Step 6、根据选出来的属性创建一个决策节点,并将其加入到树Tree中

Step 7、该决策节点会将数据集分成若干个子数据集Dsub

Step 8、递归对该数据集进行操作,将得到子树Treesub,并将Treesub加入到Tree中

从根节点上开始在每个节点上测试一个特定的属性,把节点数据划分为更小的子集,并用子树表示;该过程一直进行,直到子集成为纯的,即子集中的所有实例都属于同一类别,树才停止增长。

如果属性是离散的话,就直接分叉;如果属性是连续值,那么就要选择一个合适的判定阈值。

时间: 2024-10-11 12:39:20

C4.5算法的相关文章

决策树-预测隐形眼镜类型 (ID3算法,C4.5算法,CART算法,GINI指数,剪枝,随机森林)

1. 1.问题的引入 2.一个实例 3.基本概念 4.ID3 5.C4.5 6.CART 7.随机森林 2. 我们应该设计什么的算法,使得计算机对贷款申请人员的申请信息自动进行分类,以决定能否贷款? 一个女孩的母亲要给这个女孩介绍男朋友,于是有了下面的对话: 女儿:多大年纪了? 母亲:26. 女儿:长的帅不帅? 母亲:挺帅的. 女儿:收入高不? 母亲:不算很高,中等情况. 女儿:是公务员不? 母亲:是,在税务局上班呢. 女儿:那好,我去见见. 决策过程: 这个女孩的决策过程就是典型的分类树决策.

决策树之C4.5算法学习

决策树<Decision Tree>是一种预测模型,它由决策节点,分支和叶节点三个部分组成.决策节点代表一个样本测试,通常代表待分类样本的某个属性,在该属性上的不同测试结果代表一个分支:分支表示某个决策节点的不同取值.每个叶节点代表一种可能的分类结果. 使用训练集对决策树算法进行训练,得到一个决策树模型,利用模型对未知样本(类别未知)的类别判断时,从决策树根节点开始,从上到下搜索,直到沿某分支到达叶节点,叶节点的类别标签就是该未知样本的类别. 网上有个例子可以很形象的说明利用决策树决策的过程(

决策树-C4.5算法(三)

在上述两篇的文章中主要讲述了决策树的基础,但是在实际的应用中经常用到C4.5算法,C4.5算法是以ID3算法为基础,他在ID3算法上做了如下的改进: 1) 用信息增益率来选择属性,克服了用信息增益选择属性时偏向选择取值多的属性的不足,公式为GainRatio(A): 2) 在树构造过程中进行剪枝: 3) 能够完成对连续属性的离散化处理: 4) 能够对不完整数据进行处理. C4.5算法与其它分类算法如统计方法.神经网络等比较起来有如下优点:产生的分类规则易于理解,准确率较高.其缺点是:在构造树的过

决策分类树算法之ID3,C4.5算法系列

一.引言 在最开始的时候,我本来准备学习的是C4.5算法,后来发现C4.5算法的核心还是ID3算法,所以又辗转回到学习ID3算法了,因为C4.5是他的一个改进.至于是什么改进,在后面的描述中我会提到. 二.ID3算法 ID3算法是一种分类决策树算法.他通过一系列的规则,将数据最后分类成决策树的形式.分类的根据是用到了熵这个概念.熵在物理这门学科中就已经出现过,表示是一个物质的稳定度,在这里就是分类的纯度的一个概念.公式为: 在ID3算法中,是采用Gain信息增益来作为一个分类的判定标准的.他的定

C4.5算法总结

C4.5是一系列用在机器学习和数据挖掘的分类问题中的算法.它的目标是监督学习:给定一个数据集,其中的每一个元组都能用一组属性值来描述,每一个元组属于一个互斥的类别中的某一类.C4.5的目标是通过学习,找到一个从属性值到类别的映射关系,并且这个映射能用于对新的类别未知的实体进行分类. C4.5由J.Ross Quinlan在ID3的基础上提出的.ID3算法用来构造决策树.决策树是一种类似流程图的树结构,其中每个内部节点(非树叶节点)表示在一个属性上的测试,每个分枝代表一个测试输出,而每个树叶节点存

C4.5算法(摘抄)

1. C4.5算法简介 C4.5是一系列用在机器学习和数据挖掘的分类问题中的算法.它的目标是监督学习:给定一个数据集,其中的每一个元组都能用一组属性值来描述,每一个元组属于一个互斥的类别中的某一类.C4.5的目标是通过学习,找到一个从属性值到类别的映射关系,并且这个映射能用于对新的类别未知的实体进行分类. C4.5由J.Ross Quinlan在ID3的基础上提出的.ID3算法用来构造决策树.决策树是一种类似流程图的树结构,其中每个内部节点(非树叶节点)表示在一个属性上的测试,每个分枝代表一个测

C4.5算法(一)代码实现

入门学习机器学习的十大算法,第一站就是C4.5算法.C4.5是一种决策树算法,属于监督学习.先给一个样本集,从而建立一棵决策树,然后根据这个决策树来对后续的数据做决策. 作为没有相关背景知识和系统学习过的人,当然要边学边记啦.C4.5算法我的学习步骤是这样: step 1: 了解清楚算法的逻辑,以及编程实现 step 2: 其中对连续变量的离散化处理 step 3: C4.5的剪枝 step 4: C4.5算法的spark实现 因为个人认为C4.5算法中比较难和重要的两个点就是对连续变量的离散化

机器学习总结(八)决策树ID3,C4.5算法,CART算法

本文主要总结决策树中的ID3,C4.5和CART算法,各种算法的特点,并对比了各种算法的不同点. 决策树:是一种基本的分类和回归方法.在分类问题中,是基于特征对实例进行分类.既可以认为是if-then规则的集合,也可以认为是定义在特征空间和类空间上的条件概率分布. 决策树模型:决策树由结点和有向边组成.结点一般有两种类型,一种是内部结点,一种是叶节点.内部结点一般表示一个特征,而叶节点表示一个类.当用决策树进行分类时,先从根节点开始,对实例的某一特征进行测试,根据测试结果,将实例分配到子结点.而

C4.5算法学习

C4.5属于决策树算法的分类树决策树更是常见的机器学习方法,可以帮助我们解决分类与回归两类问题.以决策树作为起点的原因很简单,因为它非常符合我们人类处理问题的方法,而且逻辑清晰,可解释性好.从婴儿到长者,我们每天都使用无数次! 决策树的总体流程: 总体流程 分而治之(devide and conquer) 自根结点的递归过程 从每一个中间结点寻找一个划分(split and test)的属性 三种停止条件: 当前结点包含的样本属于同一类别,无需划分 当前属性集为空,或是所有样本在所有属性值上取值