码迷,mamicode.com
首页 > 其他好文 > 详细

CART:分类与回归树

时间:2015-03-02 00:54:58      阅读:229      评论:0      收藏:0      [点我收藏+]

标签:

起源:决策树切分数据集

  决策树每次决策时,按照一定规则切分数据集,并将切分后的小数据集递归处理。这样的处理方式给了线性回归处理非线性数据一个启发。

能不能先将类似特征的数据切成一小部分,再将这一小部分放大处理,使用线性的方法增加准确率呢?

 

Part I:  树的枝与叶

枝:二叉 or 多叉?

   在AdaBoost的单决策树中,对于连续型数据构建决策树,我们采取步进阈值切分2段的方法。还有一种简化处理,即选择子数据集中的当前维度所有不同的值作为阈值切分。

而在CART里,大于阈值归为左孩子,小于阈值的归为右孩子。若是离散型数据,则根据离散数据种类建立对应的多叉树即可。

叶:何时不再切分?

  ID3决策树中,停止切分的条件有两个:

      ①DFS链路中全部特征维度被扫过一次,很明显,对于离散型特征,重复选取某一维度,很容易导致重复切分而死循环爆栈。 

      ②当前子数据集分类全部一致,已经是很完美的切分了,再切也没意思。

CART中,大多处理的是连续型特征,所以可以且最好重复选取某一维度。同样遵循②。

追加③条件:手动限制切分子集数量下限tolN,误差变化下限tolS。一旦达到这两个下限,就立刻停止。

枝:一个好枝?

ID3算法给出了一个评价离散Label的好枝的标准:分类的混乱度(香农熵)降低。

对于连续数据,好枝的参考标准则是类似最小二乘法的目标函数,即误差越小越好。

由于计算误差需要先进行线性回归,相当于树套回归,虽然效果很好,但是无疑带来计算压力。

在这点上, CART利用均值和方差的性质给出了一个简化的误差计算:即假设一团数据的回归结果是这团数据的均值,那么目标函数即可当成总方差。

使用均值替代回归结果的树称为回归树,使用实际回归结果的树成为模型树。

CART:分类与回归树

标签:

原文地址:http://www.cnblogs.com/neopenx/p/4307837.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!