
机器学习数学推导(一):绪论与数学基础
机器为什么能从有限的数据中学到普适的规律?本章从第一性原理出发,系统推导学习理论的数学骨架——问题形式化、损失函数、PAC 框架、VC 维、偏差-方差分解与无免费午餐定理。
本章内容#
2005 年,Google Research 在公开评测中证明:仅用原始双语语料训练的统计翻译模型,竟能超越语言学家数十年精心设计的规则系统。这一结论令当时的专家颇感不适,却在数学上令人振奋——一个从未被告知语言规则的系统,只要有足够多的例子,依然能自行还原这些规则。这是为什么?

答案并非工程技巧,而是一个定理。本章将从第一性原理出发,构建一套数学框架,解释何时能从数据中学习、需要多少数据,以及任何算法的根本能力边界究竟在哪里。
读完本章后,你将能够:
- 将学习问题形式化为假设类上的概率优化问题。
- 阐述并推导有限假设类的 PAC 可学习性条件。
- 利用 VC 维将该结论推广至线性分类器、神经网络等无限假设类。
- 将任意预测器的测试误差分解为偏差、方差与不可约噪声。
- 借助“没有免费午餐”(No Free Lunch)定理,阐明为何每个成功的算法都必然携带某种归纳偏置(inductive bias)。
前置知识:微积分(导数、积分、Taylor 展开)、初等概率(期望、方差、贝叶斯公式、独立性),以及熟练阅读数学符号的能力。无需预先了解学习理论。
学习问题的轮廓#
三大类问题#
在接触任何定理之前,先明确整体图景。本系列几乎所有的机器学习问题都可归入以下三类之一:

- 监督学习:给定样本对 $(x, y)$ ,目标是根据 $x$ 预测 $y$ 。其中,分类对应离散的 $y$ ,回归对应连续的 $y$ ,是最经典的两种情形。
- 无监督学习:仅有输入 $x$ ,任务是从中发现内在结构——如聚类、低维流形或密度估计——无需外部标签。
- 强化学习:智能体在环境中选择动作,并接收标量奖励信号。由于数据由智能体自身策略生成,其统计分析比监督学习更为复杂。
本章聚焦于监督学习场景,因为 PAC 学习、VC 维、偏差-方差分解等奠基性结果在此最为清晰。稍加调整后,这套工具也能推广至其他两类问题。
数学形式化#
我们假设存在一个未知的联合分布 $\mathcal{D}$ ,定义在输入空间 $\mathcal{X}$ 和输出空间 $\mathcal{Y}$ 上。一个学习算法是从 $\mathcal{D}$ 中独立同分布(i.i.d.)抽取有限训练样本 $S = \{(x_i, y_i)\}_{i=1}^m$ ,并返回一个假设函数 $h: \mathcal{X} \to \mathcal{Y}$ 的过程。该假设的质量通过损失函数来衡量。
定义 1(损失函数):损失函数是任意可测映射 $\ell: \mathcal{Y} \times \mathcal{Y} \to \mathbb{R}_{\geq 0}$ ,它将预测值 $h(x)$ 与真实值 $y$ 映射为一个非负惩罚 $\ell(h(x), y)$ 。
$$L_{\mathcal{D}}(h) \;=\; \mathbb{E}_{(x,y)\sim \mathcal{D}}\bigl[\ell(h(x), y)\bigr]. \tag{1}$$这是我们真正关心的量:模型在与训练数据同分布的新样本上的平均损失。
$$L_S(h) \;=\; \frac{1}{m}\sum_{i=1}^{m} \ell(h(x_i), y_i). \tag{2}$$这是我们能够直接计算的量。
统计学习的核心悖论:我们优化的是 $L_S$ ,但最终被评判的却是 $L_{\mathcal{D}}$ 。本章几乎所有定理,本质上都在刻画 $L_S(h)$ 与 $L_{\mathcal{D}}(h)$ 在何种条件下、以何种速率趋于一致。
监督学习器的三个组成部分#
任何监督学习算法都由三元组 $(\mathcal{H}, \ell, \mathcal{A})$ 决定:
- 假设类 $\mathcal{H}$ :算法允许输出的函数集合。$\mathcal{H}$ 越大,表达能力越强,但统计控制也越困难。
- 损失函数 $\ell$ :将预测质量转化为可优化的数值。
- 算法 $\mathcal{A}$ :从样本到假设的映射,即 $\mathcal{A}: (\mathcal{X} \times \mathcal{Y})^m \to \mathcal{H}$ 。
贯穿本系列的两类典型算法是:
- 经验风险最小化(ERM):$\;h_{\text{ERM}} = \arg\min_{h\in\mathcal{H}} L_S(h)$ 。
- 结构风险最小化(SRM):$\;h_{\text{SRM}} = \arg\min_{h\in\mathcal{H}} \bigl[L_S(h) + \Omega(h)\bigr]$ ,其中 $\Omega$ 是对模型复杂度的惩罚项。
ERM 是最自然的起点,而 SRM 才是我们实践中真正使用的策略。至于为何需要 $\Omega$ ,等到偏差-方差分解揭示过拟合本质时,答案便水落石出。
损失函数的选择:回归与分类的代理损失#
损失函数的选择绝非表面功夫——它会直接影响优化景观、统计效率,甚至最终的最优解。

