关于决策树的特征选择, 信息量/信息熵/相对熵/交叉熵的例子

说到决策树,必须了解信息熵。

在没有接触机器学习之前,知道熵这个概念:描述事务的混乱程度。  (当然,有更准确的或不同维度的定义,比如 能量中不能用来做功的部分)
如果没有外力,世界总是在熵增。 比如气体扩散后不可能自己缩回去。
而换个角度想,我们总是想去做一些事,让熵减。一个乱糟糟堆满各式各样东西的桌子,如果付出时间和力气,把它整理得干干净净分门别类, 那它就从熵多到熵少了。 类似地,统计学/机器学习中的信息熵,跟热力学中的熵是反的(从公式看前面有个负号),我们也总是希望熵减的。即我们希望 事实在他应该归属的类别中,也就是说我们希望事情都在意料之中,而不是意料之外。  那我们如何来度量这个意料之外呢?  因为我们的目标是 去持续减少 意料之外的事 占所有的猜测的比例,必须要知道如何去衡量。

 

意料之中的事,里面没什么信息量,我们可以少操心:例如 一个会计在工作时 一丝不苟
意料之外的事,里面信息量可能很,可得操点心(需要学习/更新): 例如 一个会计在工作时 乱涂乱写。例如你看完某篇文章后觉得“信息量很大” 是因为里面很多你之前不知道、即意料之外的事

一个公司,如果会计人员的工作 没有他应该有的严谨;销售人员的工作 没有他应该有的热情,研发人员 没有他应该有的技能, 管理人员 没有他应该有的决策力,这个公司够混乱了吧。 把这些信息量加在一起,也就是信息熵,就能度量这个公司的整体情况。  我们要做的是 降低整体的信息熵,也就是让整体(多分类)里面的各个分量(里面的各个分类)的信息量都降低

优秀公司的标准/目标是:所有会计 销售 研发 管理人员都在他们各自对应的归属内(各自优秀,即都在预料之中)
KL散度即相对熵就是: 差公司跟优秀公司的 公司总体 情况的符合度 差别(重合情况) ,如果差公司一直用 信息增量 去修正自己,那重合之日(相对熵降为0),差公司就是优秀公司了。当然,如果优秀公司也拿信息增量 去修正自己,重合之日,优秀公司也变成差公司了

交叉熵就是:差公司跟优秀公司的 各类人才的符合度 差别(最后还是要求和的)
补充:公司总体情况包括优秀公司自己内部的仍有很少量没做到最好的地方,比如垄断市场了;而交叉熵这里我们只关注各类人才的符合度情况


机器学习中,P往往用来表示样本的真实分布,Q用来表示模型所预测的分布,我们看到信息量/信息熵/相对熵/交叉熵的公式分别为:

 

 

H(p,q)=−∑p(xi)log(q(xi))

在我们的例子中,P用来表示优秀公司人才符合度的分布(目标),Q用来表示差公司的分布(需要优化的对象)
可以自己对比理解一下公式

 

 

回到正题 决策树
如果你 想招一名非常细心的会计人员。你手上有一份每个random候选人的数据表格。40行40个人,表格的每一列就是一个特征了。其中有一列是:这个人是否最近十年从未遗失过物品(取值01),有一列是他音乐课程拿到的成绩等级(取值ABCDE),有一列是他美术课程拿到的成绩等级(取值AB)
目标是找非常细心的人, 你先判断 从未遗失过物品 还是先判断 音乐成绩 还是先判断 美术成绩呢? 从表格最终的标签来看,20个标签为 非常细心的人,有18个近十年从未遗失过物品,而总共有19个这样的人;有15个物理课成绩是A,22个美术成绩为B。

答案是先选信息增益大的! 那如何选 信息增益最大的特征呢?
条件概率,全概率,贝叶斯公式会吧? 不会的话先看看这个 https://blog.csdn.net/Hearthougan/article/details/75174210  这里要展开又是一段了,略过聚焦。
看看这个图: 黄色代表 边缘概率,桔色代表条件概率,灰底代表全概率,中间的重叠部分是互信息/信息增益。

关于决策树的特征选择, 信息量/信息熵/相对熵/交叉熵的例子_第1张图片

这里要理解条件概率: 知道A以后,B为: AB同时发生的概率/A的概率。 例如知道 某个人从未遗失过物品后,他是很细心的人的概率为 : 所有很细心的且从未遗失过物品的人 / 从未遗失过物品的人占所有人的比例
而条件熵和条件概率可以类比,互信息也就是信息增益,从图中看就是 H(B)-H(B|A), 绿色的部分
上面这张图的信息代表的是是否非常细心与 美术成绩的分布,重叠得较少,信息增益小,无法很好的去判断细心程度,信息熵仍然很大,不确定性仍然很多。
而下面这张图的信息代表的是 是否非常细心与 是否从未遗失过物品的分布,重叠部分大,信息增益大,很方便快速的就能判断细心程度,信息熵和不确定性已经很小了。好,决策树的条件就先选这种了(信息增益大)!

关于决策树的特征选择, 信息量/信息熵/相对熵/交叉熵的例子_第2张图片

美术成绩和音乐成绩一样 都不怎么能成为判断细心程度的重要参考,但ID3决策树会偏向于先选择音乐成绩做判断,因为音乐成绩有5个等级,按5类分时的不确定性 会比按2类分不确定性更小,信息增益更大(H(B)-H(B|A) 中 H(B|A)减小)
C4.5其中一个改进就是使用信息增益比 而不是信息增益 (可以理解为归一化了的信息增益)
而CART中采用了基尼系数替代信息增益比,根据https://blog.csdn.net/lanchunhui/article/details/65441891,基尼系数中的一部分1-x为熵的对应−lnx部分在x=1处的一阶泰勒展开(忽略高阶无穷小),所以可以近似替代 计算量大的熵。

 

当然 IID3 C4.5 CART的区别不止这些,还有是否支持回归、树结构、连续值、缺失值处理、剪枝等。这里只说了一点点感性认识 。具体请参考刘建平pinard老师的blog.  http://www.cnblogs.com/pinard/p/6053344.html

 

你可能感兴趣的:(机器学习)