第1章 残差的起点:从预测误差到Boosting


文档摘要

第1章 残差的起点:从预测误差到Boosting 本章跟着一条线走:一套房子的预测误差,如何一步步演变成一个算法家族的学习目标。 我们从"模型预测错了多少"这个最原始的问题出发,沿着"误差 → 残差 → 集成 → Boosting → XGBoost"的路线,把 XGBoost 出现之前的整条因果链讲清楚。 一条主线 假设你要预测房价。第一版模型用面积估了个数,误差很大;你注意到误差本身有规律——朝南的房子被低估了,顶楼的被高估了。于是你训练第二个模型去专门拟合这些误差,再把两个模型的输出相加。误差变小了,但还没消失,那就再来第三个。这就是梯度提升的全部直觉:上一轮没消除的误差,就是这一轮的学习目标。这条"修正—再修正"的循环,就是贯穿全教程的残差收敛之路。

第1章 残差的起点:从预测误差到Boosting

本章跟着一条线走:一套房子的预测误差,如何一步步演变成一个算法家族的学习目标。 我们从"模型预测错了多少"这个最原始的问题出发,沿着"误差 → 残差 → 集成 → Boosting → XGBoost"的路线,把 XGBoost 出现之前的整条因果链讲清楚。

一条主线

假设你要预测房价。第一版模型用面积估了个数,误差很大;你注意到误差本身有规律——朝南的房子被低估了,顶楼的被高估了。于是你训练第二个模型去专门拟合这些误差,再把两个模型的输出相加。误差变小了,但还没消失,那就再来第三个。这就是梯度提升的全部直觉:上一轮没消除的误差,就是这一轮的学习目标。这条"修正—再修正"的循环,就是贯穿全教程的残差收敛之路。本章三节就是这条主线的三个里程碑:先认识误差与残差(第 1 节),再看把多个模型加起来的两条路线(第 2 节),最后沿 Boosting 家族走到 XGBoost 登场(第 3 节)。

沿途站点

Boosting 家族的学习路线图

第 1 节把"残差"这个概念落到可计算的层面:一个模型有多错、错在哪里、错误的分布本身携带什么信息。第 2 节回答"为什么要把多个模型组织起来":Bagging 用平均换稳定,Boosting 用串行换精度,两者对偏差和方差的作用方向完全不同,这一对比是理解一切提升类算法的地基。第 3 节把时间线拉长:AdaBoost 用样本权重实现"聚焦错例",GBDT 把"拟合什么"推广为负梯度,XGBoost 再补上正则化与二阶信息——每一代都在回答上一代留下的悬而未决的问题。

先决条件

阅读本章不需要任何集成学习基础,但建议先具备两样东西:能用 Python 写一个简单的线性回归(第 1 节的实验就是从这种水平起步的),以及知道"训练集、测试集"这两个词的含义。数学上只用到相关系数和最小二乘,代码里都有现成函数。如果读者已经能独立解释偏差与方差,第 1 节可以快速扫过,直接从第 2 节的对比实验切入。

拐点与结论

本章最重要的认知转折在第 2 节:集成不是"多个模型投票"这么简单,并联与串联、平均与累加,会产生完全不同的偏差—方差结构。很多初学者背了"随机森林好还是 XGBoost 好",却不知道这个问题的答案就藏在两条路线的结构差异里。读完本章你会得到一个清晰的因果链:残差可学习 → 残差可以被树拟合 → 树可以一棵接一棵地补 → 补的过程需要控制复杂度 → 于是需要 XGBoost。

读完你应该

  • 能用代码算出回归任务的残差,并解释残差序列为什么还含有信息
  • 说清偏差与方差的区别,以及 Bagging、Boosting 分别压低哪一个
  • 复述 AdaBoost 与 GBDT 在"拟合目标"上的关键差异
  • 把 XGBoost 定位在 Boosting 谱系中,说出它相对 GBDT 的三个改进方向
  • 理解"残差收敛"这个词在后续章节中反复出现时的含义

下一章的接力

主线推进到 XGBoost 门口:我们知道了一轮轮补残差的框架,但还没回答"每一轮怎么判断该补多少、什么时候停"。这正是第 2 章目标函数要解决的问题——把直觉变成一个可以求导、可以加正则项、可以闭式求解的目标函数。带着"如何量化地控制每一次修正"这个问题进入第 2 章。


作者与出处
原作者: 灏天文库
来源:灏天文库
整理: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U