【机器学习基础】梯度提升决策树

引言

上一节中介绍了《随机森林算法》,该算法使用bagging的方式作出一些决策树来,同时在决策树的学习过程中加入了更多的随机因素。该模型可以自动做到验证过程同时还可以进行特征选择。
这一节,我们将决策树和AdaBoost算法结合起来,在AdaBoost中每一轮迭代,都会给数据更新一个权重,利用这个权重,我们学习得到一个g,在这里我们得到一个决策树,最终利用线性组合的方式得到多个决策树组成的G。

1. 加权的决策树算法(Weighted Decision Tree Algorithm)

在引言中介绍了,我们利用AdaBoost的思想,为数据赋予不同的权重,而在将要介绍的Adaptive Boosted Decision Tree中,要建立加权的决策树,所以接下来就要介绍它。
在之前含有权重的算法中,权重作为衡量数据重要性的一项指标,用来评估训练误差,如下面的公式所示:

上面的公式中,权重是包含在误差的公式中的,也就是说,我们想要构造一个带有权重的决策树算法,需要改造决策树的误差度量函数。然而换一个角度,权重也可以等效于数据的重复次数,重复次数越多的数据,说明其越重要。在广义的随机算法中,我们可以根据权重比例来进行随机采样(比如,如果权重比例是30%,那么采样该数据的概率就是30%),根据这种方式得到一组新的数据,那么这组新的数据中的比例大概就是和权重的比例呈正比的,也就是说它能够表达权重对于数据的意义。

在AdaBoost-DTree中,为了简单起见,我们不去改变AdaBoost的框架,也不去修改决策树的内部细节,而只是通过基于权重的训练数据的采样来实现。

1.1 弱决策树算法

在AdaBoost算法中,我们通过错误率εt来计算单个的g的权重αt,那么如果我们使用决策树作为g的时候,g是一个完全长成的树,该树对整个数据集进行细致的切分导致Ein=0,那么这使得εt=0,但计算得到的权重αt会变成无限大。
其意义是,如果使用一个能力很强的树作为g的话,那么该算法会赋予该树无限大的权重或票数,最终得到了一棵“独裁”的树(因为AdaBoost的哲学意义是庶民政治,就是集中多方的意见,及时有的意见可能是错误的),违背了AdaBoost的宗旨。
</

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值