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 是机器学习中最常用的参数估计方法。它的核心思想极其简单:
问题:你有一堆观测数据,你假设数据来自某个分布(比如正态分布),但不知道分布的参数(均值和方差)。怎么找到最合理的参数?
答案:选择那组参数,使得”观察到这些数据”的概率最大。这就是最大似然估计。
步骤:
- 写出似然函数 L(θ) = P(观测数据 | 参数θ)
- 取对数,得到对数似然(log-likelihood),因为乘积取对数变求和,好算
- 对 θ 求导,令导数为 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
知识图谱局部图谱 · 点节点跳转