Bootstrap

集成学习——Boosting算法:Adaboost、GBDT、XGBOOST和lightGBM的简要原理和区别

1、Boosting算法

在这里插入图片描述

Boosting算法是通过串联的方式,将一组弱学习器提升为强学习器算法。它的工作机制如下:
(1)用初始训练集训练出一个基学习器;
(2)依据基学习器的表现对训练样本分布进行调整,使得之前做错的训练样本在之后中得到最大的关注;
(3)用调整后的样本分布进行下一个基学习器;
(4)重复2-3的步骤,直到基学习器的数量达到了指定的T值后
(5)将T个基学习器进行加权组合得到集成的学习器。
而根据策略不同,会有Adaboost和GBDT、XGBoost三种常见的Boosting算法。

2、Adaboost算法

Adaboost强调Adaptive(自适应),通过不断修改样本权重(增大分错样本权重,降低分对样本权重),不断加入弱分类器进行boosting。它的核心步骤为以下两个:
权值调整:提高上一轮错误分类的样本权值,降低正确分类的样本权值,从而使得错误分类的样本在下一轮基分类器中获得更大的关注。
基分类器组合:采用加权多数表决的方法,即加大分类误差小的分类器权值,减少误差大的分类器权值。
Adaboost的步骤和考虑点和Boosting算法一致,步骤也基本一致。
在这里插入图片描述

Adaboost算法特点

  • 可以使用各种方法构建子分类器,本身提供框架
  • 子分类器容易构建
  • 速度快,不怎么调节参数
  • 泛化错误率低

3、GBDT算法

GBDT是旨在不断减少残差(回归)&#

;