Machine Learning Series No.4 -- Decision Trees

决策树

决策树的总结可以划分为以下两个问题:

  • 1.结点如何分裂?

  • 2.如何剪枝?

    剪枝有多重策略,常用的是代价复杂度剪枝(Cost complexity pruning),又叫最弱连接剪枝(weakest link pruning)。


剪枝策略

剪枝策略很多,以下只是一种,在各个算法中可以选用。

代价复杂度剪枝(Cost complexity pruning)

m=1|T|i:xiRm(yiy^Rm)2+α|T| ∑ m = 1 | T | ∑ i : x i ∈ R m ( y i − y ^ R m ) 2 + α | T |

这里∣T∣代表树 T 中叶结点的数量,R_m 代表第 m 个叶结点对应的矩形(预测器空间的子集),yhat_Rm 是 Rm 的预测值,即 Rm 中训练样本预测值的均值(或分类树中的模式响应)。调整参数 α 控制子树复杂度之间的权衡,对训练数据进行拟合。当 α= 0 的时候,子树 T 等同于 T_0。当α的值增长时,构建具备多个子结点的树需要付出代价,这样,要想得到更小的子树,上述公式将达到最小化。我们可以使用某种交叉验证方法选择剪枝参数 α 。


ID3算法

特征值为离散特征。

  • 结点如何分裂?

    选择能获得最大信息增益的特征值进行分裂。

  • 如何剪枝?


C4.5算法

特征值可以为离散特征,也可以连续特征。

  • 结点如何分裂?

    1.对于连续特征值,选择一定方式将其离散化。

    2.对于离散化处理后的特征,使用信息增益比进行特征的选取进行分裂。

    3.使用信息增益比可以修正信息增益对于取值较多特征的偏好。

  • 如何剪枝?


CART树

可以分为分类树、回归树。

目的是将特征空间R进行分割,分割成R1,R2…。

使得每个R的子空间的输出值为子空间的样本的均值(使用平方差作为拟合程度的度量,可得均值是最优解)。

然而同时考虑多个维度的划分是不可行的,CART树在划分时,基于贪心算法,每次将空间划分成两个子空间,然后递归划分两个空间,这种方法称为“递归二元分割”

1.回归树

  • 结点如何分裂?

    基于二元分割,使用平方和来度量拟合程度,找到使得每次划分成两个区域以后的平方损失最小。

  • 如何剪枝?

2.分类树

  • 结点如何分裂?

    基于二元分割,使用基尼指数度量分割后的纯度,选择分割后,具有较小基尼指数和的特征值。

  • 如何剪枝


Bagging树模型

Bootstrap Aggregation – Bagging

1534406881061

上述图片摘自博客。

我们可以通过从(单一)训练数据集提取重复样本进行自助法(bootstrap)操作。在这种方法中,我们生成了 B 个不同的自助训练数据集。我们随后在第 b 个自助训练数据集得到了一个预测结果,从而获得一个聚集预测(aggregate prediction)。

这就叫做袋装(bagging)。注意,聚集(aggregating)在回归和分类问题中可能有不同的均值。当平均预测值在回归问题中的效果很好时,我们将会需要使用多数票决(majority vote):由于分类问题中的聚集机制,整体预测就是在 B 个预测值中最常出现的那个主要类别。

对于一个样本,它在某一次含m个样本的训练集的随机采样中 1m 1 m 。不被采集到的概率为 11m 1 − 1 m 。如果m次采样都没有被采集中的概率是 (11m)m ( 1 − 1 m ) m 。当m→∞时, (11m)m ( 1 − 1 m ) m 1e 1 e ≃0.368。也就是说,在bagging的每轮随机采样中,训练集中大约有36.8%的数据没有被采样集采集中。

对于这部分大约36.8%的没有被采样到的数据,我们常常称之为袋外数据(Out Of Bag, 简称OOB)。这些数据没有参与训练集模型的拟合,因此可以用来检测模型的泛化能力


随机森林

理解了bagging算法,随机森林(Random Forest,以下简称RF)就好理解了。它是Bagging算法的进化版,也就是说,它的思想仍然是bagging,但是进行了独有的改进。我们现在就来看看RF算法改进了什么。   

首先,RF使用了CART决策树作为弱学习器,这让我们想到了梯度提示树GBDT。第二,在使用决策树的基础上,RF对决策树的建立做了改进,对于普通的决策树,我们会在节点上所有的n个样本特征中选择一个最优的特征来做决策树的左右子树划分,但是RF通过随机选择节点上的一部分样本特征,这个数字小于n,假设为 nsub n s u b ,然后在这些随机选择的 nsub n s u b 个样本特征中,选择一个最优的特征来做决策树的左右子树划分。这样进一步增强了模型的泛化能力。    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值