笔记-CART

1.CART

分类与回归树(classification and regression tree)是决策树算法的一种,既可以用于分类,也可以用于回归。CART假设决策树是二叉树,其结点特征取值只有“是”和“不是”,这样的决策树相当于递归的二分每个特征,CART算法:

(1)决策树生成:通过训练数据集生成 决策树,越大越好。

(2)决策树剪枝:使用验证数据集对决策树进行剪枝,选出最优的子树,同样是损失函数最小化为目标。

2.CART回归

一个回归树对应着对输入空间(特征空间)的划分以及划分的单元上的输出。

回归树的生成:

输入随机变量 X,Y , Y 是连续变量,输入数据集

D=(x1,y1),(x2,y2),,(xn,yn)

输入空间可划分为有限个区域 R1,R2,,RM , xRm 上的输出为 cm ,所以回归树模型可表示为:

f(x)=i=1ncmI(xiRm)

用平方方差 sumxiRm(yif(xi))2 来表示回归树对于训练数据的预测误差,求平方方差最小来求每个区域上最优的输出。易知, Rm 上的最优输出 c^m=ave(yi|xiRm) .

输入空间可以划分,那么如何划分呢?采用启发式算法,对于变量 x(j) 和它的值 s ,定义两个区域

R1(j,s)={x|x(j)S},R2(j,s){x|x(j)>S}

求解,

minj,s(minc1xiR1(yic1)2+minc2xiR2(yic2)2)

j 给定时,可以求出最优的切分点s, 遍历所有的变量,得到 (j,s) ,得到最优切分变量和切分点。将输入空间分成两个子区域,然后依次对两个子区域进行划分,直到划分出M个区域。

3.CART分类

算法大致与ID3及C4.5相同,但是不仅要选取特征,还要选取特征最优二值划分点,两者准则为基尼指数极小化。

基尼指数:假设样本有 K 类,样本属于第k类的概率为 pk

Gin(p)=k=1Kpk(1pk)=1k=1Kp2k

基尼指数表示数据集D的不确定度,基尼指数越大,不确定度越大,与熵类似。

4.CART剪枝

CART剪枝是一种全局搜索最优的方式,从生成的决策树 T0 底端开始不断向上剪枝,直到剩下单结点树,形成一个子树序列 {T0,T1,,Tn} ,然后通过交叉验证的方法在独立的验证数据集上对子树集进行测试,得出最优的子树。

如何得到子树序列

Breiman等人证明,可以用递归的方法对树进行剪枝,将 α 从小增大, α0<α1<<αn<+ ,产生一系列的区间 [αi,αi+1),i=0,1,,n ,剪枝得到的子树序列对应于区间 [αi,αi+1) 上的最优子树序列 {T0,T1,,Tn}

具体地,从树 T0 开始剪枝,以 t 为根结点的树损失函数

Cα(Tt)=C(Tt)+α|Tt|

t 是单结点树

Cα(t)=C(t)+α

α=0 α 很小时,

Cα(Tt)>Cα(t)

α 逐渐增大,直至有一个 α 满足

Cα(Tt)=Cα(t)

此时,定义 g(t)=α=Cα(TtCα(t))|Tt|1 ,此时 t Tt有相同的损失函数, t Tt更可取,对 Tt 剪枝。

因此,对树 T0 每一个内部结点 t 计算g(t), g(t) ,也就是 α 表示剪枝后损失函数整体减小的程度。选取 g(t) 最小的 Tt

进行剪枝,剪枝后的子树为 T1 并令 α1=g(t) ,则 T1 是区间 [α1,α2) 的最优子树。不断增大 α ,得到新的区间,直到得到根结点树。

如何得到最优解

利用独立的验证数据集,对子树序列中子树分别计算平方方差损失或者基尼系数,其中值最小的就是最优解。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值