机器学习:决策树及ID3,C4.5,CART算法描述
文章目录
- 概念理解
- 熵:
- 条件熵:
- 信息增益,互信息:
- 信息增益比
- 基尼指数
- ID3算法描述
- C4.5算法描述
- CART (Classification and Regression Tree)算法描述:
- 三种算法优势及劣势:
- ID3:
- C4.5:
- CART:
概念理解
熵:
条件熵:
H(y∣A)H(y|A)H(y∣A) : A 是特征,y是目标或者分类,“条件”可以理解为 A对y的限制,假如:feature A有m个featureValue, H(y∣A)H(y|A)H(y∣A) 就是在取feature A有m个featureValue的值下,y的不确定和。H(y∣A)H(y|A)H(y∣A)理解为y被A限制后的不确定性,A对y分类的影响
信息增益,互信息:
g(y,A)=H(y)−H(y∣A)g(y,A) = H(y) - H(y|A)g(y,A)=H(y)−H(y∣A)
可以看成条件熵的相反,这个可以看成A对y分类的影响,简单理解就是y在引入A之后的不确定度。
假如以g(y,A)g(y,A)g(y,A)作为y分类的标准,那么y就选择g(y,A)g(y,A)g(y,A)的feature A, 那么这种策略就倾向于选择featureValue个数m越多的feature A,直观一点就是分类越多,y的确定性就会增加。
信息增益比
假如一直选择featureValue个数m越多的feature ,决策树就会成为一个又胖又矮的树,不管在哪里矮胖肯定不受欢迎,我们喜欢高瘦的,但是又不能太高,我们需要一个具有美感的xxx叉树。
在此引入了对m的惩罚,信息增益比:
gR(y,A)=g(y,A)/IV(A)g_R(y,A) = g(y,A) / IV(A)gR(y,A)=g(y,A)/IV(A)
IV(A)IV(A)IV(A)为y关于A的熵,类似于交叉熵,和m有关。
基尼指数
可以看出基尼指数是和熵定义类似的,基尼指数越小,y的不确定度越小。
ID3算法描述
使用信息增益为划分依据
C4.5算法描述
以信息增益比为划分依据,修改第4步
CART (Classification and Regression Tree)算法描述:
以基尼指数为划分依据
三种算法优势及劣势:
ID3:
优点:
ID3中选择熵减少程度最大的特征来划分数据,也就是“最大信息熵增益”原则,是一种贪心策略,策略简单,
一般情况下都是有效果的。
缺点:
从划分的策略信息增益定义,这种策略总是选择特征值个数m多的特征来划分,导致决策树又矮又胖。
处理离散型的数据会出现上述问题,处理连续性不会出现上述问题,
处理混合型数据会倾向于选择离散型特征划分问题改进:C4.5
C4.5:
优点:针对ID3总是选择特征值个数m多的特征,引入信息增益比来惩罚m,
缺点:信息增益比=互信息/y对feature的熵,C4.5会选择使“y对feature的熵”最小的策略,就是选择m小的划分,
假如二分的话,,就会分成很不均匀的两份,然后这个二叉树会非常深,又瘦又高,这种树中看不中用,泛化
能力非常差,就是我们常说的过拟合。改进:划分feature选择策略,选出互信息比平均互信息高的feature(基本上m就不会少),
然后在这些features里选择信息增益比最高的feature,这是一种启发式策略,很直接但是又快又有效。
CART:
优点:
CART是一棵二叉树,采用二元切分法,每次把数据切成两份,分别进入左子树、右子树。
相比ID3和C4.5,CART应用要多一些,既可以用于分类也可以用于回归。
缺点:等我发现了再补充。
机器学习:决策树及ID3,C4.5,CART算法描述相关推荐
- 【机器学习】通过ID3,C4.5,CART算法构建决策树
决策树 (一).决策树的简介 (二).构造决策树的三种构造方法 1.基于信息增益生成决策树(ID3算法) 2.基于信息增益率生成决策树(C4.5算法) 3.基于基尼指数生成决策树(CART算法) 总结 ...
- 决策树数学原理(ID3,c4.5,cart算法)
上面这个图就是一棵典型的决策树.我们在做决策树的时候,会经历两个阶段:构造和剪枝. 构造 简单来说,构造的过程就是选择什么属性作为节点的过程,那么在构造过程中,会存在三种节点: 根节点:就是树的最顶端 ...
- 决策树 基于python实现ID3,C4.5,CART算法
实验目录 实验环境 简介 决策树(decision tree) 信息熵 信息增益(应用于ID3算法) 信息增益率(在C4.5算法中使用) 基尼指数(被用于CART算法) 实验准备 数据集 算法大体流程 ...
- cart算法_【统计学】决策树模型大比拼!ID3/C4.5/CART算法哪个更好用?
- 点击上方"中国统计网"订阅我吧!- 决策树模型在监督学习中非常常见,可用于分类(二分类.多分类)和回归.虽然将多棵弱决策树的Bagging.Random Forest.Boos ...
- 通过实例理解决策树算法(ID3,C4.5,Cart算法)
(一)实例:使用ID3算法给出"好苹果"的决策树 (二)决策树的工作原理 我们在做决策树的时候,会经历两个阶段:构造和剪枝. 构造原理--构造的过程就是选择什么属性作为节点的过程, ...
- 决策树模型(ID3/C4.5/CART)原理和底层代码解读 学习笔记
本文作者:合肥工业大学 管理学院 钱洋 email:1563178220@qq.com 内容可能有不到之处,欢迎交流. 未经本人允许禁止转载 如下为个人的学习笔记,使用latex编写,再写成文本太麻烦 ...
- 机器学习爬大树之决策树(ID3,C4.5)
自己自学机器学习的相关知识,过了一遍西瓜书后准备再刷一遍,后来在看别人打比赛的代码时多次用到XGBoost,lightGBM,遂痛下决心认真学习机器学习关于树的知识,自己学习的初步流程图为: 决策树( ...
- 决策树(ID3,C4.5和CART)介绍、说明、联系和区别
决策树 决策树 1. 决策树介绍 2. 决策树构建过程 2.1 属性选择 熵 条件熵 信息增益 信息增益比 3. 决策树生成和修建 4. 决策树常见算法 ID3 C4.5 CART(基尼指数) 5.总 ...
- 机器学习-决策树(ID3、C4.5、CART)
[机器学习]决策树(上)--ID3.C4.5.CART 决策树是一个非常常见并且优秀的机器学习算法,它易于理解.可解释性强,其可作为分类算法,也可用于回归模型. 对于基本树我将大致从以下四个方面介绍每 ...
最新文章
- 人工智能及其应用(第5版).蔡自兴-4章课后习题。【部分参考答案】
- SicilyFunny Game
- VMware中CentOS设置静态IP
- 对聊天室项目的NABCD的分析
- Ubuntu之解决需权限才能访问串口的方法
- Nginx与tomcat集成
- 如何在JPG或BMP图片上显示输入的订单数据内容,并在报表打印时显示出来,后台数据库是SQL SERVER 2000 ,先谢了.高分!...
- spring 事务源码分析(四)传播机制总览
- 数据分析系统的流程图及架构图
- oracle sqlldr原理,oracle sqlldr 参数说明
- 【ORACLE】关于多态表函数PTF(Polymorphic Table Functions)的使用
- 2017美团校招安卓岗
- Online Judge系统大全
- 计算机中职作文,中职作文题目
- Commonsense and Named Entity Aware Knowledge Grounded Dialogue Generation
- python,list元素倒置
- 虚幻4场景渲染源码分析概述
- 05 ,花瓣数据集:下载数据,特征分析图 pairplot
- scikit-learn学习笔记-bili莫烦
- win10 程序员计算器按钮介绍
热门文章
- PHP中的short_open_tag
- php模块下载,douphp下载中心模块修改版
- 【SSL】Tomcat8.5 SSL/HTTPS 安装证书 单向认证
- im2rec.py代码解读
- 双链表java实现_双链表 Java实现数据结构
- 关于计算机英语素材,计算机专业英语相关素材.doc
- python的全局变量能暂存数据吗_【Python】Python之全局变量
- canvas动画 电子白板_广东智慧电容式触摸屏维修,学校电子白板操作
- python算法详解张玲玲电子版_算法之路该如何学习?
- 消费升级背景下零食行业发展报告_零食行业进入4.0时代,蔬菜、水果、肉制品站上万亿风口!...