GBDT 算法:原理篇

GBDT 算法:原理篇

tags: 学习笔记 机器学习 GBDT


GBDT 是常用的机器学习算法之一,因其出色的特征自动组合能力和高效的运算大受欢迎。
这里简单介绍一下 GBDT 算法的原理,后续再写一个实战篇。

1、决策树的分类

决策树分为两大类,分类树和回归树。

分类树用于分类标签值,如晴天/阴天/雾/雨、用户性别、网页是否是垃圾页面;

回归树用于预测实数值,如明天的温度、用户的年龄、网页的相关程度;

两者的区别:

  • 分类树的结果不能进行加减运算,晴天 + 晴天没有实际意义;
  • 回归树的结果是预测一个数值,可以进行加减运算,例如 20 岁 + 3 岁=23 岁。
  • GBDT 中的决策树是回归树,预测结果是一个数值,在点击率预测方面常用 GBDT,例如用户点击某个内容的概率。

2、GBDT 概念

GBDT 的全称是 Gradient Boosting Decision Tree,梯度提升决策树。

要理解 GBDT,首先就要理解这个 B(Boosting)。

Boosting 是一族可将弱学习器提升为强学习器的算法,属于集成学习(ensemble learning)的范畴。Boosting 方法基于这样一种思想:对于一个复杂任务来说,将多个专家的判断进行适当的综合所得出的判断,要比其中任何一个专家单独的判断要好。通俗地说,就是"三个臭皮匠顶个诸葛亮"的道理。

基于梯度提升算法的学习器叫做 GBM(Gradient Boosting Machine)。理论上,GBM 可以选择各种不同的学习算法作为基学习器。GBDT 实际上是 GBM 的一种情况。

为什么梯度提升方法倾向于选择决策树作为基学习器呢?(也就是 GB 为什么要和 DT 结合,形成 GBDT) 决策树可以认为是 if-then 规则的集合,易于理解,可解释性强,预测速度快。同时,决策树算法相比于其他的算法需要更少的特征工程,比如可以不用做特征标准化,可以很好的处理字段缺失的数据,也可以不用关心特征间是否相互依赖等。决策树能够自动组合多个特征。

不过,单独使用决策树算法时,有容易过拟合缺点。所幸的是,通过各种方法,抑制决策树的复杂性,降低单颗决策树的拟合能力,再通过梯度提升的方法集成多个决策树,最终能够很好的解决过拟合的问题。由此可见,梯度提升方法和决策树学习算法可以互相取长补短,是一对完美的搭档。

至于抑制单颗决策树的复杂度的方法有很多,比如限制树的最大深度、限制叶子节点的最少样本数量、限制节点分裂时的最少样本数量、吸收 bagging 的思想对训练样本采样(subsample),在学习单颗决策树时只使用一部分训练样本、借鉴随机森林的思路在学习单颗决策树时只采样一部分特征、在目标函数中添加正则项惩罚复杂的树结构等。

3、原理推导

3.1 目标函数

监督学习的关键概念:模型(model)、参数(parameters)、目标函数(objective function)

模型就是所要学习的条件概率分布或者决策函数,它决定了在给定特征向量时如何预测出目标。

参数就是我们要从数据中学习得到的内容。模型通常是由一个参数向量决定的函数。

目标函数通常定义为如下形式:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值