人工智能 · 从零学起 第 2 / 5 节

第 5 章 · 机器学习基础:全书的枢纽

深度学习只是机器学习的一个分支,而机器学习的骨架在这一章:泛化——在没见过的数据上表现好。过拟合、正则化、超参数、估计量理论:这一章的概念清单会在后面每一章反复出现。

容量、过拟合与泛化鸿沟

训练误差 vs 泛化误差的差距由容量决定:模型族越灵活越能记住训练集(过拟合),越死板越欠拟合。奥卡姆剃刀的量化:统计学习理论用 VC 维度量容量,深度学习实践中用验证集曲线直接读:训练误差持续降、验证误差回升 = 过拟合现场。数据集划分(训练/验证/测试)与交叉验证是纪律而非技巧。

正则化的概念定位

$$\hat\theta = \arg\min_\theta L(\theta) + \lambda\Omega(\theta)$$

正则化 = 一切为降低泛化误差而对学习问题做的修改(书中明确"权重衰减只是其中一种")。贝叶斯解释:$\Omega$ = 负对数先验(L2 ↔ 高斯先验、L1 ↔ Laplace 先验);$\lambda$ 与学习率的耦合是调参的隐坑。

估计量的偏差、方差与最大似然

  • 点估计的评价:偏差(期望对不对)、方差(抖不抖)、一致性;偏差-方差权衡与欠/过拟合同构;
  • 最大似然估计(MLE):$\hat\theta = \arg\max\sum\log p_\theta(x^{(i)})$——负对数似然 = 损失函数的统一来源(高斯→均方、伯努利→交叉熵、拉普拉斯→L1);
  • 贝叶斯估计(后验最大化/后验均值)与 MAP:先验 = 正则化的理论身份证。

随机梯度与挑战集

随机梯度下降(SGD)作为基础优化器登场;挑战集的六类难例(类不平衡、类间细粒度、训练/测试分布漂移、半监督、多任务、迁移)在章末框出——它们就是后面各章架构创新的靶子。

原文要点:第 5 章把"决定算法成功与否的四个因素"列为:数据量、任务难度(容量需求)、模型族的恰当先验、优化器质量——全书架构设计都可归因到这四轴;书中强调交叉熵-最大似然的等价是"设计损失"的通用方法:为输出选一个分布族,损失自动确定。

老师的提醒

  • "过拟合"的第一响应永远是拿更多数据或增正则,而不是加层——方向错了越调越糟。
  • 读曲线的技能比背定义重要:训练/验证双曲线的形状能直接诊断欠拟合(双高)、过拟合(剪刀差)、lr 问题(震荡)。

自检

  • 泛化误差与训练误差的关系?过拟合的诊断?
  • 最大似然如何统一均方与交叉熵损失?
  • L2 正则与高斯先验的对应推导。

更深一层:泛化是机器学习的全部——第 5 章的四个视角

第 5 章的四个视角需要分层吸收。容量(模型族的灵活度——VC 维度量、验证集曲线直接读)与过拟合(训练误差持续降、验证误差回升的"剪刀差"诊断)是诊断维度;正则化(一切为降低泛化误差的修改——权重衰减只是其中一种,数据增强/Dropout/早停都是)是干预维度;估计量理论(偏差-方差分解、最大似然、贝叶斯估计)是理论维度;挑战集(类不平衡、分布漂移、半监督)是实践维度。四层合起来回答一个问题:在没见过的数据上表现好,需要什么?——答:合适的容量(先验)、足够的数据、正确的优化、诚实的外推边界。

最大似然估计作为损失函数的统一来源值得再强调:高斯噪声 → 均方误差、伯努利 → 交叉熵、拉普拉斯 → 绝对值误差、softmax → 交叉熵。"为输出选一个分布族,损失自动确定"——这是设计任何自定义损失函数的方法论。

推导细读:偏差-方差分解的推导与含义

平方误差的偏差-方差分解($E[(y - \hat f)^2] = \text{Bias}^2 + \text{Var} + \sigma^2$)值得亲手推一遍(取数据集期望、加减两个项的技巧)。三个项的解读:偏差(模型族的系统性错误——欠拟合的来源)、方差(对数据扰动的敏感——过拟合的来源)、不可约噪声(问题的固有随机性)。正则化参数 $\lambda$ 的天平:小 $\lambda$ 低偏差高方差(震荡)、大 $\lambda$ 高偏差低方差(平坦)——交叉验证选 $\lambda$ 就是在这根天平上找平衡。这个分解的深层含义:泛化误差的最小化不是"拟合得更好",是"在偏差与方差之间找到最优折中"。

