1. 简介
分类与回归树(Classification And Regression Tree),采用二分递归分割技术,将当前样本集划分成两个子集,即其结构为二叉树,每个内部节点均只有两个分支。左分支为特征值为True的样本集合,右分支为特征取值为False的样本集合。
CART既可以处理连续型特征,也可以处理离散型特征,基于预测值的取值类型不同,可划分成回归树和分类树两种。
- 预测值为连续型变量,则CART生成回归树。
- 预测值为离散型变量,则CART生成分类树。
2. 特征处理
CART既可以使用离散特征,也可以使用连续特征。
(1)连续特征的处理
对于连续型特征,需要进行离散化处理。假设数据集有
个样本,关于连续特征
,按照样本取值大小,从小到大进行排列,得到样本集关于A取值序列
。CART取两个连续取值的中点作为切分点,即第
个切分点为
,关于连续特征
的切分点一共有
个。
当选择第个切分点
时,左分支的样本子集为关于特征
取值小于
的样本的集合,右分支的样本子集为剩余样本的集合。
(2)离散特征的处理
离散特征,把特征的各个取值作为切分点,例如,离散特征有
个取值
,则关于该特征共有
个切分点。其中第
切分点,表示选择
作为特征,左分支表示关于特征
取值为
的样本的集合,右分支为剩余样本的集合。
3. CART分类树
当预测值为连续值时,生成CART分类树。CART分类树采用基尼系数(Gini)进行分类特征的选择。
基尼系数(Gini)反映的是数据集的纯度,表示的是直接从数据集中随机抽取两个样本,这两个样本属于不同类别的概率。基尼系数越小,表示数据集的纯度越高。
(1)基尼系数计算公式
假设数据集有
个类别,其基尼系数的计算公式如下:
以离散型特征为例,假设特征,有
个取值,分别为
,若选择特征
取值为
,则将数据集
划分成两个子集
(左分支,特征
取值为
)和
(右分支,特征
取值不等于
),则数据集选取该特征进行分类后的基尼系数如下: