本文共 1326 字,大约阅读时间需要 4 分钟。
决策树、随机森林补充(一)
文章目录
一.条件熵的推导
条件熵的公式定义很简单:
H(Y|X) = H(X,Y) – H(X)
其中,H(X,Y)代表(X, Y)的联合熵。如果不理解这个,可以联想一下概率论当中的联合概率。条件熵表示:在X发生的前提下,Y发生“新”带来的熵。对于熵这个概念,看过电影《信条》的,大体都会知道,它表示混乱程度,熵越高,代表混乱程度或者不稳定程度越高。也就是说,如果他带来的熵越多,说明他带来的不稳定性就越多。
同时,条件熵还有一个推导公式,在这个公式当中,我们大量运用了熵的公式,如果不知道,看一看前面的决策树,随机森林部分:(公式一)
Note:
- 上述推导式子的第三行,我们只是为了前后统一,然后合并 构造出来了一个关于y的加和,因为在第二行,我们看到这个式子只是关于x的。而包含所有y的情况的(x,y)联合概率相加在一起,不正是p(x)嘛。
- 倒数第二行推导到最后一行,用的是条件概率公式
我们在上一个推导出来的式子的基础上,再做进一步的推导:
Note:
- 从第二行到第三行,我们运用条件概率公式,将p(x,y)进行替换,然后p(x)只是关于x的,和y并没有什么关系,所以到了第四行,把p(x)挪到前面并不影响最后的结果。
二.经验熵、经验条件熵
首先,我们先明确一些符号:
-
我们假设训练数据集为 D ,|D| 表示样本个数。这当中有K个类 ,记为:Ck , k =1 , 2 …… K ,|Ck| 为属于类 Ck 的样本个数,所以我们有:
∑ k ∣ C k ∣ = ∣ D ∣ \sum_{k}|Ck| = |D| k∑∣Ck∣=∣D∣ -
假设特征A有n个不同的取值 {a1, a2, ……, an} ,根据特征A的取值将D划分为n个子集 D1, D2……Dn , 其中|Di |为 Di的样本个数,即:
∑ i D i = ∣ D ∣ \sum_ {i}Di = |D| i∑Di=∣D∣ -
记子集 Di 中属于类 Ck 的样本的集合为 Dik , 则|Dik|为 D ik 的样本个数 。
首先来说,经验熵的公式没什么好解释的,因为|Ck|/|D|就是一个概率。把这个概率直接代入,我们就得到了这个经验熵的公式:
然后,我们进一步去推经验条件熵:
Note:
- 从第一行开始,我们就用到了前面(公式一)的结论,然后再去套条件概率公式。
三.信息增益率,和Gini系数
决策树学习的学习的生成算法主要有三个,这个在以前也有所介绍。这三个分别是:
- ID3:信息增益 最大的准则(也就是1.3所讲的内容)
- C4.5:信息增益比 最大的准则
- CART :使用基尼系数
关于ID3,详细见
关于C4.5,那么最关键的就是:什么是信息增益比,其实很简单,信息增益比也叫信息增益率,它的公式如下:
即:信息增益,和熵值的比值
什么又是基尼系数呢?Gini系数的公式如下:
注意:机器学习当中的基尼系数和经济学当中那个并不是一个东西。计算上,这两个也不是一个东西。所以,别把这两个搞混淆了
在决策树当中,一个属性的信息增益(率)或者gini指数越大,表明属性对样本的熵减少的能力更强,这个属性使得数据由不确定性变成确定性的能力越强。
转载地址:https://blog.csdn.net/johnny_love_1968/article/details/116355767 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!