刚刚学习了决策树,写一下自己的心得,希望大家多多指教,内容没有写完,待续。
决策树的属性的划分——信息熵,信息增益
信息熵:用来度量信息纯度的的一个指标,信息熵越小,则说明数据集的纯度越高。
公式:
注:D为数据集,pk表示数据集合中第k类所占的比例。
例子:
该数据来自周志华老师《机器学习》
pk有两种情况:好瓜与坏瓜。好瓜有8个,坏瓜有9个。p(好瓜)=8/17 p(坏瓜)=9/17
所以信息熵Ent(D)= -[(8/17)*log(8/17)+(9/17)*log(9/17)]=0.998
信息增益:通俗的讲就是针对某一具体属性,计算有它和没它时的差值,信息增益的值越大,说明该属性越重要。
公式:
注:
D指代数据集的数量,上图中|D|=17
以此类推可以计算出D2,D3,,从而计算出Gain(D,色泽)=0.109。
按照以上方法可以求出根蒂,敲声,纹理,脐部,触感的信息增益
Gain(D,根蒂)=0.143
Gain(D,敲声)=0.141
Gain(D,纹理)=0.381
Gain(D,脐部)=0.289
Gain(D,触感)=0.006
根据以上数据可以得到纹理的信息增益最大,所以选择纹理作为划分属性
经过以上处理,将原来的数据集D,分割成三个数据集,对于每个新的数据集继续按照上面的方式继续划分,就会得到最终的决策树。