第五章 决策树
决策树(decision tree)是一种基本的分类与回归方法。
决策树可以认为是if-then规则的集合,也可以认为是定义在特征空间与类空间上的条件分布概率。
优点:模型具可读性、分类速度快。
学习步骤:特征选择、决策树的生成、决策树的修剪。
5.1 决策树的模型与学习
5.1.1 决策树模型
5.1.2 决策树与if-then规则
内部条件------规则
叶节点---------结论
5.1.3 决策树与条件概率分布
5.1.4 决策树的学习
本质:从训练集中归纳出一组分类规则。
与训练集不矛盾的决策树可能有多个也可能一个没有。
我们需要选取一个训练数据矛盾较小的决策树,同时要具备良好的泛化能力。
决策树学习用损失函数表示这一目标。决策树学习的损失函数通常是正则化的极大似然函数。抉择书学习的策略是以损失函数为目标函数的最小化。
5.2 特征选择
5.2.1 特征选择问题
特征选择在于选取对训练数据具有分类能力的特征。从而提高决策树的学习效率。
如果利用一个特征进行分类的结果与随机分类的结果没有很大差异,则称这个特征是没有分类能力的。
扔掉这样的特征对决策树的精度影响不大。
准则:信息增益or信息增益比
5.2.2 信息增益
熵只依赖于X的分布,和X的取值无关。
随机变量的取值在等概率分布的时候,相应的熵最大。
条件熵H(Y|X)表示在已知随机变量X的条件下随机变量Y的不确定性。
当熵和条件熵的概率由数据估计(特别是极大似然估计)得到时,所对应的熵与条件熵分别称为经验熵和条件经验熵。
信息增益表示得知特征X的信息而使得类Y的信息的不确定性减少的程度
定义
信息增益大的特征具有更强的分类能力。
算法5.1 信息增益算法
5.2.3 信息增益比
5.3 决策树的生成
算法5.2 ID3算法
核心:在各个节点上应用信息增益准则选择特征,递归地构建决策树。
ID3算法只有树的生成,所以该算法生成的树容易产生过拟合
算法5.3 C4.5生成算法
5.4 决策树的剪枝
考虑决策树的复杂度,对其进行简化。
在决策树学习中将已生成的树进行简化的过程称为剪枝
算法5.4 树的剪枝算法
简而言之就是递归比较剪枝前后哪个损失函数小。
5.5 CART算法
分类回归树(classification and regression tree, CART)
由特征选择、树的生成、剪枝组成
步骤
- 决策树生成:基于训练数据集生成决策树,生成的决策树要尽量大
- 决策树剪枝:用验证数据集对已生成的树进行剪枝并选择最优子树,这时用损失函数最小作为剪枝的标准
5.1.1 CART生成
对回归树用平方误差最小化准则
对分类树用基尼指数最小化准测
回归树生成
简而言之就是不段选择切分点s,求得最小误差的那个切分点即为最优切分点
算法 5.5 最小二乘回归树生成算法
基尼指数
特征基尼指数
算法 5.6 CART 生成算法
5.5.2 CART剪枝
步骤
首先从生成算法产生的决策树T0底端开始不断剪枝,直到T0的根节点,形成一个子树序列{T0,T1,···,Tn};然后通过交叉验证法在独立的验证数据集上对子树序列进行测试,从中选择最优子树。