思想:希望决策树的分支节点所包含的样本尽可能属于同一类别,即节点的纯度越来越高。
1. 信息熵 (Information Entropy)
信息熵(Information Entropy)用于度量样本集合 “纯度(purity)” 的指标。
假定当前样本集合D中第k类样本所占比例为
p
k
p_k
pk(k=1, 2…|y|) ,则D的信息熵定义为
E
n
t
(
D
)
=
−
∑
k
=
1
∣
y
∣
p
k
l
o
g
2
p
k
Ent(D)= -\sum_{k=1}^{ |y|}p_klog_2^{p_k}
Ent(D)=−k=1∑∣y∣pklog2pk
Ent(D)值越小,则D的纯度越高。
2. 信息增益 (Information Gain) 与 ID3 决策树算法
用于计算属性a对样本集D进行划分所获的的 “信息增益”
G
a
i
n
(
D
,
a
)
=
E
n
t
(
D
)
−
∑
v
=
1
V
|
D
v
|
|
D
|
E
n
t
(
D
v
)
Gain(D,a)=Ent(D)-\sum_{v=1}^V\frac{|D^v|}{|D|}Ent(D^v)
Gain(D,a)=Ent(D)−v=1∑V|D||Dv|Ent(Dv)
一般而言,信息增益越大,意味着使用属性a来进行划分所获得的“纯度提升”越大。
因此,我么可用信息增益来进行决策树的划分属性选择,即选择属性 a ∗ = a r g m a x G a i n ( D , a ) a_*=argmax Gain(D, a) a∗=argmaxGain(D,a),著名的ID3决策树算法就是以信息增益为准则来选择划分属性
ID3 决策树算法(Iteration Dichotomiser 迭代二分类器) 是基于信息增益的决策树算法。
4. 信息增益率(Information Gain Ratio) 与 C4.5 决策树算法
因为信息增益准则对可取值数目较多的属性有所偏好,为了避免这个情况,C4.5 决策树算法使用 “信息增益率”来决策
信息增益率:
G
a
i
n
_
r
a
t
i
o
(
D
,
a
)
=
G
a
i
n
(
D
,
a
)
I
V
(
a
)
Gain\_ratio(D,a)=\frac{Gain(D,a)}{IV(a)}
Gain_ratio(D,a)=IV(a)Gain(D,a)
其中,
I
V
(
a
)
=
−
∑
v
=
1
V
D
v
D
l
o
g
2
D
v
D
其中,IV(a)=-\sum_{v=1}^V{\frac{D^v}{D} log_2^{\frac{D^v}{D} }}
其中,IV(a)=−v=1∑VDDvlog2DDv
需要注意的是:增益率准则对可取值数目较少的属性值有所偏好。因此,C4.5 算法并不是直接选择增益最大的候选划分属性,而是使用了一个启发式:先从候选划分属性中找出信息增益高于平均水平的属性,再从中选择增益率最高的。
5. 基尼指数(Gini) 与 CART 决策树算法
基尼指数是另一种用于衡量数据集纯度的指标。
基尼值:
G
i
n
i
(
D
)
=
1
−
∑
k
=
1
y
p
k
2
基尼值: Gini(D) = 1-\sum_{k=1}^yp_k^2
基尼值:Gini(D)=1−k=1∑ypk2
基尼值 Gini(D) 越小,数据集的纯度越高。
基尼指标:
G
i
n
i
_
i
n
d
e
x
(
D
,
a
)
=
∑
v
=
1
V
D
v
D
G
i
n
i
(
D
)
基尼指标: Gini\_index(D,a) = \sum_{v=1}^V\frac{D^v}{D} Gini(D)
基尼指标:Gini_index(D,a)=v=1∑VDDvGini(D)
我们在候选属性集合A中,选择那个使得划分后属性基尼指数最小的属性作为最优划分属性