CART树(分类回归树)

主要内容

(1)CART树简介

(2)CART树节点分裂规则

(3)剪枝

---------------------------------------------------------------------------------------------------------------------

一、简介

CART分类回归树是一种典型的二叉决策树,可以做分类或者回归。若预测结果是离散型数据,则CART树为分类树;若预测结果是连续型数据,则CART树是回归树。若为分类树时,输出结果为叶子节点中样本所属的最多类别;若为决策树时,输出结果为叶子节点中样本的均值。

二、CART树节点分裂规则

1、CART分类树

选择具有最小的Gini的属性及其属性值,作为最优分割属性以及最优分裂属性值。Gini值越小,二分之后的子样本‘纯度’越高,即说明选择该属性及其属性值作为分裂属性(值)效果越好。

遍历所有的属性和属性值,选择最小的Gini

对于样本集S,Gini计算如下:

Gini(S) = 1 - \sum_{k=1}^{N}P_{k}^{2} = P_{k}(1-P_{k}) 

其中,P_{k}为第k个类别出现的频率,N为类别数

通过某个属性及其属性值,将样本切分为S_{1}S_{2},对于属性A,Gini计算如下

Gini(S|A) = \frac{|S_{1}|}{|S|}Gini(S_{1})+\frac{|S_{2}|}{|S|}Gini(S_{2})

目标(分裂规则):找出最小的Gini(S|属性),得到最优的分裂属性和属性值

2、CART回归树

遍历所有的属性和属性值

对于样本集S,目标(分裂规则)如下:

min_{j,s}[min_{c1}\sum_{x_{i}\epsilon R_{1}(j,s)}(y_{i}-c_{1})^2+min_{c2}\sum_{x_{i}\epsilon R_{2}(j,s)}(y_{i}-c_{2})^2]

其中,j为属性,s为属性值,R_{1}R_{2}为属性j和属性值s切分的两部分区域,c_{1}c_{2}分别为R_{1}R_{2}下样本的平均值

上述采用平方误差最小作为最优分割,事实上可采用其他的方式,例如MAE作为规则,当然得到的结果也不一样。

三、CART剪枝

详见《李航.统计学习方法》

你可能感兴趣的:(机器学习)