对于回归问题,设残差 $r = y - h(x)$ ,常见损失如下:
| 损失名称 | 公式 | 特性 |
|---|---|---|
| 平方损失(MSE) | $r^2$ | 光滑、强凸,但对离群点敏感;贝叶斯最优预测器为 $\mathbb{E}[Y\mid X]$ 。 |
| 绝对损失(MAE) | $\lvert r\rvert$ | 对离群点鲁棒,但在 $r=0$ 处不可导;贝叶斯最优预测器为条件中位数。 |
| Huber 损失 | $\tfrac12 r^2$ 若 $\lvert r\rvert \leq \delta$ ,否则 $\delta(\lvert r\rvert - \tfrac{\delta}{2})$ | 在零点附近呈二次型,尾部呈线性,兼顾 MSE 的光滑性与 MAE 的鲁棒性。 |
对于二分类问题,设标签 $y \in \{-1, +1\}$ ,间隔 $m = y \cdot h(x)$ ,常见损失如下:
| 损失名称 | 公式 | 应用场景 |
|---|---|---|
| 0-1 损失 | $\mathbb{1}[m \leq 0]$ | 我们最终关心的指标,但直接最小化是 NP-hard。 |
| Hinge 损失 | $\max(0,\, 1 - m)$ | 支持向量机(SVM);是 0-1 损失的凸上界,次梯度稀疏。 |
| 对数损失 / 交叉熵 | $\log(1 + e^{-m})$ | 逻辑回归、神经网络分类器;光滑,且输出可校准为概率。 |
| 指数损失 | $e^{-m}$ | AdaBoost;对错分样本惩罚最重,但对标签噪声敏感。 |
表中所有分类代理损失都是 0-1 损失的凸上界,且关于间隔 $m$ 单调不增。Bartlett、Jordan 和 McAuliffe(2006)证明:只要代理损失满足“分类一致性”(classification-calibrated),那么在数据量趋于无穷时,最小化该损失所得的分类器将收敛到贝叶斯最优解。
为何需要理论:泛化间隙#
用一个 100 次多项式去拟合 10 个带噪声的数据点,可以做到 $L_S = 0$ ,但在任何新输入 $x$ 上的预测都会灾难性失败。$L_{\mathcal{D}}(h) - L_S(h)$ 的大小称为泛化间隙,其行为正是接下来两节的核心议题。

