81-信息熵

信息熵

  上一篇博客介绍了决策树到底是什么样子的算法,我们是怎样通过决策树来进行分类的。那我们在具体构造决策树的时候,存在一个问题,就是在决策树的每一个结点上,其实它都是一个判断条件,那么我们为了得到这个判断条件,我们需要知道两个信息,一个是我们要在这个节点的哪个维度做划分(选择 x x x 还是 y y y)?如果确定了维度的话,那么具体在这个维度的哪个值上做划分(为什么是 2.4?为什么是 1.8)?

在这里插入图片描述
  
  这里就先介绍一种方式,就是计算信息熵。信息熵是信息论的一个基础概念。熵在信息论中代表随机变量不确定度的度量。那么信息熵有这么一个特点:

在这里插入图片描述
  
  下面我们直接看一下信息熵的公式,由香农提出:

在这里插入图片描述
  

   p i p_i pi 表示如果一个系统中一共有 k k k 类的信息,那么每一类信息所占的比例就叫做 p i p_i pi。那么为什么前面要加一个负号呢?因为 p i p_i pi 一定是一个小于 1 的数,所以 l o g p i < 0 logp_i < 0 logpi<0,所以整体求和得到的值也是负数,所以最后添加一个负号就变成了大于 0 的数,那么我们最后计算出的熵( H H H)肯定是大于 0 的。

  下面我们举几个例子,比如说现在的数据集中有 3 个类别,它们各占 1/3,此时这个系统的信息熵是多少呢?

在这里插入图片描述
  
  我们再举一个例子,依然是 3 类,它们所占的比例为 1/10,2/10,7/10,那么此时系统的信息熵为:

在这里插入图片描述
  
  现在我们就可以比较这两个结果了,很显然后面一组的信息熵比前一组信息熵小,意味着后面系统的确定性是更强的。

  如果我们再举出一个更极端的数据,也分为3类,它们所占比例为 1,0,0,那么信息熵为:

在这里插入图片描述
  
  此时信息熵达到了最小值,所以此时该系统就是确定的。下面的具体编程上我们将以二分类问题进行讨论。如果一类所占的比例为 x x x,那么另一类所占的比例就是 1 − x 1-x 1x,那么在这种情况下信息熵为:

在这里插入图片描述
  
  下面我们来看一下上面这个 H H H 函数的图像是什么样子的。
  

在这里插入图片描述
  

  总结来说,当系统中每个类别都是等概率的时候,就是该系统最不确定的时候,此时它的信息熵是最高的。如果系统偏向于某一类,相当于某一种程度有了确定性,信息熵会逐渐降低,直到系统整体百分百都在某一类中,此时信息熵就达到了最低值,也就是 0。
  

  那么在了解了信息熵的概念,那么就可以回答之前提出的两个问题了。我们在每一个节点上都希望在某一个维度上基于某一个阈值进行划分,划分以后就是要使得信息熵降低。那么我们怎么找到这个划分呢?我们只需要对所有的划分可能性进行一次搜索即可。
  

  下一篇博客将会实际的编码来模拟在一个节点上进行搜索进而找到在一个节点上基于信息熵这样一个信息最优的划分方式。
  

  具体代码见 81 信息熵.ipynb

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值