知识点源自李航-《统计学习方法》
1、决策树的剪枝;在决策树学习算法的过程中,为了尽可能正确分类训练样本,结点划分过程将不断重复,有时会造成决策树分支过多,这时就可能因为训练样本学得“太好”了,以至于把训练集自身的一些特点当作所有数据都具有的一般性质而导致过拟合。所以我们采用剪枝对其进行处理。
2、剪枝通过什么方法:通过极小化决策树整体的损失函数来实现。
假设有如下几个变量:
**设决策树 T 的叶子节点个数为 ∣ T ∣ ,
t 是树 T 的叶子节点,该叶节点有 N t 个样本点,
其中k 类的样本点有N t k 个,
H t (T) 为叶节点t 上的经验熵,
α⩾0 为正则化系数。
**
所以,我们的决策树损失函数就可以定义为:
损失函数含义:第一项是误差大小,第二项是模型的复杂度,也就是用叶节点表示,防止过拟合。通过 α 来控制二者的影响力。
3、如何使用这个损失函数?
我们从每个叶节点递归的向上回缩,通过计算回缩之前的损失函数值C1,再计算回缩之后的损失函数值C2,如果C2 <= C1,那么就进行剪枝,树的结构变为剪枝之后的结果。
然后再次递归计算,直至损失函数最小的值为止。
notice:决策树的生成考虑的是局部最优化,而剪枝考虑的却是全局最优化。