专题概述

梯度提升(Gradient Boosting)是一种基于加法模型前向分步算法的集成学习方法,通过迭代地训练弱学习器(通常是决策树)来逐步减少残差,从而构建一个强预测模型。

核心思想

梯度提升的核心思想是:将损失函数的负梯度作为残差的近似值,用弱学习器去拟合这个残差,然后将这些弱学习器加法地组合起来。

其中 是第 个弱学习器, 是学习率(收缩因子)。

内容导航

理论基础

算法实现

  • xgboost-algorithm — XGBoost详解:正则化目标函数、近似分裂、缓存感知设计
  • lightgbm-algorithm — LightGBM详解:GOSS采样、EFB特征捆绑、叶子优先生长
  • catboost-algorithm — CatBoost详解:Ordered Target Encoding、对称树、防止目标泄露

学习路径

入门路径

  1. gradient-boosting-fundamentals — 理解梯度提升的基本框架
  2. decision-tree-random-forest — 复习决策树基础
  3. xgboost-algorithm — 学习XGBoost实现细节
  4. lightgbm-algorithm — 对比学习LightGBM

进阶路径

  1. gradient-boosting-theory — 深入理解理论基础
  2. catboost-algorithm — 学习CatBoost的高级特性
  3. adaptive-optimizer-theory — 理解自适应优化器与梯度提升的联系

算法对比

特性XGBoostLightGBMCatBoost
生长策略Level-wiseLeaf-wiseSymmetric Tree
分裂查找精确/近似直方图预测分割
类别特征需要编码原生支持原生支持+Ordered Encoding
缺失值学习默认方向处理处理
正则化L1/L2/列采样L1/L2/列采样对称树+Ordered
速度中等最快中等
内存中等最小中等

应用场景

表格数据建模

梯度提升算法是表格数据建模的最佳选择

  • Kaggle竞赛中的主流算法
  • 金融风控模型
  • 推荐系统排序模型
  • 医疗诊断辅助

与深度学习的对比

场景推荐算法
表格数据梯度提升
图像/语音深度学习
小样本学习梯度提升/元学习
大规模非结构化数据深度学习

扩展阅读

相关主题

参考文献