ID3\C4.5算法
ID3算法
ID3算法,ID的意思是 Iteritive Dichotomiser(迭代二分类器)。
它的基本原理是对所有特征求信息增益,选出信息增益最大的特征,按照该特征对数据进行分组 D 1 , D 2 D_1, D_2 D1,D2(二分类,所以分了两组),然后,如果每组中所有的样本都属于同一类,则创建该节点为叶子节点;否则,递归上面的步骤,一直到所有节点都为叶子节点结束递归。
C4.5算法
C4.5(Classifier4.5) 算法是对 ID3 算法的改进,就是将 ID3中的信息增益改为求信息增益比。
名词解释
信息增益:
特征 A 对训练数据集D的信息增益g(D,A),定位集合D的经验熵H(D)与特征A给定条件下D的经验条件熵H(D|A)之差,即:
g
(
D
,
A
)
=
H
(
D
)
−
H
(
D
∣
A
)
g(D,A) = H(D) - H(D | A)
g(D,A)=H(D)−H(D∣A)
信息增益比:
特征A对训练数据集D的信息增益比
g
R
(
D
,
A
)
g_R(D, A)
gR(D,A) 定义为其信息增益 g(D, A) 与训练数据集 D关于特征A的值的熵
H
A
(
D
)
H_A(D)
HA(D)之比,即:
g
R
(
D
,
A
)
=
g
(
D
,
A
)
H
A
(
D
)
g_R(D, A) = \frac{g(D, A)}{H_A(D)}
gR(D,A)=HA(D)g(D,A)
其中,
H
A
(
D
)
=
−
∑
i
=
1
n
∣
D
i
∣
∣
D
∣
l
o
g
2
∣
D
i
∣
D
H_A(D) = -\sum_{i=1}^n \frac{|D_i|}{|D|}log_2 \frac{|D_i|}{D}
HA(D)=−∑i=1n∣D∣∣Di∣log2D∣Di∣,n是特征A取值的个数。