监督学习之树模型(2)

决策树算法的基本思想是以信息熵为度量构造一棵值下降最快的树。因此需要理解如下几个概念。

为了理解熵,必须讲一点物理学。热力学第二定律表达了有很多种解释,有一种最容易懂:能量转换的时候,大部分能量会转换成预先设定的状态,比如热能变成机械能、电能变成光能。但是,还有一部分能量会生成新的状态。
状态多,就是可能性多,表示比较混乱;状态少,就是可能性少,相对来说就比较有秩序。因此,能量转换会让系统的混乱度增加,熵就是系统的混乱度。
“熵”是一种无序程度的量度,意思是越混乱越无规律熵值就越大,反之熵值越小。

熵低则混乱度低,熵高则混乱度高

水的三相中,冰块是分子的有序排列,吸收能量后,变成液体水,分子排列变得无序,变成气体后更加无序。因此气体的熵最高。

熵让我们理解了一件事,如果不施加外力影响,事物永远向着更混乱的状态发展。

信息熵

假设我们要做一个游戏,每次从盒子中抽一个小球记录颜色后放回,如果抽4次的结果和盒子中球的分布一致的话我们获胜,这三种不同组合中第一个盒子最容易获胜,第二个次之,第三个获胜概率最低。

第一个盒子:1x1x1x1=1
第二个盒子:0.75x0.75x0.75x0.25=0.105
第三个盒子:0.5x0.5x0.5x0.5=0.0625
因为和比积好,接下来我们把这个公式变形。

log2(ab) = log2(a) + log2(b)

根据上面的公式,第二个盒子的获胜概率可以换一种形式表示

0.75x0.75x0.75x0.25 = 0.105
log2(0.75)+log2(0.75)+log2(0.75)+log2(0.25) = -3.245

那么获胜几率可以转换成如下的表格。

接着增大球的数量,有如下公式

两种颜色的球时当前状态的熵(混乱程度)的计算

这就是1948年香农提出的信息熵(Entropy)的概念。
假如事件A的分类划分是(A1,A2,…,An),每部分发生的概率是(p1,p2,…,pn),那信息熵定义为公式如下:

信息增益

信息增益又称相对熵(relative entropy),是针对一个一个的特征而言的,就是看一个特征X,系统有它和没它的时候信息量各是多少,两者的差值就是这个特征给系统带来的信息增益。
信息增益的公式很简单,就是信息熵的变化。

当两个子节点大小一致时,就是父节点的熵减去子节点熵的平均值。

我们可以通过下面的例子来进行理解:

问题:假设每个子集大小一样都是10个点,哪种分法的效果最好?

第一种分法,能提供的信息变化较少。

第二种分法很糟糕,没有提供任何信息增益。

第三种分法很好,完美地分割了数据。

如果两个子节点的大小不一样该怎么办?这就引出了条件熵的概念。

结合条件熵的概念,我们把信息增益的公式写为