左图展示的是健康学习状态:随着训练集增大,泛化间隙逐渐缩小——这正是 PAC 学习理论要量化的现象。右图则展示了过拟合状态:继续优化反而导致测试误差上升——此时正则化、早停机制以及偏差-方差权衡变得至关重要。
学习理论为我们提供了三大工具:
- 预测泛化间隙何时会小;
- 通过复杂度度量(如假设类基数、VC 维、Rademacher 复杂度)量化该间隙;
- 借助模型选择与正则化控制该间隙。
PAC 框架#
“可学习”意味着什么#
当我们说一个问题“可学习”时,实际上做了三项让步:
- 不要求完美预测器,只需其误差在最优解的 $\varepsilon$ 范围内;
- 不要求绝对成功,只需在随机训练样本上以至少 $1 - \delta$ 的概率成功;
- 误差是针对真实分布 $\mathcal{D}$ 衡量的,而非训练数据本身。
这三项弱化条件——“概率近似正确”(Probably Approximately Correct, PAC)——由 Valiant(1984)首次形式化。
$$\Pr_{S \sim \mathcal{D}^m}\!\bigl[\, L_{\mathcal{D}}(h_S) \;\leq\; \min_{h \in \mathcal{H}} L_{\mathcal{D}}(h) + \varepsilon \,\bigr] \;\geq\; 1 - \delta. \tag{3}$$函数 $m_{\mathcal{H}}(\varepsilon, \delta)$ 称为样本复杂度。通俗地说:“只需不超过 $m_{\mathcal{H}}(\varepsilon, \delta)$ 个样本,就能以至少 $1 - \delta$ 的概率,找到一个泛化误差与 $\mathcal{H}$ 中最优假设相差不超过 $\varepsilon$ 的模型。”
有限假设类的可实现情形#
我们从最简单的非平凡情形入手:$\mathcal{H}$ 有限,且存在 $h^\star \in \mathcal{H}$ 使得 $L_{\mathcal{D}}(h^\star) = 0$ (即可实现假设成立)。此处使用 0-1 损失。
$$m \;\geq\; \frac{1}{\varepsilon}\Bigl(\ln |\mathcal{H}| + \ln \tfrac{1}{\delta}\Bigr), \tag{4}$$则以至少 $1 - \delta$ 的概率,所有满足 $L_S(h) = 0$ 的假设 $h \in \mathcal{H}$ 都有 $L_{\mathcal{D}}(h) \leq \varepsilon$ 。特别地,ERM 是 $\mathcal{H}$ 的一个 PAC 学习算法。
证明:令 $\mathcal{H}_{\text{bad}} = \{h \in \mathcal{H} : L_{\mathcal{D}}(h) > \varepsilon\}$ 。我们关注的“坏事件”——“ERM 返回了一个坏假设”——包含在“某个坏假设在训练集上经验误差为零”这一事件中。
$$\Pr_{S}\!\bigl[L_S(h) = 0\bigr] \;=\; \prod_{i=1}^{m} \Pr\!\bigl[h(x_i) = y_i\bigr] \;\leq\; (1 - \varepsilon)^m. \tag{5}$$ $$\Pr_{S}\!\bigl[\exists h \in \mathcal{H}_{\text{bad}} : L_S(h) = 0\bigr] \;\leq\; \sum_{h \in \mathcal{H}_{\text{bad}}} (1 - \varepsilon)^m \;\leq\; |\mathcal{H}|\,(1 - \varepsilon)^m. \tag{6}$$ $$|\mathcal{H}|\,(1 - \varepsilon)^m \;\leq\; |\mathcal{H}|\, e^{-\varepsilon m}. \tag{7}$$ $$ |\mathcal{H}|\, e^{-\varepsilon m} \;\leq\; \delta \;\;\Longleftrightarrow\;\; m \;\geq\; \frac{1}{\varepsilon}\bigl(\ln |\mathcal{H}| + \ln \tfrac{1}{\delta}\bigr). \tag{8} $$当 $m$ 满足 (8) 时,坏事件概率不超过 $\delta$ ,其余情形即为定理结论。$\blacksquare$
解读公式:
- $\ln |\mathcal{H}|$ :假设类越丰富,所需数据越多,但仅以对数速度增长。
- $\ln(1/\delta)$ :将置信度从 90% 提升到 99%,仅需额外增加约 $\ln 10 \approx 2.3$ 个样本。
- $1/\varepsilon$ :将误差容忍度减半,所需样本量翻倍——样本复杂度与精度呈线性关系。
不可知情形#
可实现假设过于理想。“不可知 PAC”(agnostic PAC)放弃了这一前提:不再假设存在零误差的假设,只要求算法能逼近 $\mathcal{H}$ 中的最佳可能表现。
$$m \;\geq\; \frac{2}{\varepsilon^2}\Bigl(\ln |\mathcal{H}| + \ln \tfrac{2}{\delta}\Bigr) \tag{9}$$则以至少 $1 - \delta$ 的概率,ERM 解满足 $L_{\mathcal{D}}(h_{\text{ERM}}) \leq \min_{h \in \mathcal{H}} L_{\mathcal{D}}(h) + \varepsilon$ 。
$$\Pr\!\bigl[\, |L_S(h) - L_{\mathcal{D}}(h)| > t \,\bigr] \;\leq\; 2 e^{-2 m t^2}. \tag{10}$$对 $\mathcal{H}$ 应用联合界,并代入 $t = \varepsilon / 2$ ,即可导出 (9)。
为何是 $1/\varepsilon^2$ ,而非 $1/\varepsilon$ ?#
从可实现到不可知,$\varepsilon$ 的指数从 1 变为 2,这一平方代价从何而来?
在可实现情形下,我们只需剔除坏假设:一个反例就足以将其淘汰,“无反例”事件的概率随 $\varepsilon m$ 指数衰减。
$$\frac{\sigma}{\sqrt{m}} \;\lesssim\; \varepsilon \;\;\Longrightarrow\;\; m \;\gtrsim\; \frac{\sigma^2}{\varepsilon^2}.$$这正是中心极限定理的典型特征:将 $\varepsilon$ 缩小 10 倍,所需样本量增加 100 倍。两种情形的对比见下图。

