1204.机器学习-集成学习-2.Boosting-0.概述

同一张业务表,六种名字都叫「提升 / Boosting」的模型都能交卷,但它们不是同一代产品换皮:有的在改样本权重,有的在拟合残差,有的在打工程与正则,有的在管类别泄漏,有的在抠训练速度,有的在输出整段分布

本文横向对比本系列六种方法,只抓三件事:差在哪、按什么顺序长出来、每一代主要在补什么短板。细节推导见各专篇。

配图目录:./1204.机器学习-集成学习-2.Boosting-0.概述/


1. 一句话定位:Boosting 共同底座

维度 一句话
学习范式 监督学习;同质弱学习器串行组合
输入 → 输出 特征 → 加权/累加后的强预测(点估计、类别或分布参数)
在优化什么 让后续基学习器专攻当前模型仍差的部分,从而降低偏置(亦可顺带稳方差)

出现背景:「提升」思想可追溯至 1990 年代;Freund & Schapire 的 AdaBoost(约 1995–1997)把「弱可学习 → 强可学习」做成可跑算法。之后 Friedman(2001)把路径推广到一般损失上的梯度提升;2014 年起 XGBoost / CatBoost / LightGBM 把 GBDT 工程化;2019 年 NGBoost 把目标从点预测扩到概率预测

与 Bagging(如随机森林)对照:Bagging 多并行、偏降方差;Boosting 多串行、偏降偏置。


2. 发展脉络:六步在补什么

图 1 六种 Boosting:时间线与各自补上的短板

顺序 算法 约年 关键文献(短引) 出现时主要要解决的问题
1 AdaBoost 1995–1997 Freund & Schapire, JCSS 1997 弱分类器只略好于乱猜,如何合成强分类器
2 GBDT 2001 Friedman, Ann. Statist. 2001 不限于「改权重」;一般损失下如何做函数梯度提升
3 XGBoost 2014/2016 Chen & Guestrin, KDD 2016 GBDT 精度可以,规模、正则进目标、缺失/稀疏的工程化不足
4 CatBoost 2017 arXiv:1706.09516;NeurIPS 2018 高基数类别目标编码易泄漏;类别如何更稳地进提升树
5 LightGBM 2017 Ke et al., NeurIPS 2017 预排序式分裂在海量行上内存与扫描过贵
6 NGBoost 2019/2020 Duan et al., arXiv 2019;ICML 2020 主流实现擅长点预测,条件分布与不确定性不统一

读表时抓住一条链:

1
2
3
4
5
6
弱→强(AdaBoost)
→ 一般损失/残差(GBDT)
→ 可扩展+正则(XGBoost)
→ 类别与有序防泄漏(CatBoost)
→ 直方图把大数据训得起(LightGBM)
→ 输出分布而不只是一个数(NGBoost)

CatBoost 与 LightGBM 同年、短板不同:前者偏统计/类别偏差,后者偏算力/数据规模;不是互相替代的「第 5 代唯一答案」。


3. 机制横向对比

维度 AdaBoost GBDT XGBoost CatBoost LightGBM NGBoost
每轮主要改什么 样本权重 拟合负梯度/残差 同 GBDT + 正则目标 同 GBDT + 有序估计 同 GBDT + 近似分裂 分布参数(自然梯度)
典型基学习器 浅树桩 回归树 回归树 对称(oblivious)树 直方图树 / Leaf-wise 回归树等(可配置)
默认输出形态 加权投票类别 点预测 / 分数 点预测 / 概率 点预测 / 概率 点预测 / 概率 条件分布
相对前代的关键增量 弱可学习可提升 损失一般化 系统+二阶+正则 类别与有序 速度与内存 不确定性

一句话记差:

  • AdaBoost:谁错了谁变重。
  • GBDT:差多少就拟合多少。
  • XGBoost:拟合时还要交「复杂度税」,并且要能在大表上跑。
  • CatBoost:类别统计尽量「只看过去」。
  • LightGBM:分裂候选先装进直方图,叶子挑增益大的再长。
  • NGBoost:提升的是分布参数,不是单个 $\hat y$。

4. 特征 / 目标 / 数据:适用气味对照

下表是气味级对照,细例见各专篇三维表。

维度 更吃香的组合(示意) 更别扭的组合(示意)
特征 表格数值;CatBoost 尤适高基数类别;LightGBM/XGB 适中高维数值与稀疏 原始图像/长文本未表征;NGBoost 分布族与 $y$ 形状严重不符
训练目标 点分类/回归:前五者;要区间/分布:NGBoost 只要三层 if-then 审计规则;只要极致可解释单棵浅树
训练数据 中等以上有标签表;海量行偏 LightGBM;类别脏、易泄漏偏 CatBoost 错标很多还猛加轮数(AdaBoost/深 Leaf-wise 更痛);样本极少却深度与轮数拉满

5. 选型速查(按问题挑,不按名字新旧)

你更卡的问题 优先试
搞懂「提升」在干什么;教学演示 AdaBoost
理解残差/梯度提升框架;sklearn 内置先跑通 GBDT(GradientBoosting*
通用表格强基线;缺失、正则、生态 XGBoost
类别列多、担心目标编码泄漏 CatBoost
行数极大、训练时间与内存 LightGBM
要 $P(y\mid x)$、分位数、预测区间 NGBoost

实务上常见组合:点预测先在 XGBoost / LightGBM / CatBoost 三者按数据气味选型;需要不确定性再上 NGBoost 或分位数/共形预测等方案。AdaBoost、sklearn-GBDT 仍适合教学与小基线。


6. 专篇索引(本系列成文顺序 = 发展顺序)

# 专篇文件
1 1204.机器学习-集成学习-2.Boosting-1.AdaBoost.md
2 1204.机器学习-集成学习-2.Boosting-2.GBDT.md
3 1204.机器学习-集成学习-2.Boosting-3.XGBoost.md
4 1204.机器学习-集成学习-2.Boosting-4.CatBoost.md
5 1204.机器学习-集成学习-2.Boosting-5.LightGBM.md
6 1204.机器学习-集成学习-2.Boosting-6.NGBoost.md

7. 小结

  • 六种方法共享 串行提升 骨架,差在「每轮改权重还是改残差 / 参数、如何工程化、输出点还是分布」。
  • 脉络是 弱→强 → 一般损失 → 可扩展正则 → 类别有序 → 海量加速 → 概率预测,每一环对准当时的一块短板。
  • 选型看短板,不看「更新 = 更强」:同年的 CatBoost 与 LightGBM 解决的是不同问题。

参考文献

  1. Freund Y., Schapire R.E. A Decision-Theoretic Generalization of On-Line Learning and an Application to Boosting. JCSS 1997.
  2. Friedman J.H. Greedy Function Approximation: A Gradient Boosting Machine. Ann. Statist. 2001.
  3. Chen T., Guestrin C. XGBoost: A Scalable Tree Boosting System. KDD 2016.
  4. Prokhorenkova L. et al. CatBoost: unbiased boosting with categorical features. NeurIPS 2018.
  5. Ke G. et al. LightGBM: A Highly Efficient Gradient Boosting Decision Tree. NeurIPS 2017.
  6. Duan T. et al. NGBoost: Natural Gradient Boosting for Probabilistic Prediction. ICML 2020.
-------------本文结束感谢您的阅读-------------