统计学习方法笔记(四):决策树
0.补充知识:
1)信息论中的熵:
定义:表示随机变量不确定性的度量
具体解释:对于离散型随机变量X,假设其分布律为
P
(
X
=
x
i
)
=
p
i
,
i
=
1
,
2
,
.
.
.
,
n
P(X=x_i)=p_i, i=1,2,...,n
P(X=xi)=pi,i=1,2,...,n
则随机变量X的熵为
H
(
X
)
=
−
∑
i
=
1
n
p
i
l
o
g
p
i
H(X) = -\sum_{i=1}^{n}p_ilogp_i
H(X)=−i=1∑npilogpi
注:
1.若pi=0,则定义0log0=0
2.式中对数函数通常以2或e为底数,对应的单位为比特(bit)或纳特(nat)
3.也可将H(X)记作H§,因为熵的值只与X的分布有关而与X的取值无关
以下的例子表明了为什么熵可以反映随机变量的不确定性
2)条件熵
定义:已知条件下随机变量的不确定性度量
具体解释:
设二维随机向量(X,Y),服从联合概率分布
P
(
X
=
x
i
,
Y
=
y
i
)
=
p
i
j
,
i
=
1
,
2
,
.
.
.
,
n
;
j
=
1
,
2
,
.
.
.
,
m
P(X=x_i,Y=y_i)=p_{ij},i=1,2,...,n;j=1,2,...,m
P(X=xi,Y=yi)=pij,i=1,2,...,n;j=1,2,...,m
则条件熵H(Y|X)表示已知随机变量 X 的条件下随机变量 Y 的不确定性,表达式如下:
H
(
Y
∣
X
)
=
∑
i
=
1
n
p
i
H
(
Y
∣
X
=
x
i
)
p
i
=
P
(
X
=
x
i
)
,
i
=
1
,
2
,
.
.
.
,
n
H(Y|X)=\sum_{i=1}^np_iH(Y|X=x_i) \\ p_i=P(X=x_i),i=1,2,...,n
H(Y∣X)=i=1∑npiH(Y∣X=xi)pi=P(X=xi),i=1,2,...,n
注:
当熵和条件熵中的概率由数据估计(特别是极大似然估计)得到时,所对应的熵与条件熵分别称为经验熵( empirical entropy )和经验条件熵( empiricalconditional entropy )
3)信息增益
4)信息增益比
1.概述
1)模型描述:分类决策树模型是一种描述对实例进行分类的树形结构.决策树由结点(node)和有向边(directed edge)组成.结点有两种类型:内部结点(internal node)和叶结点(leaf node).内部结点表示一个特征或属性,叶结点表示一个类.
2)学习过程:用决策树分类,从根结点开始,对实例的某一特征进行测试,根据测试结果,将实例分配到其子结点;这时,每一个子结点对应着该特征的一个取值.如此递归地对实例进行测试并分配,直至达到叶结点.最后将实例分到叶结点的类中
3)两种理解决策树构造的角度:
2.学习过程
给定训练数据集如下:
D
=
{
(
x
1
,
y
1
)
,
(
x
2
,
y
2
)
,
.
.
.
,
(
x
N
,
y
N
)
}
x
i
=
(
x
i
(
1
)
,
x
i
(
2
)
,
.
.
.
,
x
i
(
n
)
)
T
y
i
∈
{
1
,
2
,
.
.
.
,
K
}
,
i
=
1
,
2
,
.
.
.
,
N
D=\{(x_1,y_1),(x_2,y_2),...,(x_N,y_N)\} \\ x_i = (x_i^{(1)},x_i^{(2)},...,x_i^{(n)})^T \\ y_i \in \{1,2,...,K\} ,i=1,2,...,N
D={(x1,y1),(x2,y2),...,(xN,yN)}xi=(xi(1),xi(2),...,xi(n))Tyi∈{1,2,...,K},i=1,2,...,N
其中xi表示输入实例,以特征向量表示,yi表示类标记,为模型根据输入产生的结果。
学习过程:
0.根据数据集中的输入使用算法构造决策树
1.将输入传入构造的决策树,将不同的输入根据相应算法“打上”不同的类标记
2.用损失函数表示正确分类的程度,误分类越严重,损失函数越大,反之则越小
3.通过算法“修剪”决策树模型,使得损失函数最小化
以上算法包括ID3、C4.5和CART算法
3.算法
1)信息增益的计算:
2)ID3算法:
3)C4.5算法:
需要注意计算信息增益比里用的是数据集D还是划分后的数据集Di!
4)决策树剪枝算法:
5)CART算法(有空补上)