左图表明 $\ln|\mathcal{H}|$ 仅作为对数加性项出现:即使假设类规模从 $10^3$ 增至 $10^6$ ,所需样本量也仅翻倍。右图则揭示放弃可实现假设的代价:在双对数坐标下,不可知情形的曲线斜率为 $-2$ ,而可实现情形仅为 $-1$ 。
VC 维:无限假设类的复杂度度量#

为什么需要新的度量?#
对于任何合理的实值模型,$\ln |\mathcal{H}|$ 都会失效:比如 $\mathbb{R}^d$ 中的线性分类器有不可数多个假设,导致 $\ln|\mathcal{H}| = \infty$ ,定理 2 也就毫无意义。我们需要一个有限的复杂度度量,同时还能反映统计容量。
正确的度量是组合性质的,而非基于基数的——它关注的是一个假设类在有限点集上能生成多少种不同的标记方式。
打散#
$$\bigl|\{(h(x_1), \ldots, h(x_m)) : h \in \mathcal{H}\}\bigr| \;=\; 2^m. \tag{11}$$直观理解:打散意味着 $\mathcal{H}$ 在这些特定点上足够灵活,能够生成所有可能的二分划分,其表达能力在 $C$ 上达到了极限。
定义#
$$\mathrm{VCdim}(\mathcal{H}) \;=\; \sup\bigl\{\, m : \exists\, C \subseteq \mathcal{X},\; |C| = m,\; \mathcal{H}\text{ 打散 } C \,\bigr\}. \tag{12}$$若上确界为无穷大,则记作 $\mathrm{VCdim}(\mathcal{H}) = \infty$ 。
两个重要不对称性:
- 存在性下界:要证明 $\mathrm{VCdim}(\mathcal{H}) \geq d$ ,只需找到一个大小为 $d$ 的点集被 $\mathcal{H}$ 打散。
- 全称性上界:要证明 $\mathrm{VCdim}(\mathcal{H}) < d+1$ ,必须说明任意大小为 $d+1$ 的点集都无法被打散。
实例:$\mathbb{R}^d$ 中的线性分类器#
定理 3 仿射线性分类器 $\mathcal{H} = \{x \mapsto \mathrm{sign}(w^\top x + b) : w \in \mathbb{R}^d, b \in \mathbb{R}\}$ 的 VC 维为 $d + 1$ 。
证明
$$w \;=\; \sum_{i=1}^{d} y_i\, e_i, \qquad b \;=\; \tfrac12 y_0. \tag{13}$$此时 $w^\top 0 + b = b = \tfrac12 y_0$ 的符号与 $y_0$ 一致;对 $i \geq 1$ ,$w^\top e_i + b = y_i + \tfrac12 y_0$ 的符号由 $y_i$ 决定(因为 $\tfrac12 y_0$ 太小,不足以翻转符号)。因此所有标记均可实现,该点集被成功打散。
$$\sum_{i=1}^{d+2} a_i \tilde{x}_i \;=\; 0. \tag{14}$$ $$\underbrace{\sum_{i \in I^+} a_i (w^\top x_i + b)}_{>\,0} \;+\; \underbrace{\sum_{i \in I^-} a_i (w^\top x_i + b)}_{>\,0} \;=\; 0,$$因为 $i \in I^+$ 时两项均为正,$i \in I^-$ 时两项均为负(乘积仍为正),严格正项之和等于零——矛盾。$\blacksquare$
几何直觉非常清晰:$\mathbb{R}^d$ 中的超平面有 $d+1$ 个自由参数,每个参数恰好对应一个标记自由度。

