决策树算法中涉及的准则有三类:
(1)叶子学习准则:即标识叶子结点的类别准则。
(2)划分选择(选择划分属性)准则。
(3)剪枝准则。
准则
决策树算法中涉及的准则有三类:
(1)叶子学习准则:即标识叶子结点的类别准则,如,以落入该叶子结点中样本最多的类别为叶子结点的类别,当出现并列“最多”时,以某种偏好确定。
(2)划分选择(选择划分属性)准则。
(3)剪枝准则。
本小节对划分选择(选择划分属性)准则作些补充讨论。
(1)基于信息熵选择划分属性:其属性选择函数(如下三者之一):
- 信息增益准则
- 增益率准则
- 二者联合:用信息增益筛选出高于平均水平的属性(集合),再从中选择增益率最高的
在【西瓜书图4.2】的决策树基本算法中的第8行改为调用上述基于信息熵的函数,实现属性选择。
(2)基于基尼指数选择划分属性:只须将(1)中选择函数改为基尼指数实现即可。
(3)基于对率回归函数选择划分属性:在上述(1)或(2)中,使用对率回归函数(逻辑回归函数)对样本集进行划分,如:
1.对于
(
D
,
a
)
(D,a)
(D,a),当其中
a
a
a为连续属性时,先使用对率回归函数产生划分:
D
=
D
+
⋃
D
−
D=D^+ \bigcup D^-
D=D+⋃D−,再计算
G
a
i
n
(
D
,
a
)
=
E
n
t
(
D
)
−
∣
D
+
∣
∣
D
∣
E
n
t
(
D
+
)
−
∣
D
−
∣
∣
D
∣
E
n
t
(
D
−
)
\begin{align} \mathrm{Gain}(D,a) =\mathrm{Ent}(D)-\frac{|D^+|}{|D|}\mathrm{Ent}(D^+)-\frac{|D^-|}{|D|}\mathrm{Ent}(D^-) \tag{4.27} \end{align}
Gain(D,a)=Ent(D)−∣D∣∣D+∣Ent(D+)−∣D∣∣D−∣Ent(D−)(4.27)
2.对于 a a a为离散属性,则由【西瓜书式(4.2)】求 G a i n ( D , a ) \mathrm{Gain}(D,a) Gain(D,a)。
3.比较该结点所有属性的信息增益
G
a
i
n
(
D
,
a
)
\mathrm{Gain}(D,a)
Gain(D,a),即得选择
a
∗
=
arg
min
a
∈
A
G
a
i
n
(
D
,
a
)
\begin{align} a_*=\mathop{\arg\min}\limits_{a \in A}\mathrm{Gain}(D,a)\tag{4.28} \end{align}
a∗=a∈AargminGain(D,a)(4.28)
(4)基于“最小训练误差”选择划分属性:
“最小训练误差”准则是指使算法在训练集上的误差最小化,若样例集中无冲突数据(即:若样本相同,则所属的类相同),则【西瓜书图4.2】算法产生的决策树,能使相同的样本落入同一叶结点,且样本标记与落入的叶结点的标记一致,此时(最小)训练误差为0,即该决策树与训练集一致。 但若样例集中有冲突数据呢?如,完全一样的样本,可能属于不同的类别,那么,就应基于它属于各类别的比例(概率)来预测新样本(新样本的属性与它相同)的类别,这就是“最小训练误差”准则的原理。
类比信息增益准则,即可构造出“最小训练误差”准则,如图4.6所示。
其中,
D
=
D
a
1
⋃
D
a
2
⋃
⋯
⋃
D
a
V
D=D_a^1\bigcup D_a^2\bigcup \cdots \bigcup D_a^V
D=Da1⋃Da2⋃⋯⋃DaV表示
D
D
D的基于
a
a
a的划分,将
D
a
1
,
D
a
2
,
⋯
,
D
a
V
D_a^1,D_a^2,\cdots,D_a^V
Da1,Da2,⋯,DaV“视为”叶子结点(图中虚线椭圆表示),则叶子结点可按上述学习准则确定其类别(有冲突时,由冲突双方力量的占比决定胜负)。 不妨记叶子结点
D
a
k
D_a^k
Dak的类别为
[
D
a
k
]
[D_a^k]
[Dak],则该叶子结点的训练误差为
E
(
D
a
k
)
=
∑
x
∈
D
a
k
I
(
f
(
x
)
≠
[
D
a
k
]
)
\begin{align} E(D_a^k)=\sum_{x \in D_a^k}\mathbb{I} (f(x)\neq [D_a^k])\tag{4.29} \end{align}
E(Dak)=x∈Dak∑I(f(x)=[Dak])(4.29)
则
D
D
D基于
a
a
a划分的训练误差为
E
(
D
,
a
)
=
∑
k
=
1
V
E
(
D
a
k
)
\begin{align} E(D,a)=\sum_{k=1}^VE(D_a^k)\tag{4.30} \end{align}
E(D,a)=k=1∑VE(Dak)(4.30)
则最小训练误差准则为
a
∗
=
arg
min
a
∈
A
E
(
D
,
a
)
\begin{align} a_*=\mathop{\arg\min}\limits_{a \in A}E(D,a)\tag{4.31} \end{align}
a∗=a∈AargminE(D,a)(4.31)
“最小训练误差”准则偏好选择那些可取值较多的属性(与信息增益准则的偏好相同)。
本文为原创,您可以:
- 点赞(支持博主)
- 收藏(待以后看)
- 转发(他考研或学习,正需要)
- 评论(或讨论)
- 引用(支持原创)
- 不侵权