李宏毅机器学习2016 第二十三讲 集成方法

视频链接:李宏毅机器学习(2016)_演讲•公开课_科技_bilibili_哔哩哔哩

课程资源:Hung-yi Lee

课程相关PPT已经打包命名好了:链接:pan.baidu.com/s/1c3Jyh6 密码:77u5


我的第二十二讲笔记:李宏毅机器学习2016 第二十二讲 循环神经网络RNN


Ensemble


本章主要讲解了关于集成学习的一些主要方法。


1.Ensemble

集成方法在各种竞赛上应用非常好,能够提高表现性能。其主要思想是“打群架,大家一起上”,组合多个模型,以获得更好的效果,使集成的模型具有更强的泛化能力。其主要有Bagging,Boosting和Stack。


2.Bagging

Bagging的主要思想是让很容易overfitting的模型变得不那么overfitting。当你的模型是复杂的、容易过拟合的,这种方法是非常有效的。


通过有放回的取样的方法将训练样本分为不同的训练集,并训练出不同的模型,通过这所有的模型的输出做投票或者平均来作为最终的输出结果。

随机森林(Random Forest),指的是利用多棵树对样本进行训练并预测的一种分类器,其输出结果是由个别树输出的类别的众数而定。


随机森林不仅对训练数据进行了重采样,并且对于每一颗树,都随机的有限制特征或问题,以次来避免树长得太像。测试时用的数据就可以是训练时没有用到的数据,再将其做OOB误差作为模型最终效能。

根据下列算法而建造每棵树 :

  1. N来表示训练用例(样本)的个数,M表示特征数目。
  2. 输入特征数目m,用于确定决策树上一个节点的决策结果;其中m应远小于M
  3. N个训练用例(样本)中以有放回抽样的方式,取样N次,形成一个训练集(即bootstrap取样),并用未抽到的用例(样本)作预测,评估其误差。
  4. 对于每一个节点,随机选择m个特征,决策树上每个节点的决定都是基于这些特征确定的。根据这m个特征,计算其最佳的分裂方式。
  5. 每棵树都会完整成长而不会剪枝,这有可能在建完一棵正常树状分类器后会被采用。


2.Boosting

Boosting的主要思想是提升那些弱的分类器(分类效果比乱猜好一点就行,准确率高于50%)


期望能够找到能够与之前分类器互补的分类器。怎样获得不同的分类器呢?可以重采样训练数据集来形成一个新的集合,也可以重新分配权重来形成一个新的集合。在实现过程中,只需要改变损失函数就可以实现。

AdaBoost

算法流程。



其思想也和直觉上感觉一致,对于那些错误率低的分类器,就加大其最终投票时的权重。

下面举一个具体的例子。在一个限定生成3个分类器,每个分类器都是只有一个分支的决策树


在t=1时,有三个样本分类错误,就对样本重新分配权重,希望是分类错误的能够受到更多的关注,根据算法流程对所有样本的权值进行更新,并且得到第一个分类器在最终投票时的权重值为0.42。


t=2时同样有三个样本分类错误,按照算法流程继续对样本权值进行更新,并且得到第二个分类器在最终投票时的权重值为0.66。


t=3时继续更新,得到第三个分类器在最终投票时的权重值为0.95。

这三个分类器可以将样本根据其分类权值进行比较大小,结果都可正确分类。


对于Boosting来说,其通用公式可用下图来表示。


Gradient Boosting和Adaboost不同,Gradient Boosting 在迭代的时候选择梯度下降的方向来保证最后的结果最好。损失函数用来描述模型的“靠谱”程度,假设模型没有过拟合,损失函数越大,模型的错误率越高。如果我们的模型能够让损失函数持续的下降,则说明我们的模型在不停的改进,而最好的方式就是让损失函数在其梯度方向上下降。


这里是直接对模型的函数进行更新,利用了参数可加性推广到函数空间。

训练F0-Fm一共m个基学习器,沿着梯度下降的方向不断更新ρm和am。


4.Stacking

Stacking思想是用每个模型的输出生成一个新的特征,接着在一个最终分类器上做分类得最终结果。值得注意的是训练数据要分成两份,一份来训练出多个模型,另一份用来训练最终的分类器。


5.总结

本章介绍了集成(Ensemble)方法主要是Bagging(Random Forest)、Boosting(AdaBoost&Gradient Boost)Stacking

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值