左侧 8 个图展示了 $\mathbb{R}^2$ 中三个一般位置点的所有 $2^3 = 8$ 种标记,每种都能找到一条分离直线。右侧面板展示了一个经典的 XOR 模式:四个点呈对角分布时,无法用一条直线将 $+$ 和 $-$ 分开。进一步的计数论证表明,$\mathbb{R}^2$ 中任意四个点都无法被打散。因此,二维线性分类器的 $\mathrm{VCdim} = 3$ ,与公式 $d + 1$ 完全一致。
VC 维样本复杂度界#
$$m_{\mathcal{H}}(\varepsilon, \delta) \;=\; O\!\left(\frac{d + \ln(1/\delta)}{\varepsilon^2}\right). \tag{15}$$ $$\mathrm{VCdim}(\mathcal{H}) = d \;\Longrightarrow\; \Pi_{\mathcal{H}}(m) \;\leq\; \sum_{i=0}^{d} \binom{m}{i} \;\leq\; \left(\frac{e\,m}{d}\right)^d. \tag{16}$$一旦 $m > d$ ,原本指数级的 $2^m$ 就会塌缩为多项式 $m^d$ 。将这一多项式增长率代入一致收敛论证(详见概率论章节),即可得到 (15)。
应用 $\mathbb{R}^{100}$ 中的线性分类器有 $\mathrm{VCdim} = 101$ 。要在不可知设定下达到 $\varepsilon = 0.05$ 、$\delta = 0.05$ ,所需样本量约为 $m \approx 10^5$ ——完全可行。相比之下,VC 维为 $\infty$ 的类(例如所有可测函数)不是 PAC 可学习的,无论数据量多大。
偏差-方差分解#
设置#
即使一个模型类是 PAC 可学习的,具体学到的预测器的测试误差也会分解成几个来源完全不同的部分。理解这种分解,正是实际进行模型选择时的核心指导。
固定平方损失,并假设以下条件成立:
- 真实回归函数 $f^\star: \mathcal{X} \to \mathbb{R}$ ;
- 观测值 $y = f^\star(x) + \varepsilon$ ,其中 $\mathbb{E}[\varepsilon] = 0$ ,$\mathrm{Var}(\varepsilon) = \sigma^2$ ;
- 学习算法基于样本 $S$ 输出预测器 $\hat{f}_S$ 。
在固定测试点 $x$ 上,对随机样本 $S$ 和噪声 $\varepsilon$ 同时取期望。
$$ \mathbb{E}_{S,\varepsilon}\!\Bigl[(\hat{f}_S(x) - y)^2\Bigr] \;=\; \underbrace{\bigl(\bar{f}(x) - f^\star(x)\bigr)^2}_{\textstyle\text{偏差}^2} \;+\; \underbrace{\mathbb{E}_S\!\bigl[(\hat{f}_S(x) - \bar{f}(x))^2\bigr]}_{\textstyle\text{方差}} \;+\; \underbrace{\sigma^2}_{\textstyle\text{噪声}}. \tag{17} $$证明#
$$\hat{f} - y \;=\; \underbrace{(\hat{f} - \bar{f})}_{A} \;+\; \underbrace{(\bar{f} - f^\star)}_{B} \;+\; \underbrace{(f^\star - y)}_{C}. \tag{18}$$ $$(\hat{f} - y)^2 \;=\; A^2 + B^2 + C^2 + 2AB + 2AC + 2BC.$$对 $S$ 和 $\varepsilon$ 取期望,三项交叉项均消失:
- $\mathbb{E}_S[2AB] = 2B \cdot \mathbb{E}_S[\hat{f} - \bar{f}] = 0$ ,因为 $\mathbb{E}_S[\hat{f}] = \bar{f}$ ;
- $\mathbb{E}_{S,\varepsilon}[2AC] = 2\,\mathbb{E}_S[A] \cdot \mathbb{E}_\varepsilon[C] = 0$ ,因为 $S \perp \varepsilon$ 且两者期望均为零;
- $\mathbb{E}_\varepsilon[2BC] = 2B \cdot \mathbb{E}_\varepsilon[C] = 0$ ,因为 $\mathbb{E}[\varepsilon] = 0$ 。
最终剩下 $\mathbb{E}_S[A^2] + B^2 + \mathbb{E}_\varepsilon[C^2]$ ,恰好对应方差、偏差² 和噪声。$\blacksquare$
三项的含义#
| 项 | 含义 | 减小方法 |
|---|---|---|
| 偏差² | 平均预测器与真实值的距离。高偏差意味着欠拟合。 | 使用更复杂的模型类、更好的特征、减少正则化。 |
| 方差 | 换一批训练数据后预测器的变化程度。高方差意味着过拟合。 | 增加数据量、使用更简单的模型类、加入正则化、做集成学习。 |
| 噪声 | 给定 $x$ 时 $y$ 的不可消除的随机性。任何算法都无法去除。 | 无——这是误差的下限。 |
随着模型容量增加,这三种力量相互竞争:

