机器学习笔记(9)---决策树

决策树

决策这一节相对KNN算法来说难了点,因为本节需要先理解熵和信息增益的概念,理解后再看就比较容易了。不过我也是先看的代码,在看代码的过程中没明白它为什么要这么做,然后再去查相关的书籍,再把熵和信息增益的概念理解了,再去看代码,就明白了。

基本概念

基本概念不懂没关系,先去看源码。然后再回顾和总结。

香农熵(也叫信息熵)简称熵,其计算公式如下:

H=ni=1p(xi)log2p(xi) H = − ∑ i = 1 n p ( x i ) l o g 2 p ( x i )

其中的 p(xi) p ( x i ) 是该类别的概率。

熵越小纯度越高,熵越大越杂乱无章。比如左手一把盐,右手一瓶水,此时熵很小,但如果把盐倒到水里,那么此时熵就很大了。

决策树的根结点的熵是最大的,我们的目标就是进行分类,让节点的熵变成0,就表示节点都是同一类的了,需要关注的是在这个过程中使熵变小的最快的分类是最优分类,我们要做的就是找到这样的分类。

信息熵和信息增益

信息熵计算

例子1

以MLiA书上的数据,计算信息熵和信息增益的过程

这里写图片描述

如上图的数据集,最终的类别只有两类:是鱼类和不是鱼类,分别占2/5和3/5。

按公式 H=ni=1p(xi)log2p(xi) H = − ∑ i = 1 n p ( x i ) l o g 2 p ( x i ) (MLiA P35)可知,这里的n=2,即共2个类别, x1 x 1 表示是鱼类; x2 x 2 表示不是鱼类。 p(xi) p ( x i ) 表示某一类的概率,所以:

p(x1)=2/5=0.4,p(x2)=3/5=0.6 p ( x 1 ) = 2 / 5 = 0.4 , p ( x 2 ) = 3 / 5 = 0.6

H==inp(xi)log2p(xi)(0.4log20.4+0.6log20.6)(0.5280.442)0.97(1)(2)<
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值