在真实世界里:交叉验证的"工业纪律"

第 5 章的"数据集划分"在工业里是纪律而非技巧:训练/验证/测试三分 + 交叉验证(K 折)+ 时间序列的前向验证(不能用未来数据——金融与时序场景的陷阱)。数据泄漏是工业事故的高发区:预处理在全数据集上做(标准化参数泄漏)、特征工程用到目标信息、测试集被反复"调参"污染(多次看测试集等于过拟合测试集)。"测试集只能看一次"的纪律比任何模型技巧都重要。

专题深入:机器学习基础的三根支柱完整版

花书第五章的三根支柱值得再拧紧一遍:容量的定量语言(训练误差 vs 泛化误差的间隙 = 过拟合;奥卡姆剃口的正式版是 VC 维与表示复杂度——但深度网络的"过度参数化悖论"(参数远超样本却泛化好)说明经典容量理论在深度学习中不完备,现代解释转向隐式正则化与平坦极小值);点估计的三视角(函数逼近:找映射;频率派:估计真参数;贝叶斯:维护参数分布)——三视角不是哲学空谈,它们给出三种工程行为:频率派给点预测 + 置信区间、贝叶斯给后验预测分布(不确定性可分解为偶然/认知两部分——安全关键系统的需求);最大似然的渐近性质(一致性 + 有效性:样本够多时 MLE 是方差最小的估计——它为何是默认损失的数学授权)。

推导细读:正则化视角的贝叶斯翻译完整版

第五章最重要的推导桥:最大后验(MAP)= 最大似然 + 正则项。高斯先验 $p(w) \propto e^{-\frac{\alpha}{2}\|w\|^2}$ 加上高斯似然,MAP 目标就是 $\sum(y - \hat y)^2 + \alpha\|w\|^2$——L2 正则是高斯先验、L1 正则是拉普拉斯先验,正则化的贝叶斯身份让"惩罚项怎么选"变成"我对参数的先验信念是什么"。交叉验证的推导要点:k 折 CV 的期望无偏估计测试误差(但方差大、计算贵;留一法几乎无偏但高方差——模型选择时 CV 误差本身就是随机变量,选最小 CV 也可能选到"运气好"的模型,多次重复 CV 或嵌套 CV 是严肃做法)。超参数与验证集的纪律(测试集只碰一次——"测试集泄漏"是 Kaggle 与论文复现中最大的事故来源)构成第三章下半的方法论骨架。

工程案例细节:估计、偏差-方差与实际项目的对照工程版

第五章的工程出口:偏差-方差分解的诊断价值($E[(y - \hat y)^2] = \mathrm{Bias}^2 + \mathrm{Var} + \sigma^2$——学习曲线训练/验证误差的形状组合给出处方:高偏差 → 更大模型/更多特征;高方差 → 更多数据/更强正则——这个诊断流程至今是调参的第一性方法);随机梯度下降的泛化红利(小 batch 的梯度噪声隐式正则化——大 batch 训练泛化差的经典现象的一种解释);数据划分的工业规范(时间序列必须按时间切分防泄漏、分布漂移监测用验证集持续跟踪——推荐系统线上 A/B 才是最终裁判);贝叶斯深度学习的工业场景(医疗影像的不确定度输出、自动驾驶的 OOD 检测——认知不确定度高的样本转人工)。第五章是"机器学习方法论"而非"模型论"——它是防止项目翻车的保险条款。

例题

某模型训练误差持续下降(0.30 → 0.05),验证误差先降后升(0.32 → 0.28 → 0.35)。诊断问题并给出三个候选动作。

解答

诊断:训练/验证误差"剪刀差"张开——经典过拟合(容量相对数据过剩,模型开始记忆训练集噪声)。

候选动作(按性价比排序):

  • 加数据或数据增强(翻转/裁剪/噪声)——最根本;
  • 正则化:权重衰减(L2)、Dropout、早停(验证误差最低点收手);
  • 减容量:减层减宽、降低嵌入维度。

反过来若两条曲线都高且贴近(如 0.4/0.42)则是欠拟合——该加层加宽、训练更久。先看曲线再开药。

本页是《深度学习》第 2 节的学习笔记:为便于初学,讲解、例题与要点概括均为本站原创整理,公式与章节定位供对照原书使用。

📑 本书目录 经典研读