决策树和随机森林 学习笔记
1、决策树
决策树是一种描述对实例进行分类的树形结构。每一次分叉都表示一次特征选择和依据选择的特征进行分一次类。其向下分类的依据为信息熵变小。图中圆和方框分别表示根节点和叶节点。划分到最后叶节点层的信息熵接近于0是理想情况,但一般不能为0,为0可能会出现在训练集上过拟合的现象。
1.1、信息熵、条件熵
对样本X,其信息熵的定义为:
H
(
X
)
=
−
∑
i
=
1
n
p
(
x
i
)
l
n
p
(
x
i
)
H(X)=-\sum_{i=1}^np(x_i)lnp(x_i)
H(X)=−∑i=1np(xi)lnp(xi)。
条件熵
H
(
Y
∣
X
)
H(Y|X)
H(Y∣X)为X发生前提下,Y的信息熵,其表达式为:
H
(
Y
∣
X
)
=
H
(
X
,
Y
)
−
H
(
X
)
H(Y|X)=H(X,Y)-H(X)
H(Y∣X)=H(X,Y)−H(X),结合信息熵的定义推导出:
H
(
Y
∣
X
)
=
−
∑
x
,
y
p
(
x
,
y
)
l
n
p
(
y
∣
x
)
H(Y|X)=-\sum_{x,y}p(x,y)lnp(y|x)
H(Y∣X)=−∑x,yp(x,y)lnp(y∣x)。
1.2、信息增益、信息增益率、Gini指数
信息增益表示得知特征A的信息而使得样本X的信息不确定性减少的程度。其表达式为:
g
a
i
n
(
A
)
=
H
(
X
)
−
H
(
X
∣
A
)
gain(A)=H(X)-H(X|A)
gain(A)=H(X)−H(X∣A)
信息增益率表达式为:
g
a
i
n
(
A
)
H
(
A
)
\frac{gain(A)}{H(A)}
H(A)gain(A)
Gini指数的表达式为:
G
i
n
i
(
p
)
=
∑
k
=
1
K
p
k
(
1
−
p
k
)
Gini(p)=\sum_{k=1}^Kp_k(1-p_k)
Gini(p)=∑k=1Kpk(1−pk)
2、决策树ID3、C4.5、CART的区别
建立决策树的关键,即在当前状态下选择哪个特征作为分类依据。依据不同的分类依据,建立决策树主要有以下三种算法:ID3、C4.5、CART。其中,ID3使用信息增益作为依据进行特征选择,C4.5使用信息增益率作为依据进行特征选择,CART使用Gini指数作为依据进行特征选择。使得每一次决策后熵不断减小。
3、Bagging
Bagging策略是指
(1)从样本集中重采样(有重复的)选出n个样本;
(2)在所有属性上,对这n个样本建立分类器,需注意的是,这里一般选择弱分类器,即上述提到的ID3、C4.5、CART,而尽量不选择强分类器例如SVM;
(3)重复以上步骤m次,即获得了m个分类器,取平均即为分类结果。
4、随机森林
随机森林在Bagging的基础上增加了随机性,横向上在样本上加入随机性,纵向上在特征上加入随机性(即不对所有特征进行选择,而是每次随机选定一部分特征,在这一部分特征中进行选择),即为随机森林(Random Forest),Forest是指通过构建m个分类器,即m个决策树,从而形成森林。通过构建多个分类器,可以有效抹平由于单个决策树所带来的易过拟合的特点,提高模型的泛化能力。