总期望误差呈现 U 型曲线。最优点左侧,偏差占主导,表现为欠拟合;右侧,方差占主导,表现为过拟合。最低点就是目标工作点,而找到它(通常通过交叉验证)正是模型选择的本质。
一个数值小验证#
设 $f^\star(x) = \sin(\pi x)$ 定义在 $[-1, 1]$ 区间上,$\sigma = 0.3$ ,$m = 20$ ,重复 100 次随机训练集实验:
| 模型 | 偏差² | 方差 | 噪声 | 总误差 |
|---|---|---|---|---|
| 1 次多项式 | 0.42 | 0.002 | 0.09 | 0.51 |
| 3 次多项式 | 0.05 | 0.02 | 0.09 | 0.16 |
| 9 次多项式 | 0.01 | 0.35 | 0.09 | 0.45 |
3 次多项式胜出,因为它同时控制了偏差和方差。注意,噪声项在所有行中都相同,这是由定义决定的。
诊断欠拟合与过拟合#
| 训练误差 | 验证误差 | 诊断 | 应对措施 |
|---|---|---|---|
| 低 | 低 | 健康 | 不用调整,直接部署。 |
| 高 | 高 | 欠拟合 | 增加特征、扩大模型规模、延长训练时间、减少正则化。 |
| 低 | 高 | 过拟合 | 增加数据量、缩小模型规模、加入正则化、提前停止、使用 Dropout。 |
| 高 | 低 | 很可能是数据泄漏或评测代码有 bug | 检查数据划分是否正确。 |
No Free Lunch 定理#
定理内容#
Wolpert(1996)和 Wolpert 与 Macready(1997)将从业者长期怀疑的观点形式化:不存在适用于所有场景的最优学习算法。
$$\frac{1}{|\mathcal{F}|} \sum_{f \in \mathcal{F}} \mathbb{E}_S\!\bigl[L_f(\mathcal{A}_1(S))\bigr] \;=\; \frac{1}{|\mathcal{F}|} \sum_{f \in \mathcal{F}} \mathbb{E}_S\!\bigl[L_f(\mathcal{A}_2(S))\bigr]. \tag{19}$$证明很简单:对任意未见过的 $x \notin S$ ,从 $\mathcal{F}$ 中均匀随机选取目标函数 $f$ 时,$f(x)$ 相当于公平抛硬币——一半函数赋值为 0,另一半为 1。因此,任何预测策略在一半目标上正确,在另一半上错误,平均风险恒为 $\tfrac12$ 。
归纳偏置#
既然没有算法能在所有问题上都表现优异,每个成功的算法必然都带着对世界的某种假设。这种假设被称为归纳偏置(inductive bias)。
| 归纳偏置 | 体现在哪些方法中 | 适合的问题 |
|---|---|---|
| 平滑性 | $k$ -NN、核方法 | 物理量的连续回归 |
| 线性性 | 线性/逻辑回归、线性 SVM | 大致线性关系、高维但样本少 |
| 稀疏性 | Lasso、弹性网 | 高维问题,相关特征少 |
| 组合性 / 层次结构 | 深度网络 | 视觉、语言,涉及“部分-整体”关系的任务 |
| 局部性 + 平移等变 | 卷积神经网络 | 图像、音频频谱 |
| 序列结构 | RNN、Transformer | 语言、时间序列 |
| 置换不变性 | 集合 / 图网络 | 集合、分子、社交网络 |
下图展示了三种不同的归纳偏置作用在同一组训练数据上的效果:

