1.CART算法
分类与回归树(classification and regression tree,CART)模型由Breiman等人在1984年 提出,是应用广泛的决策树学习方法。CART同样由特征选择、树的生成及剪枝组成,既可以用于分类也可以用于回归。以下将用于分类与回归的树统称为决策树。
CART是在给定输入随机变量X条件下输出随机变量Y的条件概率分布的学习方法。 CART假设决策树是二叉树,内部结点特征的取值为“是”和“否”,左分支是取值为“是”的分支,右分支是取值为“否”的分支。这样的决策树等价于递归地二分每个特征,将输入空间即 特征空间划分为有限个单元,并在这些单元上确定预测的概率分布,也就是在输入给定的条7件下输出的条件概率分布。
CART算法由以下两步组成:
(1)决策树生成:基于训练数据集生成决策树,生成的决策树要尽量大;
(2)决策树剪枝:用验证数据集对已生成的树进行剪枝并选择最优子树,这时用损失 函数最小作为剪枝的标准。
2.CART生成
决策树的生成就是递归地构建二叉决策树的过程。对分类树用基尼指数(Gini index)最小化准则,对回归树用平方误差最小化准则,进行特征选择,生成二叉树。
2.1 分类树的生成
CART分类树算法使用基尼系数选择特征,基尼系数代表了模型的不纯度,基尼系数越小,不纯度越低,特征越好。
(1)基尼指数
分类问题中,假设有K个类,样本点属于第k类的概率为pk,则 概率分布的基尼指数定义为:
G i n i ( p ) = ∑ k = 1 K p k ( 1 − p k ) = 1 − ∑ k = 1 K p k 2 Gini(p) =\displaystyle\sum_{k=1}^{K}p_k(1-p_k)=1-\displaystyle\sum_{k=1}^{K}p_k^2 Gini(p)=k=1∑Kpk(1−pk)=1−k=