大家好,这里是好评笔记,本文为试读,查看全文请移步公主号:Goodnote。本笔记介绍机器学习中常见的集成学习:Bagging和Boosting。
@[toc]
集成学习(Ensemble Learning)概述
集成学习是一种通过组合多个模型(通常是弱模型)来提升整体预测性能的技术,主要分为 Bagging 和 Boosting 两类方法。Bagging 和 Boosting 是构建强大的集成模型的基础,并衍生出了多种经典的算法,如随机森林、AdaBoost、Gradient Boosting、XGBoost 和 GBDT。
Bagging 和 Boosting 的对比
属性 | Bagging | Boosting |
---|---|---|
模型训练方式 | 并行训练多个模型 | 串行训练多个模型 |
每次训练的数据集 | 每次从原始数据集进行有放回随机采样生成不同的子集 | 每次使用相同的数据集,但样本的权重会随错误分类情况调整 |
关注样本方式 | 每个模型使用相同的样本权重 | 不同的权重,后续模型重点关注前一模型的错误 |
结果集成方式 | 平均(回归)或投票(分类) | 加权组合模型 |
主要优点 | 降低方差,减少过拟合 | 降低偏差,提高模型精度,减少欠拟合 |
主要缺点 | 对偏差问题无明显改善 | 对噪声敏感,训练时间长 |
代表算法 | 随机森林 | AdaBoost、Gradient Boosting |
- Bagging:通过并行训练多个模型,降低模型的方差,更适合高方差模型(减轻过拟合),如随机森林是其经典应用。
- Boosting:通过串行训练多个模型,逐步提升模型性能,更适合提升高偏差模型(减轻欠拟合),经典算法包括 AdaBoost 和 Gradient Boosting。
高方差是过拟合,高偏差是欠拟合
Bagging 算法
什么是 Bagging?
Bagging(Bootstrap Aggregating)是一种并行集成学习方法,它通过在训练集中多次随机采样(有放回的抽样)生成多个不同的子集,并在每个子集上训练模型,最终通过平均(回归)或投票(分类)得到集成模型的预测结果。
Bagging 的主要特点
- 并行训练:每个模型是独立训练的,因此可以并行计算。
- 有放回的随机采样。
- 减小方差,降低过拟合:通过组合多个模型,可以有效降低模型的方差,提高稳定性。
- 不易过拟合,容易欠拟合:对于不稳定的模型(如决策树),Bagging 能有效减少过拟合的风险。
常用的 Bagging 算法
随机森林(Random Forest)
详细全文请移步公主号:Goodnote。