机器学习40讲
王天一
工学博士,副教授
立即订阅
8040 人已学习
课程目录
已完结 44 讲
0/4登录后,你可以任选4讲全文学习。
开篇词 (1讲)
开篇词 | 打通修炼机器学习的任督二脉
免费
机器学习概观 (10讲)
01 | 频率视角下的机器学习
02 | 贝叶斯视角下的机器学习
03 | 学什么与怎么学
04 | 计算学习理论
05 | 模型的分类方式
06 | 模型的设计准则
07 | 模型的验证方法
08 | 模型的评估指标
09 | 实验设计
10 | 特征预处理
统计机器学习模型 (18讲)
11 | 基础线性回归:一元与多元
12 | 正则化处理:收缩方法与边际化
13 | 线性降维:主成分的使用
14 | 非线性降维:流形学习
15 | 从回归到分类:联系函数与降维
16 | 建模非正态分布:广义线性模型
17 | 几何角度看分类:支持向量机
18 | 从全局到局部:核技巧
19 | 非参数化的局部模型:K近邻
20 | 基于距离的学习:聚类与度量学习
21 | 基函数扩展:属性的非线性化
22 | 自适应的基函数:神经网络
23 | 层次化的神经网络:深度学习
24 | 深度编解码:表示学习
25 | 基于特征的区域划分:树模型
26 | 集成化处理:Boosting与Bagging
27 | 万能模型:梯度提升与随机森林
总结课 | 机器学习的模型体系
概率图模型 (14讲)
28 | 最简单的概率图:朴素贝叶斯
29 | 有向图模型:贝叶斯网络
30 | 无向图模型:马尔可夫随机场
31 | 建模连续分布:高斯网络
32 | 从有限到无限:高斯过程
33 | 序列化建模:隐马尔可夫模型
34 | 连续序列化模型:线性动态系统
35 | 精确推断:变量消除及其拓展
36 | 确定近似推断:变分贝叶斯
37 | 随机近似推断:MCMC
38 | 完备数据下的参数学习:有向图与无向图
39 | 隐变量下的参数学习:EM方法与混合模型
40 | 结构学习:基于约束与基于评分
总结课 | 贝叶斯学习的模型体系
结束语 (1讲)
结课 | 终有一天,你将为今天的付出骄傲
机器学习40讲
登录|注册

27 | 万能模型:梯度提升与随机森林

王天一 2018-08-04
上一篇文章中我和你分享了提升法和装袋法这两种典型的集成方法,它们都可以用在决策树模型上,对多棵不同的树进行组合。然而直接使用这两种集成方法只是初级的策略,将它们的强化版用在决策树上可以得到更加强大的万能模型,也就是梯度提升决策树和随机森林。
梯度提升(gradient boosting)的思想来源于对提升方法的推广。显式的提升方法本身可以解释为对一个合适的损失函数的优化,如果将损失函数的选择扩展为任意的可微函数,并将提升方法和最优化中的梯度下降(gradient descent)结合起来,得到的就是梯度提升。
梯度提升将提升方法视为函数式的迭代梯度下降算法,通过迭代地选择指向负梯度方向的函数,也就是弱学习器来优化整个函数空间上的代价函数。在 AdaBoost 中,每个弱学习器的短板通过权重的加强得以凸显;而在梯度提升中,凸显的方式被替换成了梯度。
要理解梯度提升方法的妙处,还是要先从回归问题说起。在解决回归问题时,模型的输出 和真实值 之间的差值 被称为残差(residual),它表示了数据中模型所不能刻画的那些部分。
传统的单一模型对残差无能为力,可集成方法的引入给处理残差提供了新的思路,那就是用新的基学习器去拟合残差,作为对上一个模型的修正。将拟合真实值 和拟合残差 的模型集成起来,可以获得更加精确的拟合结果。
取消
完成
0/1000字
划线
笔记
复制
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
该试读文章来自付费专栏《机器学习40讲》,如需阅读全部文章,
请订阅文章所属专栏。
立即订阅
登录 后留言

