机器学习之决策树原理

如果你觉得这篇文章对你有帮助,记得点赞收藏哦,后续我还会更新更多与机器学习相关的算法内容,包括对机器学习库sklearn库函数的讲解,以及算法的简单代码实现。
看完这篇文章后,可以了解一下我写的sklearn决策树模型参数详解的文章。深入理解并使用决策树:
机器学习之决策树(sklearn库函数详解)

1 决策树简介

决策树是一种基于树模型使用连续特征或离散变量的机器学习算法,用于分类跟回归。经典的三种决策树算法ID3,C4.5,CART。

2 数学知识

在了解决策树原理前,我们需要理解几个基本的数学知识。先展示图片数据集,为了增加下面的公式理解。图片转自网络

① 信息熵

信息熵表示信息的混乱程度,在决策树算法中,都是对标签求信息熵。
信息熵的公式为

H ( Y ) = − ∑ n = 1 N   p i l o g p i H(Y)= -\sum_{n=1}^N\ p_ilogp_i H(Y)=n=1N pilogpi

比如对上图中瓜求他的信息熵,如下就是过程

H ( 瓜 ) = − ∑ n = 1 N   p i l o g p i H(瓜)= -\sum_{n=1}^N\ p_ilogp_i H()=n=1N pilogpi
             = − (   p 好 l o g p 好 + p 坏 l o g p 坏 ) \ \ \ \ \ \ \ \ \ \ \ \ =-(\ p_好logp_好+p_坏logp_坏)             =( plogp+plogp)
             = − ( 8 17 l o g 8 17 + 9 17 l o g 9 17 ) \ \ \ \ \ \ \ \ \ \ \ \ =-(\cfrac{8}{17}log\cfrac{8}{17}+\cfrac{9}{17}log\cfrac{9}{17})             =(178log178+179log179)

从公式中我们可以发现:如果全部都是好瓜,带入计算那么的到的瓜的信息熵就是0;如果好瓜坏瓜参半,那么得到的信息熵最大。

也就是说,如果标签中的大家占比都差不多,此时该标签就越混乱,信息熵就越大,正好反应了信息熵的概念,表示信息的混乱程度


② 条件熵

条件熵从名字上理解就是针对某一条件的信息熵,实际上也是如此。在决策树算法中,我们都是指针对某一特征的信息熵,而这个信息熵就是标签的信息熵。

比如针对特征纹理的瓜的信息熵(特征纹理的条件熵)

就像我们一开始在信息熵中所说,决策树都是针对标签求信息熵,只不过这次是在特定条件下,我们给了它一个名字,叫条件熵。

条件熵的公式为

H ( Y ∣ X ) = ∑ n = 1 N   p i   H ( Y ∣ X = x i ) H(Y|X)= \sum_{n=1}^N\ p_i\ H(Y|X=x_i) H(YX)=n=1N pi H(YX=xi)

看着这个公式是不是人有点懵,别急我们看看求纹理特征的条件熵你就理解了,纹理总共有三种,清晰,稍糊,模糊,分别占比为 9 17 \cfrac{9}{17} 179 5 17 \cfrac{5}{17} 175 3 17 \cfrac{3}{17} 173

H ( 瓜 ∣ 纹理 ) = ∑ n = 1 3   p i   H ( Y ∣ X = x i ) H(瓜|纹理)= \sum_{n=1}^3\ p_i\ H(Y|X=x_i) H(纹理)=n=13 pi H(YX=xi)
                      = 9 17    H ( 瓜 ∣ 纹理 = 清晰 ) + 5 17    H ( 瓜 ∣ 纹理 = 稍糊 ) + 3 17    H ( 瓜 ∣ 纹理 = 模糊 ) \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ = \cfrac{9}{17}\ \ H(瓜|纹理=清晰)+\cfrac{5}{17}\ \ H(瓜|纹理=稍糊)+\cfrac{3}{17}\ \ H(瓜|纹理=模糊)                      =179  H(纹理=清晰)+175  H(纹理=稍糊)+173  H(纹理=模糊)

此时要求的就是三种条件下的信息熵了,那么在清晰条件下好瓜占比 8 9 \cfrac{8}{9} 98,在稍糊条件下好瓜占比 1 5 \cfrac{1}{5} 51,在模糊条件下好瓜占比 0 0 0,此时推导继续往下写。

H ( 瓜 ∣ 纹理 ) = 9 17    ( − 8 9 l o g 8 9 − 1 9 l o g 1 9 ) + 5 17 ( − 1 5 l o g 1 5 − 4 5 l o g 4 5 )   + 3 17 ( − 0 l o g 0 − 1 l o

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值