数据分析实战 45 讲
陈旸
清华大学计算机博士
123928 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 49 讲
第二模块:数据分析算法篇 (20讲)
第四模块:数据分析工作篇 (2讲)
数据分析实战 45 讲
15
15
1.0x
00:00/00:00
登录|注册

17 丨决策树(上):要不要去打篮球?决策树来告诉你

总结
C4.5算法
ID3算法
如何判断要不要去打篮球?
决策树的工作原理
决策树

该思维导图由 AI 生成,仅供参考

想象一下一个女孩的妈妈给她介绍男朋友的场景:
女儿:长的帅不帅?
妈妈:挺帅的。
女儿:有没有房子?
妈妈:在老家有一个。
女儿:收入高不高?
妈妈:还不错,年薪百万。
女儿:做什么工作的?
妈妈:IT 男,互联网公司做数据挖掘的。
女儿:好,那我见见。
在现实生活中,我们会遇到各种选择,不论是选择男女朋友,还是挑选水果,都是基于以往的经验来做判断。如果把判断背后的逻辑整理成一个结构图,你会发现它实际上是一个树状图,这就是我们今天要讲的决策树

决策树的工作原理

决策树基本上就是把我们以前的经验总结出来。我给你准备了一个打篮球的训练集。如果我们要出门打篮球,一般会根据“天气”、“温度”、“湿度”、“刮风”这几个条件来判断,最后得到结果:去打篮球?还是不去?
上面这个图就是一棵典型的决策树。我们在做决策树的时候,会经历两个阶段:构造和剪枝
构造
什么是构造呢?构造就是生成一棵完整的决策树。简单来说,构造的过程就是选择什么属性作为节点的过程那么在构造过程中,会存在三种节点:
根节点:就是树的最顶端,最开始的那个节点。在上图中,“天气”就是一个根节点;
内部节点:就是树中间的那些节点,比如说“温度”、“湿度”、“刮风”;
叶节点:就是树最底部的节点,也就是决策结果。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

决策树是一种重要的数据挖掘工具,通过构造和剪枝两个阶段来帮助我们做出各种选择。在构造阶段,我们选择属性作为节点,并解决选择根节点、子节点和停止条件的问题。剪枝阶段则旨在防止过拟合现象的发生,提高决策树的泛化能力。决策树的应用领域广泛,可以帮助我们做出各种决策,如选择男女朋友或挑选水果。 文章还介绍了ID3算法和C4.5算法。ID3算法简单易懂,但倾向于选择取值较多的属性作为最优属性,可能导致无关属性被选为最优属性的情况。C4.5算法在ID3的基础上进行了改进,采用信息增益率、悲观剪枝、离散化处理连续属性和处理缺失值等方式,提高了决策树的泛化能力和适用性。 总的来说,决策树是一种强大的工具,能够帮助我们在面对复杂决策时进行有效的选择。通过了解决策树的构造原理和相关算法,我们可以更好地理解其应用和局限性,为实际问题的解决提供有力支持。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《数据分析实战 45 讲》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(93)

  • 最新
  • 精选
  • 小熊猫
    决策树学习通常包括三个步骤: 1. 特征选择。选取最优特征来划分特征空间,用信息增益或者信息增益比来选择 2. 决策树的生成。ID3、C4.5、CART 3. 剪枝 总结优缺点: ID3: 优点:算法简单,通俗易懂 缺陷:1. 无法处理缺失值 2. 只能处理离散值,无法处理连续值 3. 用信息增益作为划分规则,存在偏向于选择取值较多的特征。因为特征取值越多,说明划分的 越细,不确定性越低,信息增益则越高 4. 容易出现过拟合 C4.5: 优点:1. 能够处理缺省值 2. 能对连续值做离散处理 3. 使用信息增益比,能够避免偏向于选择取值较多的特征。因为信息增益比=信息增益/属性 熵,属性熵是根据属性的取值来计算的,一相除就会抵消掉 4. 在构造树的过程中,会剪枝,减少过拟合 缺点:构造决策树,需要对数据进行多次扫描和排序,效率低 学习的时候发现了这两点错误: 1. Gain(D , 天气)=0 ---> 1 Gain(D , 湿度)=0 ----> 1 Gain(D , 刮风)=0.0615 2. 针对将属性选择为温度的信息增益率为: Gain(D′, 温度)=Ent(D′)-0.792=1.0-0.792=-0.208 这里算出来的还是信息增益,不是信息增益率,没有除以属性熵 属性熵=-3/6log3/6 - 1/6log1/6 - 2/6log2/6 作业: 经验熵 H(D) = -1/2log1/2 - 1/2log1/2 = 1 属性 红的信息增益: g(D, A1) = H(D) - H(D|A1) = 1 - 1/2*0 - 1/2 * 0 = 1 属性 大的信息增益: g(D,A2) = 1 - 1/2*(-1/2log1/2-1/2log1/2)*2 = 0 属性熵都是1,所以信息增益比跟信息增益一样 特征选择 红作为最优特征,红的就是好苹果,不红的就是坏苹果

    作者回复: Good Job

    2019-02-14
    5
    79
  • JingZ
    今天去面试一个金融分析师职位 问:算法知道吗? 我答:还在学习中,但我会python 爬虫,Numpy/Pandas~还有标准化(心想为嘛早上不认真看看今天的课程,起码说的出来C4.5是啥)😂😂 以后要好好做作业~及时看课程

    作者回复: 加油 有进步收获就好

    2019-01-21
    3
    19
  • 根集合D = {2个好苹果,2个不是号苹果},求得Ent(D) = 1。 按红作为属性划分可得$D_1、D_2$两个子集 $D_1$ (红 = 是) = {2个好苹果} $D_2$ (红= 否) = {2个不是好苹果} 可得Ent( $D_1$ ) = 0 、Ent( $D_2$ ) = 0 可得归一化信息熵为$\dfrac{1}{2} \times 0 + \dfrac{1}{2} \times 0 $ = 0 则G(D,红) = 1-0 = 1 按大作为属性,同样可得 $D_1、D_2$两个子集 $D_1$ (大 = 是) = {1个好苹果,1个不是好苹果} $D_2$ (大 = 否) = {1个好苹果,1个不是好苹果} 可得Ent( $D_1$ ) = 1 、Ent( $D_2$ ) = 1 归一化信息熵 = $\dfrac{2}{4}\times1 + \dfrac{2}{4}\times1$ = 0.5 则G(D,大)= 1- 0.5 = 0.5 由此可得按红作为属性的信息增益大于按大作为属性的信息增益,所以选择红作为根节点。 接着在红为是的基础上,分析按大作为属性的信息增益。在红为是的集合里共有两个苹果集合D = {2个好苹果} Ent(D) = 0 $D_1$ (大 = 否) = {1个好苹果} $D_2$ (大 = 是) = {1个好苹果} Ent( $D_1$ ) = 0 、Ent( $D_2$ ) = 0 G(D,大) = 0 因为大是与否在红决定的前提下对好苹果的决定没有影响,所以剪去该分支。

    作者回复: 整理的不错 很认真啊 滢

    2019-04-17
    16
  • 李龍
    算法一点听不懂咋整

    作者回复: 慢慢来,先理解概念,然后掌握工具使用

    2019-01-22
    2
    15
  • aDongaDong
    脑瓜疼

    作者回复: 慢慢来 我整理的时候也是,现在头发都掉了一些,主要是公式计算比较多啊

    2019-04-18
    2
    7
  • 黄加生
    老师你好,根据信息增益公式的构造,不应该是信息增益越小,纯度越高么?还有假设按照编号进行划分,那么他的信息增益算出来应该是最小的才对,因为子节点的归一化信息熵之和是1!您看可以解释一下不?

    作者回复: 信息熵代表信息的不确定度,信息熵越高,不确定度越高;而信息增益指的是划分可以带来纯度的提高,信息熵的下降;你可以理解为信息增益代表当我们知道某一个特征后,它的不确定性减少的程度。因此信息增益越大,信息熵下降越多,纯度越高。 信息增益在决策树算法中是用来选择特征的指标,信息增益越大,则这个特征的选择性越好

    2020-12-14
    3
  • Geek_4b34a9
    一个小建议:对于这种信息密度极度不对等的培训材料,区别于小说类科普类的材料,我认为以同样的语速从头到尾把内容念出来,没有太大的意义,增加语音反而是起到反效果。如果该停顿的地方没有细致的超出文本材料的讲解,真的没必要加这个语音,会让人把精力分摊到非重点内容上。

    作者回复: 感谢同学的建议哦

    2020-05-12
    2
    2
  • 周飞
    1.根结点的信息熵是 -(1/2*log(1/2)+1/2*log(1/2) = 1 2.假如以红来作为根结点,那么有两个叶子 红和不红, 红的信息熵是 -(1*log(1))= 0 不红的信息熵是 -(1*log(1)) = 0 所以 以红作为根结点的信息增益是 1-0 = 1 3.假如以大来作为根结点,那么有两个叶子节点: 大和不大 大的信息熵是 -(1/2*log(1/2)+1/2*log(1/2)) = 1 不大的信息熵是 -(1/2*log(1/2)+1/2*log(1/2)) = 1 以大作为根结点的信息增益是 1- (1/2*1 +1/2*1) = 0; 因为 以红作为根结点的信息增益大于以 大来作为根结点的信息增益,所以选择红来作为根结点。 4.第一个叶子节点 的节点是大 ,第二个叶子节点的节点也是大。

    作者回复: Good Job

    2019-03-02
    2
  • ken
    苹果-大的信息熵:5/3 苹果-红的信息熵:1 归一化的信息熵:1 苹果-大信息增益更大,作为根节点,红作为子节点。 决策树: 大(是)-红(是)-好苹果(是) 大(是)-红(否)-好苹果(否) 大(否)-红(是)-好苹果(是) 大(否)-红(否)-好苹果(否)

    作者回复: Good Job

    2019-01-21
    2
  • GS
    看了四五遍看不懂,拿笔和计算器算了一波,才懂了一点点。

    作者回复: 不错GS同学~ 还是自己手推一遍更清楚

    2019-11-26
    1
收起评论
显示
设置
留言
93
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部