线性拟合欠拟合了——它的归纳偏置太强;随机 ReLU 特征过拟合了——它的归纳偏置太弱;4 次多项式刚好匹配了目标函数的结构。三者都没有绝对的对错,选择取决于你对 $f^\star$ 的先验信念。
为什么 NFL 不会让机器学习失去意义#
NFL 是对所有可能函数取平均的结果。而我们实际遇到的函数——物理定律、自然语言、图像——只存在于“全部函数”的一个极小且高度结构化的子流形上。在这个子流形上,某些归纳偏置会以巨大优势胜过其他偏置。
实践中,NFL 给出四点启示:
- 别再幻想找到万能算法,它根本不存在;
- 识别你的问题实际具有何种结构;
- 选择与该结构匹配的归纳偏置;
- 在你关心的问题类别上评估算法,而非对抗性的最坏情况。
代码:线性回归的实证 PAC 与偏差-方差#
下面这段脚本完整实现了一个简单的线性回归问题,验证了本章的核心预测。它做了两件事:(i) 在可实现状态下,测试误差随样本量 $m$ 按 $1/m$ 衰减;(ii) 分别计算偏差²、方差和噪声,并验证它们加起来等于总期望误差。
| |
应该看到的现象:
- 测试误差大约按 $1/m$ 减小——这是可实现状态下 PAC 的预测结果,因为规范设定的线性模型下,平方损失本质上是一个参数估计问题;
- 偏差² 几乎为零——线性假设类包含了真实函数;
- 方差随 $1/m$ 减小——数据越多,拟合出的斜率和截距越稳定;
- 偏差² + 方差 + $\sigma^2$ 与测试 MSE 在 Monte-Carlo 误差范围内一致,验证了定理 5。
常见问题#
Q1. ERM 这么简单,为什么不用它?
因为 $L_S$ 和 $L_{\mathcal{D}}$ 在过于复杂的 $\mathcal{H}$ 上可能会完全不一致。例如“查表法”假设:当 $i \leq m$ 时 $h(x_i) = y_i$ ,否则 $h(x) = 0$ 。这种假设下 $L_S = 0$ ,但 $L_{\mathcal{D}}$ 接近随机猜测。PAC 理论告诉我们,在什么条件下 $\mathcal{H}$ 和样本数 $m$ 能让 $|L_S - L_{\mathcal{D}}|$ 很小;结构风险最小化则指导我们如何根据这些条件动态选择 $\mathcal{H}$ 。
Q2. 不可数的假设类,VC 维怎么可能是有限的?
VC 维不是用来数假设的数量,而是用来数假设类在有限点集上能产生的不同标记方式。例如所有二维线性分类器构成一个不可数集合,但如果两个分类器在每个测试点上的符号相同,它们对我们来说就是不可区分的。对于 $m$ 个点,最多有 $\binom{m}{0} + \binom{m}{1} + \binom{m}{2} \leq O(m^2)$ 种不同的行为。Sauer-Shelah 引理将这一组合事实转化为有限的复杂度上界。
Q3. 训练误差为 0 总是坏事吗?
不一定。关键问题是:你的模型类是否大到能记住噪声? 如果数据基本无噪声,且模型类包含真实函数(例如用线性模型拟合线性数据),那么训练误差为 0 是合理的结果。但如果 $\sigma^2 > 0$ 且模型类足够复杂到可以插值,训练误差为 0 就是个危险信号。一个实用的经验法则:如果 $m / \mathrm{VCdim}(\mathcal{H}) < 10$ ,就要对低训练误差保持警惕。
Q4. 常见机器学习模型的 VC 维是多少?
| 模型 | VC 维 |
|---|---|
| $\mathbb{R}^d$ 上的线性分类器 | $d + 1$ |
| $\mathbb{R}^d$ 上 $k$ 次多项式 | $\binom{d+k}{k}$ |
| $\mathbb{R}^d$ 上轴对齐矩形 | $2d$ |
| $W$ 个权重的 sigmoid 神经网络 | $\Theta(W^2)$ (Karpinski-Macintyre) |
| $W$ 个权重、$L$ 层的分段线性网络 | $\Theta(W L \log W)$ (Bartlett 等) |
| 深度为 $D$ 的决策树 | $\Theta(2^D)$ |
| 所有可测函数的类 | $\infty$ (无法 PAC 学习) |
对于现代深度网络,VC 界通常很松散——网络可以轻松拟合随机标签(说明 VC 很大),但仍然能泛化。解释这一现象是当前研究的热点领域(PAC-Bayes、间隔界、神经正切核分析、隐式正则化理论)。
Q5. Hoeffding 不等式是怎么来的?
它是针对有界独立随机变量之和的次高斯集中不等式。我们将在第 3 章 从矩生成函数出发推导该不等式,并在后续几乎所有一致收敛的论证中将其作为核心工具使用。
总结#
| 概念 | 关键公式 | 一句话直觉 |
|---|---|---|
| PAC 样本复杂度(可实现,有限) | $m \geq \tfrac{1}{\varepsilon}(\ln \mid\mathcal{H}\mid+ \ln \tfrac{1}{\delta})$ | 剔除坏假设这件事,随着样本增加会指数级变容易。 |
| PAC 样本复杂度(不可知,有限) | $m \geq \tfrac{2}{\varepsilon^2}(\ln \mid\mathcal{H}\mid+ \ln \tfrac{2}{\delta})$ | 估计期望值比剔除假设更难,代价多出一个 $1/\varepsilon$ 。 |
| VC 样本复杂度 | $m = O\!\bigl(\tfrac{d + \ln(1/\delta)}{\varepsilon^2}\bigr)$ | 对无限假设类,用 $\mathrm{VCdim}$ 替代 $\ln \mid\mathcal{H}\mid$ 。 |
| Sauer-Shelah 引理 | $\Pi_{\mathcal{H}}(m) \leq (em/d)^d$ | 一旦 VC 维有限,指数增长的 $2^m$ 就坍缩成多项式 $m^d$ 。 |
| 偏差-方差分解 | 测试误差 $=$ 偏差² $+$ 方差 $+\, \sigma^2$ | 模型误差来自三个彼此独立的源头。 |
| 无免费午餐定理 | $\sum_f L_f(\mathcal{A}_1) = \sum_f L_f(\mathcal{A}_2)$ | 在所有可能问题上平均,任何两个算法表现一样好。 |
新项目实战清单
- 画出训练误差和验证误差随样本量 $m$ 的变化曲线,判断当前处于欠拟合、过拟合还是理想区间。
- 估算模型类 $\mathcal{H}$ 的 $\mathrm{VCdim}$ 或有效参数数量,尽量让 $m / \mathrm{VCdim} \gtrsim 10$ 。
- 用交叉验证来选择模型复杂度,别光靠肉眼盯着训练曲线做决定。
- 把正则化当作默认配置,让结构风险最小化(SRM)成为你的第一反应,而不是事后补救。
- 选一个归纳偏置与问题特性对齐的假设空间 $\mathcal{H}$ :图像任务偏好局部性,基因组学倾向稀疏性,物理建模则看重平滑性。
下一步#
写到这里,我手上只有一组语言:风险、损失、容量、偏差-方差。它们告诉我"学习是否可能",却不告诉我"学习器具体长什么样"。下一章我把这些抽象工具铺到实数和向量上——线性代数与矩阵论。
我之所以把它放在第二章而不是放进附录,是因为机器学习里几乎所有"模型"最终都化简成线性代数操作:梯度是向量,参数是矩阵,反向传播是雅可比的链式相乘,PCA 是协方差矩阵的特征分解。如果说本章给了我一把分析的尺子,那么下一章就是把这把尺子接到具体的运算装置上。读完后,“二次型梯度等于 $2Ax$ “会从一个公式变成一个我闭着眼睛都能写的反射动作——这是我后面所有推导的硬底子。
参考文献#
- Valiant, L. G. (1984). A theory of the learnable. Communications of the ACM, 27(11), 1134-1142.
- Vapnik, V. N. & Chervonenkis, A. Y. (1971). On the uniform convergence of relative frequencies of events to their probabilities. Theory of Probability & Its Applications, 16(2), 264-280.
- Blumer, A., Ehrenfeucht, A., Haussler, D. & Warmuth, M. K. (1989). Learnability and the Vapnik-Chervonenkis dimension. Journal of the ACM, 36(4), 929-965.
- Bartlett, P. L., Jordan, M. I. & McAuliffe, J. D. (2006). Convexity, classification, and risk bounds. Journal of the American Statistical Association, 101(473), 138-156.
- Bartlett, P. L., Harvey, N., Liaw, C. & Mehrabian, A. (2019). Nearly-tight VC-dimension bounds for piecewise linear neural networks. Journal of Machine Learning Research, 20, 1-17.
- Wolpert, D. H. (1996). The lack of a priori distinctions between learning algorithms. Neural Computation, 8(7), 1341-1390.
- Wolpert, D. H. & Macready, W. G. (1997). No free lunch theorems for optimization. IEEE Transactions on Evolutionary Computation, 1(1), 67-82.
- Shalev-Shwartz, S. & Ben-David, S. (2014). Understanding Machine Learning: From Theory to Algorithms. Cambridge University Press.
- Mohri, M., Rostamizadeh, A. & Talwalkar, A. (2018). Foundations of Machine Learning (2nd ed.). MIT Press.
- Zhang, C., Bengio, S., Hardt, M., Recht, B. & Vinyals, O. (2017). Understanding deep learning requires rethinking generalization. ICLR.
- 周志华 (2016). 机器学习. 清华大学出版社.
- 李航 (2012). 统计学习方法. 清华大学出版社.
机器学习数学推导 20 篇
- 01 机器学习数学推导(一):绪论与数学基础 当前
- 02 机器学习数学推导(二):线性代数与矩阵论
- 03 机器学习数学推导(三):概率论与统计推断
- 04 机器学习数学推导(四):凸优化理论
- 05 机器学习数学推导(五):线性回归
- 06 机器学习数学推导(六):逻辑回归与分类
- 07 机器学习数学推导(七):决策树
- 08 机器学习数学推导(八):支持向量机
- 09 机器学习数学推导(九):朴素贝叶斯
- 10 机器学习数学推导(十):半朴素贝叶斯与贝叶斯网络
- 11 机器学习数学推导(十一):集成学习
- 12 机器学习数学推导(十二):XGBoost 与 LightGBM
- 13 机器学习数学推导(十三):EM 算法与 GMM
- 14 机器学习数学推导(十四):变分推断与变分 EM
- 15 机器学习数学推导(十五):隐马尔可夫模型
- 16 机器学习数学推导(十六):条件随机场
- 17 机器学习数学推导(十七):降维与主成分分析
- 18 机器学习数学推导(十八):聚类算法
- 19 机器学习数学推导(十九):神经网络与反向传播
- 20 机器学习数学推导(二十):正则化与模型选择