集成学习算法策略 Boosting和Bagging

集成学习是机器学习中的一个重要分支。

它主要包含两种策略:BoostingBagging

Boosting和Bagging都是基于多个弱学习器(弱分类器)(例如:一颗欠拟合的决策树)的基础之上的,且要满足,每一个弱学习器的分类准确性都要强于随机分类(即准确率大于50%)

策略 Boosting方法 Bagging方法
训练方式 主要通过改变训练样本的权重(初始化时给所有训练样本相同的权重),学习多个弱学习器,并将这些弱学习器进行线性组合,提高分类性能。 主要通过从原始训练集中抽取n个样本的训练集,共进行k次,得到K个样本集,每个样本集单独训练,最后如果是分类方法则通过投票的方式得到分类结果;如果是回归方法则采用平均值的作为预测结果。
样本选择 每一轮的训练集不变,只是训练集中每个样例在弱学习器中的权重发生变化。而权值是根据上一轮的分类结果进行调整。 训练集是在原始训练数据集中有放回选取的,从原始训练数据集中选出的各轮训练集之间是独立的。
样例权重 根据错误率不断调整样例的权值,样例被错误分类的概率越大则样例权重越大。 使用均匀取样,每个样例的权重相等。
预测函数 每个弱学习器都有相应的权重,对于分类误差小的弱学习器会有更大的权重。 所有预测函数的权重相等。
并行计算 各个预测函数只能顺序生成,因为后一个模型参数需要前一轮模型的结果。 各个预测函数可以并行生成。

这两种方法都是把若干个弱学习器整合为一个综合学习器的方法,只是整合的方式不一样,最终得到不一样的效果,将不同的分类算法套入到此类算法框架中一定程度上会提高了原单一弱学习器的分类效果,但是也增大了计算量。

集成学习算法的常见应用:

  • Bagging + 决策树 = 随机森林(Random Forest)
  • AdaBoost + 决策树 = 提升树
  • Gradient Boosting + 决策树 = GBDT

猜你喜欢

转载自blog.csdn.net/baishuiniyaonulia/article/details/81020554