2.1 Bagging和Boosting区别

Bagging算法和Boosting都属于集成算法,最重要的假设是:当弱模型被正确组合时,我们可以得到更精确和/或更鲁棒的模型。

  • bagging算法通常考虑的是同质弱学习器,相互独立地并行学习这些弱学习器,并按照某种确定性的平均过程将它们组合起来。
  • boosting算法通常考虑的也是同质弱学习器。它以一种高度自适应的方法顺序地学习这些弱学习器(每个基础模型都依赖于前面的模型),并按照某种确定性的策略将它们组合起来。

bagging 的重点在于获得一个方差比其组成部分更小的集成模型,而 boosting 和 stacking 则将主要生成偏差比其组成部分更低的强模型(即使方差也可以被减小)

机器学习之Bagging算法和Boosting算法

Bagging和Boosting 的主要区别

  • Bagging采取Bootstraping的是随机有放回的取样,Boosting的每一轮训练的样本是固定的,改变的是每个样本的权重。
  • Bagging采取的是均匀取样,每个样本的权重相同,Boosting根据错误率调整样本权重,错误率越大的样本权重越大
  • Bagging所有预测函数权值相同,Boosting中误差越小的预测函数权值越大。
  • Bagging 的各个预测函数可以并行生成;Boosting的各个预测函数必须按照顺序迭代生成

将Bagging和Boosting分别和树模型结合分别生成:

  • Bagging+决策树=随机森林
  • Boosting+决策树=GBDT

相关文章: