Ch03 AI数学修订于 二〇二六年七月六日

3.2 概率统计:理解不确定性

概率分布:AI 不是输出一个确定答案,而是输出一个概率分布——每个可能的下一个 token 的概率。“今天天气真”之后,下一个 token 是”好”的概率 0.7,“不”的概率 0.2,“是”的概率 0.05…

Softmax:把任意实数转成概率分布。神经网络最后一层的输出是实数(可能正可能负),Softmax 把它们变成 0-1 之间、加起来等于 1 的概率。你每次看到 AI 的”下一个词预测”,背后都是 Softmax。

采样策略:怎么从概率分布里选一个词?概念-采样策略 里讲了 Temperature、Top-K、Top-P。这些是”怎么选”的策略,概率分布是”选什么”的基础。

期望和方差:期望 = “平均来说会怎样”。方差 = “结果多不稳定”。训练模型时,你关心”平均 loss 是多少”(期望),也关心”每个 batch 的 loss 波动大不大”(方差)。方差太大说明训练不稳定。

loss(损失):模型预测和正确答案之间的差距。loss 越小,模型越准。训练过程的本质就是”想办法让 loss 不断变小”——每次前向传播算出一个 loss,然后反向传播去修正参数。你在 Ch06 会详细看到这个过程。

batch(批次):一次喂给模型的一组训练样本。不是喂一条数据就更新一次模型(太慢),也不是喂完全部数据再更新(显存放不下),而是每次取一小撮——比如 32 条数据——算一次平均 loss,更新一次参数。batch 的大小直接影响训练的稳定性和速度。

3.2.1 概率 vs 似然:一对容易混淆的概念

这两个概念是统计学习的基石,但很多人分不清。

概率(Probability):已知模型参数,预测数据出现的可能性。

“如果硬币是公平的(p=0.5),抛 10 次出现 7 次正面的概率是多少?“——参数已知,问数据的概率。

似然(Likelihood):已知观测数据,推测什么样的参数最合理。

“抛了 10 次硬币,7 次正面,硬币是公平的(p=0.5)还是偏心的(p=0.7)?“——数据已知,问参数的可能性。

数学上的区别:

  • 概率是参数 θ 固定,数据 x 可变:P(x | θ)
  • 似然是数据 x 固定,参数 θ 可变:L(θ | x) = P(x | θ)

在最大似然估计(MLE)中,你做的事情是:给定观测数据,找到使似然最大化的参数。这就是”最大似然”的由来——“什么样的参数最可能产生我们看到的这些数据?”

在 AI 中的应用:训练一个分类模型,本质上就是在做最大似然估计——找到一组权重参数,使得”模型预测的类别分布”和”真实标签”最接近(即让真实标签在模型预测下的概率最大)。交叉熵损失函数就是从这个框架推导出来的。

3.2.2 条件概率和贝叶斯定理:AI 决策的底层逻辑

条件概率 P(A|B):在 B 已经发生的条件下,A 发生的概率。读作”给定 B,A 的概率”。

“已知今天下雨,带伞的同事迟到的概率是多少?“——这就是条件概率。

贝叶斯定理:AI 中最核心的概率公式,连接了”正向推理”和”反向推理”。

P(A|B) = P(B|A) × P(A) / P(B)

各项含义:

  • P(A|B):后验概率——看到证据 B 之后,对 A 的更新信念
  • P(B|A):似然——如果 A 为真,看到证据 B 的可能性
  • P(A):先验概率——在看到证据之前,对 A 的初始信念
  • P(B):边缘概率——证据 B 出现的总概率(归一化因子)

AI 中的实际应用:

  • 朴素贝叶斯分类器:垃圾邮件检测的经典方法。P(垃圾邮件 | 包含”中奖”一词) = P(包含”中奖” | 垃圾邮件) × P(垃圾邮件) / P(包含”中奖”)
  • 贝叶斯优化:超参数调优的常用方法。根据已有的试验结果(先验),预测哪些超参数组合最可能带来好结果,然后去试,再更新信念——这是一个”先验 → 实验 → 后验 → 新的先验”的循环
  • 变分推断(Variational Inference):在变分自编码器(VAE)和贝叶斯神经网络中,用贝叶斯框架推断模型参数的后验分布
  • 医疗诊断:P(有病 | 检测阳性) 不等于 P(检测阳性 | 有病),两者通过贝叶斯定理连接。这就是为什么即使检测准确率 99%,稀有病的阳性预测值也可能很低

贝叶斯思维的核心:你的信念不是固定的,而是随着新证据不断更新的。先验(初始猜测)+ 证据(数据)= 后验(更新后的信念)。这和你训练模型的过程完全一致——初始的随机权重(先验),经过训练数据(证据),得到训练好的权重(后验)。

3.2.3 期望和方差:概括一个分布的”位置”和”散布”

期望(Expectation):随机变量的”平均”值。如果重复实验无数次,结果的平均值趋近于期望。

数学上:E[X] = Σ x_i × P(x_i)(离散)或 E[X] = ∫ x × f(x) dx(连续)

在 AI 中:

  • 训练模型时,你关心”平均 loss 是多少”——这就是 batch loss 的期望
  • 强化学习中,你关心”这个策略的期望累积奖励是多少”——这就是价值函数
  • 蒙特卡洛方法中,你用样本均值来近似期望——这就是”采样越多越准”的数学基础

