5.4 Stacking【stanford-cs329p】


Stacking

  • 结合多种基本学习器来减少方差
    • 基本学习器可以是多种不同的模型类别
    • 通过可学习的参数来线性的结合基本学习器的输出
  • 在竞赛中常用的技术
  • 与Bagging比较
    • 使用相同的类型模型
    • 使用bootstrap来获取多样性

Multi-layer Stacking

avatar
  • 多个层次stacking基本学习器来降低偏差

    • 可以在每个层次使用不同的基本学习器集合
  • 但是容易过拟合,因为相当于把一条已经训练过的数据再训练一次

Overfitting in Multi-layer Stacking

  • 训练学习器从不同数据不同层次来减轻过拟合
    • 将数据集分为A和B,训练L1层用A,用B做预测输入L2
    • 但是相对而言还是有点亏,因为等于每一层都只用了一半的数据
  • 重复k折bagging
    • 通过k折交叉验证训练k个模型
    • 将每个模型输出并起来就能得到跟以前数据样本数一样多的,但预测模型都没有参与当前模型训练的结果
    • 重复上面2步n次,把输出平均

Summary

  • Stacking组合多个学习器来降低方差
  • 在不同层次Stacking学习器来减少偏差
    • 重复k折bagging来有效利用数据和减轻过拟合