news 2026/6/18 22:55:00

Bagging vs Boosting:谁才是最强“抱团”算法?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Bagging vs Boosting:谁才是最强“抱团”算法?

本文将带你深入了解机器学习中两个最著名的“抱团”流派:BaggingBoosting

1. 为什么要“抱团”?(集成学习)

在机器学习里,我们经常发现:单个模型(比如一棵决策树)往往不够聪明,要么容易钻牛角尖(过拟合),要么太粗心(欠拟合)。

为了解决这个问题,聪明的科学家们想到了一个办法:“三个臭皮匠,顶个诸葛亮”

既然一个模型不行,那我就搞一堆模型,让它们一起投票做决定!这种方法就叫集成学习 (Ensemble Learning)

BaggingBoosting,就是组织这帮“臭皮匠”的两种不同管理模式。

2. Bagging:民主投票的“议会模式”

全称:Bootstrap Aggregating(自助聚合)

(1) 核心思想:并行 + 投票

Bagging 就像是一个民主议会

  1. 招募议员:它找来很多个模型(通常是决策树)。
  2. 分发资料:它从总题库里,随机抽样出一堆题目给第一个议员看;再随机抽一堆给第二个议员看……(注意:是有放回抽样,大家看到的题目可能部分重叠)。
  3. 独立学习:每个议员关起门来,互不干扰,自己学自己的。
  4. 最终表决:遇到新问题时,所有议员一起投票。
    • 如果是分类问题(是猫还是狗?):少数服从多数
    • 如果是回归问题(房价多少?):大家取平均值

(2) 生动例子:随机森林 (Random Forest)

随机森林就是 Bagging 的典型代表。
想象你要判断一个水果是不是苹果。

  • 议员 A 看了看颜色,说是苹果。
  • 议员 B 闻了闻味道,说是梨。
  • 议员 C 摸了摸形状,说是苹果。

  • 最后 100 个议员里,80 个说是苹果,20 个说是梨。
    结论:这是苹果。

(3) 它的强项

  • 稳定:因为它把大家的意见平均了,所以不容易受个别极端数据的影响。
  • 防过拟合:主要作用是降低方差 (Variance)

3. Boosting:知错能改的“接力模式”

含义:提升(Boost)

(1) 核心思想:串行 + 纠错

Boosting 就像是一个闯关接力游戏,或者是一个补习班

  1. 第一个人先上:用所有题目训练第一个模型。它肯定会有做错的题。
  2. 划重点:把第一个人做错的那些题,加粗、标红(增加权重)。
  3. 第二个人接着上:第二个模型主要盯着这些“错题”学。它可能把旧错题做对了,但又犯了新错误。
  4. 继续接力:第三个模型再盯着前两个人做错的题学……
  5. 最终决策:把所有人的意见加起来。但是!成绩好的模型说话分量重,成绩差的说话分量轻(加权投票)。

(2) 生动例子:AdaBoost, XGBoost

想象你在背单词。

  • 第一轮:你把整本书背了一遍,考试得了 60 分。错了 40 个词。
  • 第二轮:你不再从头背了,专门死磕那 40 个错词。考试得了 70 分,但还有几个顽固的词记不住。
  • 第三轮:你专门针对那几个顽固的词进行特训……

最后,把这几轮的“你”组合起来,就是一个超级学霸。

(3) 它的强项

  • 精准:它专门死磕难题,所以准确率通常非常高。
  • 提能力:主要作用是降低偏差 (Bias)

4. 区别与联系:一张表看懂

特性Bagging (议会模式)Boosting (接力模式)
代表算法随机森林 (Random Forest)AdaBoost, GBDT, XGBoost, LightGBM
模型关系独立并行(大家各干各的)依赖串行(后人踩着前人肩膀)
训练数据随机采样(大家看的题不一样)调整权重(后者专攻前者做错的题)
最终决策平权投票(一人一票)加权投票(谁厉害谁说了算)
主要作用减少方差(更稳,防过拟合)减少偏差(更准,攻克难题)
对异常值不敏感(抗噪能力强)敏感(容易被异常值带偏,因为会死磕它)

5. 总结

  • 如果你觉得模型太复杂、容易过拟合,或者数据比较少,用Bagging(如随机森林)来维稳
  • 如果你觉得模型太简单、准确率不够高,想追求极致的精度,用Boosting(如 XGBoost)来提分

现在的算法比赛(如 Kaggle)中,Boosting系列(尤其是 XGBoost, LightGBM, Catboost)往往是拿冠军的神器,而Bagging则是工业界稳定可靠的老黄牛。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/18 21:36:13

轻松搞定CUDA与cuDNN配置:Miniconda-Python3.9自动依赖解析

轻松搞定CUDA与cuDNN配置:Miniconda-Python3.9自动依赖解析 在深度学习项目开发中,最让人头疼的往往不是模型设计或调参,而是环境配置——尤其是当你要在多台机器上复现某个PyTorch实验时,却发现因为CUDA版本不匹配导致torch.cuda…

作者头像 李华
网站建设 2026/6/15 16:00:43

设计缺乏视觉亮点?这些免费插画库堪称灵感充电站

当设计陷入套路,一个独特的视觉符号、一抹意想不到的色彩,往往就是打破僵局、点亮灵感的那颗火星。 你的设计稿是否总在熟悉的风格里打转,缺少让人眼前一亮的惊艳感?面对空白画布,是不是经常感到灵感枯竭,…

作者头像 李华
网站建设 2026/6/17 15:53:40

担心免费插画的商用风险?这些平台的授权协议清晰又靠谱

商业设计领域,信任源于透明。一张授权清晰的插画,其价值远不止于视觉,更是为你和你的客户规避未知风险的定心丸。 你是否曾在下载一张免费插画时心生犹豫:“这么好看,真的能放心用在我的商业项目里吗?”这…

作者头像 李华
网站建设 2026/6/15 20:19:48

通过剖析了谷歌的AI排名信号:发现关于搜索的5个惊人真相

通过阅读Dan Petrovic关于Google AI 系列文章,谷歌的排名系统已经从一个简单的、基于关键词的机制,演变为一个复杂的、由人工智能驱动的生态系统。在这个新系统中,语义理解和用户互动被置于前所未有的重要位置。 目录 1. 关键词匹配已过时&a…

作者头像 李华
网站建设 2026/6/15 15:46:29

为什么Spring不建议使用@Autowired?@Resource才是王道

为什么Spring不建议使用Autowired?Resource才是王道 前几天在做代码Review的时候,同事指出了一个让我震惊的问题:我们项目中满天飞的Autowired注解,居然不是Spring官方推荐的最佳实践!更让人意外的是,Spri…

作者头像 李华
网站建设 2026/6/15 8:24:52

Spring Boot进行单元测试,一个思路解决重启低效难题

所谓单元测试就是对功能最小粒度的测试,落实到JAVA中就是对单个方法的测试。 junit可以完成单个方法的测试,但是对于Spring体系下的web应用的单元测试是无能为力的。因为spring体系下的web应用都采用了MVC三层架构,依托于IOC,层级…

作者头像 李华