精选留言(7)

  • 小博
    老师,请问梯度提升这里的提升具体体现在哪里呢?只是残差的拟合吗?还有梯度提升是在函数空间的优化和梯度下降是在参数空间的优化这两个说法怎么理解呢

    作者回复: 体现在通过残差拟合的手段将多个弱学习器组合成强学习器,降低偏差和方差。
    两个的作用域不同。梯度下降是针对单个模型的参数优化,找到最优的一组参数;梯度提升是用多个模型的组合来逼近问题的解,每个模型其实都是一个函数。

    2018-08-28
    2
  • Ophui
    在训练数据中想刻意的增加某些特征的权重,有什么办法么?

    作者回复: 机器学习的目的其实就是确定哪些特征对输出的影响更大,也就是具有更大的权重,这在线性模型里体现的最为直观。增加权重说明你已经认定这些特征更重要,那就不需要再训练了。
    如果非要做的话,在线性模型中可以给属性额外乘以一个放大系数,在决策树里可以放大属性的信息增益,在随机森林里可以给每棵树都选定这个属性。使用的模型不同,方法也不一样。

    2018-08-04
    1
  • 梦帝
    老师,对于分歧分解还有一些疑问,不知道对不对。如果我理解正确的话,和而不同是只每个基分类器需要有不同的结果,但同样也要使得和真实值比较接近。举例来说,假设二分类问题有11个基分类器,如果按照majority voting来得到集成结果的话,在结果为正确的情况下(Y =1),最大化分歧就是11个基分类器最好是有6个是1,或者6个是0;而最小化E(均方误差)也就是11个基分类器都是1;所以这其实也只是bias variance trade off,并不一定是基分类器之间越independent越好对不对?谢谢老师啦
    2018-12-31
  • hayley
    什么情况下选RF,什么情况下选GBDT呢?

    作者回复: 两种都是比较通用的方法,在具体问题上可以择优使用,看看哪个效果好。

    2018-10-08
  • 林彦
    Practical Lessons from Predicting Clicks on Ads at Facebook

    作者回复: 输入LR的特征维度是所有树的叶子节点的组合,也就是14个特征。树的作用是onehot编码,把实值的特征向量变成二值类别向量。文中的解释是这样的转化本质上是定义了一组规则,线性模型是在给每一棵树里的每个叶子节点所表示的规则生成权重。

    2018-08-23
  • 林彦
    王老师,我对于Facebook 在其广告系统中使用的GBDT+LR的融合方法在LR这一步的输入有些困惑。

    传统的LR模型,输入就是权重与特征值相乘求和再放入sigmoid函数中。

    GBDT在Facebook广告系统预测点击的那篇论文中,我的理解是这样的。假设有5棵树,每棵树的节点数可能是不同的(根据文章中的一个简单例子)。假设我们5棵树的叶子节点数分别是2,3,2,4,3,合计有14个叶子节点。其中一个训练样本在5棵树的输出结果是[0, 1],[0, 1, 0],[1, 0],[0, 0, 1, 0],[0, 0, 1]。把树的输出结果作为LR的输入时是相当于每个样本看成有14个特征,每个特征只有0和1两种取值,然后求这14个特征的权重令最后的LR模型的预测输出和训练样本的真实结果值,取值为0,1(代表点击或未点击)的误差最小化吗?或者LR模型的输入特征是5个,对应5棵GBDT树的输出结果,如果这样,5棵树的叶子节点数不同时,权重如果只是一个标量,貌似没法求和得到一个标量值。

    谢谢。

    作者回复: 这篇论文的题目是什么?

    2018-08-22
  • 林彦
    性能的提高可以通过把数据映射到高维,层次化,或者老师讲授的局部化等方法来实现。这些数学变换未必都有直观可解释的属性,属性组合及划分或变换方式对应。

    我们的理解程度和变换对于复杂问题的解决能力在不少场景下就是不易同时满足的,除非我们对一些事物的认知提高到一个更宏观或微观的新层次。
    2018-08-21
收起评论
7
返回
顶部