机器学习--集成学习模型
Ensemble learning
-
【机器学习--集成学习模型】
Bagging : 训练多个分类器取平均
文章图片
-
Boosting : 从弱学习器开始加强,通过加权来进行训练
文章图片
- Stacking : 聚合多个分类或回归模型(可以分阶段来做)
- 全称:bootstrap aggregation(说白了就是并行训练一堆分类器)
- 最典型的代表就是随机森林
- 随机:数据采样随机,特征选择随机
- 森林:很多个决策树并行放在一起
文章图片
文章图片
文章图片
文章图片
文章图片
文章图片
文章图片
bagging
- 典型代表:AdaBoost,Xgboost
- Adaboost会根据前一次的分类效果调整数据权重
- 解释:如果某一个数据在这次分错了,那么在下一次我就会给它更大的权重
- 最终的结果:每个分类器根据自身的准确性来确定各自的权重,再合体
文章图片
文章图片
boosting
- 堆叠:很暴力,拿来一堆直接上(各种分类器都来了)
- 可以堆叠各种各样的分类器(KNN,SVM,RF等等)
- 分阶段:第一阶段得出各自结果,第二阶段再用前一阶段结果训练
文章图片
我们假定我得到的T个弱学习器是{h1,h2,...hT}
- 平均法
对于数值类的回归预测问题,通常使用的结合策略是平均法,也就是说,对于若干个弱学习器的输出进行平均得到最终的预测输出。
最简单的平均是算术平均,也就是说最终预测是
文章图片
如果每个个体学习器有一个权重w,则最终预测是
文章图片
其中wi是个体学习器hi的权重,通常有
文章图片
- 投票法
对于分类问题的预测,我们通常使用的是投票法。假设我们的预测类别是{c1,c2,...cK},对于任意一个预测样本x,我们的T个弱学习器的预测结果分别是(h1(x),h2(x)...hT(x))。
稍微复杂的投票法是绝对多数投票法,也就是我们常说的要票过半数。在相对多数投票法的基础上,不光要求获得最高票,还要求票过半数。否则会拒绝预测。
更加复杂的是加权投票法,和加权平均法一样,每个弱学习器的分类票数要乘以一个权重,最终将各个类别的加权票数求和,最大的值对应的类别为最终类别。
- 学习法
上两节的方法都是对弱学习器的结果做平均或者投票,相对比较简单,但是可能学习误差较大,于是就有了学习法这种方法,对于学习法,代表方法是stacking,当使用stacking的结合策略时, 我们不是对弱学习器的结果做简单的逻辑处理,而是再加上一层学习器,也就是说,我们将训练集弱学习器的学习结果作为输入,将训练集的输出作为输出,重新训练一个学习器来得到最终结果。
推荐阅读
- 由浅入深理解AOP
- Activiti(一)SpringBoot2集成Activiti6
- 继续努力,自主学习家庭Day135(20181015)
- python学习之|python学习之 实现QQ自动发送消息
- 一起来学习C语言的字符串转换函数
- 定制一套英文学习方案
- 漫画初学者如何学习漫画背景的透视画法(这篇教程请收藏好了!)
- 《深度倾听》第5天──「RIA学习力」便签输出第16期
- 如何更好的去学习
- 【韩语学习】(韩语随堂笔记整理)