集成学习总结

定义

通过训练若干个个体学习器,通过一定的结合策略,来完成学习任务,(常常可以获得比单一学习显著优越的学习器)就可以最终形成一个强学习器。

分类

种类 学习器 代表 计算 样本 样本权重&弱分类起权重
bagging 所有的个体学习器都是一个种类的 随机森林 并行,个体学习器之间不存在强依赖关系 训练集是在原始集中有放回选取的,从原始集中选出的各轮训练集之间是独立的。 使用均匀取样,每个样例的权重相等 所有预测函数的权重相等。
boosting 所有的个体学习器都是一个种类的 AdaBoost, Xgboost,GBDT 串行,个体学习器之间存在强依赖关系 每一轮的训练集不变,只是训练集中每个样例在分类器中的权重发生变化。而权值是根据上一轮的分类结果进行调整。 根据错误率不断调整样例的权值,错误率越大则权重越大。 每个弱分类器都有相应的权重,对于分类误差小的分类器会有更大的权重。
Stacking 所有的个体学习器不全是一个种类的

Bagging

代表算法:随机森林(Random Forest)

step

  • 从原始样本集中抽取训练集。每轮从原始样本集中抽取n个训练样本(在训练集中,有些样本可能被多次抽取到,而有些样本可能一次都没有被抽中,每次采样事独立随机的),共进行k轮抽取,得到k个训练集。(k个训练集之间是相互独立的)。

  • 每次使用一个训练集得到一个模型,k个训练集共得到k个模型。

  • 对分类问题:少数服从多数。

  • 对回归问题,计算均值。

随机森林

随机森林在bagging的样本随机采样基础上,又加上了特征的随机选择

Boosting

代表算法:AdaBoost, Xgboost,GBDT

训练过程为阶梯状,基模型按次序一一进行训练(实现上可以做到并行),基模型的训练集按照某种策略每次都进行一定的转化。如果某一个数据在这次分错了,那么在下一次我就会给它更大的权重。对所有基模型预测的结果进行线性综合产生最终的预测结果

step

  • 首先从训练集用初始权重训练出一个弱学习器1;

  • 根据弱学习的学习误差率表现来更新训练样本的权重,错误样本权重变高,让模型更关注错误样本;

  • 然后基于调整权重后的训练集来训练弱学习器2;

  • 如此重复进行,直到弱学习器数达到事先指定的数目T;

  • 最终将这T个弱学习器通过加权求和(加法模型),得到最终的强学习器。

优点 缺点
AdaBoost 利用前一轮弱学习器的误差率来更新训练集的权重 ,这样一轮轮的迭代下去,简单的说是 Boosting框架+任意基学习器算法+指数损失函数 对异常样本敏感,异常样本在迭代中可能会获得较高的权重,影响最终预测准确性
Xgboost CART回归树模型
GBDT 每个分类器在上一轮分类器的残差基础上进行训练。

Stacking

分阶段操作:第一阶段输入数据特征得出各自结果,第二阶段再用前一阶段结果训练得到分类结果。

step

  • 首先先训练多个不同的模型;

  • 然后把之前训练的各个模型的输出为输入来训练一个模型,以得到一个最终的输出。

具体方法是把数据分成两部分,用其中一部分训练几个基模型A1,A2,A3,用另一部分数据测试这几个基模型,把A1,A2,A3的输出作为输入,训练组合模型B。

相关推荐
LCG元19 分钟前
自动驾驶感知模块的多模态数据融合:时序同步与空间对齐的框架解析
人工智能·机器学习·自动驾驶
why技术23 分钟前
Stack Overflow,轰然倒下!
前端·人工智能·后端
超龄超能程序猿1 小时前
(三)PS识别:基于噪声分析PS识别的技术实现
图像处理·人工智能·计算机视觉
要努力啊啊啊1 小时前
YOLOv3-SPP Auto-Anchor 聚类调试指南!
人工智能·深度学习·yolo·目标检测·目标跟踪·数据挖掘
好开心啊没烦恼1 小时前
Python 数据分析:numpy,说人话,说说数组维度。听故事学知识点怎么这么容易?
开发语言·人工智能·python·数据挖掘·数据分析·numpy
生态遥感监测笔记1 小时前
GEE利用已有土地利用数据选取样本点并进行分类
人工智能·算法·机器学习·分类·数据挖掘
天天扭码2 小时前
从图片到语音:我是如何用两大模型API打造沉浸式英语学习工具的
前端·人工智能·github
张彦峰ZYF2 小时前
从检索到生成:RAG 如何重构大模型的知识边界?
人工智能·ai·aigc
刘海东刘海东2 小时前
结构型智能科技的关键可行性——信息型智能向结构型智能的转变(修改提纲)
人工智能·算法·机器学习
**梯度已爆炸**3 小时前
NLP文本预处理
人工智能·深度学习·nlp