决策树
标签: 统计学习
目录
[TOC]
模型
决策树既可以看成一个if-then规则的集合,也表示给定特征条件下类的条件概率分布,因此决策树学习可以看成是由训练数据集估计条件概率模型。
决策树学习的损失函数通常是正则化的极大似然函数,学习策略以损失函数为目标函数的最小化
决策树学习算法包含特征选择,决策树的生成,决策树的剪枝过程。深浅不同的决策树对应不同复杂度的概率模型。
决策树的生成只考虑局部最优,剪枝则考虑全局最优。常用算法有ID3,C4.5,CART
特征选择
通常特征选择的准则是信息增益或信息增益比
信息增益
熵(entropy)表示随机变量不确定性的度量。假设X是一个离散随机变量,概率分为为
则随机变量X的熵定义为
条件熵定义为
当熵与条件熵由数据估计(如极大似然估计)得到时,分别称为经验熵(empirical entropy)与经验条件熵(empirical conditional entropy)
信息增益表示得知特征X的信息,而使得类Y的信息的不确定性减少的程度。特征A对数据集D的信息增益g(D,A),定义为
熵与条件熵之差称为互信息(mutual information)。决策树学习中的信息增益 = 数据集中类与特征的互信息
信息增益依赖于特征;信息增益大的特征具有更强的分类能力
计算数据集D的经验熵H(D)
计算特征A对数据集D的经验条件熵H(D|A)
信息增益比
决策树生成
ID3算法
核心是在决策树各个结点上应用信息增益准则选择特征,递归地构建决策树,直到所有特征的信息增益均很小或无特征可选为止
ID3算法相当于用极大似然法进行概率模型的选择(该算法只有树的生成,容易过拟合)
C4.5算法
相比ID3算法,使用信息增益比来选择特征
剪枝
可以通过极小化损失函数来实现。对于树T,叶结点个数为|T|,t为叶结点,该叶结点有Nt个样本点,其中k类样本点有Ntk个,Ht(T)为叶结点t上的经验熵,a≥0为参数,则决策树学习的损失函数可以定义为
其中经验熵为
将损失函数第一项记为
这时有
损失函数解释。第一项:所有叶结点的经验熵之和,同时用各结点上的样本点数做权重,表明分到该叶结点的样本点越多,越值得重视;该项表明了模型与训练数据的拟合程度。第二项:|T|为叶结点数,表示模型复杂度,a用来控制模型复杂度的选择。该损失函数的极小化等价于正则化的极大似然估计
决策树生成:只考虑通过提高信息增益(或信息增益比)来对数据拟合,属于局部最优
决策树剪枝:通过优化损失函数,考虑模型复杂度。属于全局最优
CART算法
CART生成
- 回归树
回归树模型可以表示为
cm为输入单元Rm上的固定输出值
cm的估计可以采用均值
对于切分变量xj与切分点s,定义两个区域,
然后,求解
即,使平方误差最小的点为最优切分点。递归地进行,即可得到一颗回归树,又称为最小二乘回归树
-
分类树
定义基尼指数为(总共有K类,pk为样本点属于第k类的概率)
对于给定的样本集合D,其基尼指数为
定义特征A条件下,集合D的基尼指数为
Gini(D,A)表示经过条件A=a分割之后,集合D的不确定性,与熵类似
CART剪枝
- 剪枝,形成子树序列
- 利用交叉验证法选择最优子树
网友评论