方差(Variance):随机变量偏离期望的程度。方差大 = 结果不稳定,波动大。

数学上:Var[X] = E[(X - E[X])^2] = E[X^2] - (E[X])^2

在 AI 中:

  • 训练时,每个 batch 的 loss 波动大(方差大)说明训练不稳定,可能需要调整 batch size 或学习率
  • 交叉验证中,各折得分的方差大说明模型对数据划分敏感,可能过拟合
  • 集成学习(Ensemble)的本质是降低方差——多个模型的平均预测比单个模型更稳定

标准差(Standard Deviation):方差的平方根,和原始数据同量纲,更直观。σ = sqrt(Var[X])。

3.2.4 最大似然估计(MLE):寻找最合理的参数

MLE 是机器学习中最常用的参数估计方法。它的核心思想极其简单:

问题:你有一堆观测数据,你假设数据来自某个分布(比如正态分布),但不知道分布的参数(均值和方差)。怎么找到最合理的参数?

答案:选择那组参数,使得”观察到这些数据”的概率最大。这就是最大似然估计。

步骤:

  1. 写出似然函数 L(θ) = P(观测数据 | 参数θ)
  2. 取对数,得到对数似然(log-likelihood),因为乘积取对数变求和,好算
  3. 对 θ 求导,令导数为 0,解出 θ

在 AI 中的具体应用:

  • 线性回归:假设误差服从正态分布,MLE 推导出的参数恰好等价于最小二乘法(OLS)——这就是为什么线性回归用 MSE 作为损失函数
  • 逻辑回归:假设标签服从伯努利分布,MLE 推导出的损失函数就是交叉熵(Cross-Entropy)——这就是为什么分类问题用交叉熵损失
  • 语言模型训练:GPT 的训练就是最大化下一个 token 的似然——对于给定的上文,使模型预测正确下一个 token 的概率最大。GPT 的”预训练”本质上就是一个超大规模的 MLE

3.2.5 交叉熵:分类问题的核心损失函数

交叉熵是分类模型中最常用的损失函数。它衡量两个概率分布之间的”距离”——模型的预测分布和真实标签分布有多大的差距。

数学定义:对于离散分布,H(p, q) = -Σ p(x) × log(q(x))

其中 p 是真实分布(one-hot 标签),q 是模型预测分布(softmax 输出)。

直觉:交叉熵在”惩罚”模型对正确答案的”犹豫”。

  • 如果模型对正确答案的概率预测是 0.99,-log(0.99) ≈ 0.01,惩罚很小
  • 如果模型对正确答案的概率预测是 0.5,-log(0.5) ≈ 0.69,惩罚中等
  • 如果模型对正确答案的概率预测是 0.01,-log(0.01) ≈ 4.6,惩罚很大

模型越自信但猜错,惩罚越重。这就是为什么训练初期 loss 很大——模型对正确答案的概率接近随机(1/vocab_size),log 值很大。

交叉熵 vs 均方误差(MSE):为什么分类问题不用 MSE?

  • 交叉熵配合 softmax 时,梯度是”预测概率 - 真实标签”,形式简洁,梯度不会消失
  • MSE 配合 softmax 时,当预测概率接近 0 或 1 时梯度接近 0——梯度消失,模型停止学习
  • 交叉熵是 MLE 的等价形式,有良好的统计性质

在 PyTorch 中:loss = nn.CrossEntropyLoss()(model_output, labels) 一行搞定。它内部自动做了 softmax + log + NLL(负对数似然)。

3.2.6 正态分布为什么重要:中心极限定理

正态分布(高斯分布)是 AI 和统计学中最重要的分布,没有之一。为什么?

中心极限定理:大量独立随机变量的和(或均值),无论原始分布是什么,都近似服从正态分布。

这是统计学的”大统一理论”。它解释了为什么正态分布无处不在:

  • 测量误差(很多微小误差叠加)→ 正态分布
  • 人类身高(很多基因+环境因素叠加)→ 正态分布
  • 一个 batch 的 loss 的均值(很多样本的 loss 求和)→ 近似正态分布

在 AI 中的应用:

  • 权重初始化:Xavier 初始化和 Kaiming 初始化都是基于正态分布(或均匀分布)的,确保前向传播和反向传播的方差稳定
  • Batch Normalization:假设每个 batch 的数据服从正态分布,进行标准化(减均值除以标准差),使训练更稳定
  • 变分自编码器(VAE):假设潜在变量服从标准正态分布 N(0,1),这是 VAE 的核心假设
  • 扩散模型(Diffusion Models):前向过程不断加高斯噪声,反向过程从高斯噪声中逐步去噪生成图像。Stable Diffusion 的每一步都依赖正态分布
  • 高斯过程(Gaussian Process):一种非参数贝叶斯方法,用于回归和超参数优化,整个模型基于正态分布
  • 异常检测:如果数据服从正态分布,偏离均值超过 3σ 的点可以视为异常

正态分布的概率密度函数:f(x) = (1 / (σ√(2π))) × exp(-(x-μ)^2 / (2σ^2))。你不需要记住公式,但需要理解:μ(均值)决定分布的中心在哪里,σ(标准差)决定分布有多”宽”。


← 上一节:3.1 线性代数:向量和矩阵 | 下一节:3.3 微积分:理解优化 →

关联7

知识图谱

局部图谱 · 点节点跳转