导航菜单

集成学习

什么是集成学习?

集成学习就像是"三个臭皮匠,顶个诸葛亮"。通过组合多个简单的模型,我们可以得到比单个模型更好的预测结果。

举个生活例子:

想象你在参加一个知识竞赛。如果只有你一个人答题,可能会因为知识盲点而答错。但如果是一个团队一起答题,每个人负责自己擅长的领域,最后综合大家的答案,正确率就会大大提高。集成学习就是这样的原理。

Bagging(装袋)

  • 多个模型并行训练
  • 每个模型使用不同的数据子集
  • 最终投票或平均得到结果

Boosting(提升)

  • 多个模型串行训练
  • 后面的模型关注前面模型的错误
  • 逐步提升整体性能

Stacking(堆叠)

  • 组合不同类型的模型
  • 使用一个模型学习如何组合
  • 发挥各个模型的优势

常见的集成学习方法

1. 随机森林(Random Forest)

实际例子:信用评分

使用多个决策树,每棵树关注不同的特征组合,最终综合所有树的预测结果。

  • 优点:不容易过拟合,可以处理高维数据
  • 缺点:模型可能比较大,训练时间较长
  • 适用场景:分类和回归问题

2. XGBoost

实际例子:房价预测

通过梯度提升的方式,逐步构建决策树,每棵树都试图修正前面树的错误。

  • 优点:预测准确度高,训练速度快
  • 缺点:需要仔细调参,可能过拟合
  • 适用场景:结构化数据,竞赛常用

3. LightGBM

实际例子:用户行为预测

使用基于直方图的算法,更高效地构建决策树,适合大规模数据。

  • 优点:训练速度快,内存占用小
  • 缺点:对参数敏感,需要调优
  • 适用场景:大规模数据集