本节摘要:极限定理回答"重复越多越接近什么"。大数定律保证样本均值收敛到期望,中心极限定理给出波动的尺度——收敛但以平方根的速度变慢。本节把两条定理的条件、结论与常见误用讲透,再搬到马尔可夫链上得到遍历定理,最后讨论收敛速度对蒙特卡洛实践的直接含义。
为什么保险公司敢为千家万户承保?为什么赌场从不在意单局输赢?为什么模拟一万次就能放心地报出一个概率估计值?三个问题共用同一个答案:大量重复之下,平均值服从严密的数学秩序。本章最后一节把这份秩序的两条定律立起来,并回答一个工程上更要紧的问题——秩序来临的速度有多快。
结论:设 X₁, X₂, … 独立同分布,期望 μ 存在,则样本均值 X̄ₙ = (X₁ + … + Xₙ)/n 依概率(或几乎必然,视版本而定)收敛到 μ。用第 1 章的语言:对任意正数 ε,P(|X̄ₙ − μ| > ε) 随 n 增大趋于零。
条件比想象中宽松:只要求期望存在,不需要方差有限。这是它与中心极限定理的本质分界——方差有限与否,恰好切开了"均值收敛"与"波动多大"两个问题。方差无穷的厚尾分布(如某些金融损失分布),均值照样收敛,但收敛得踉踉跄跄,波动的描述权移交给了稳定分布理论(Lévy 家族的另一批成员,2.4 节埋过伏笔)。
常见误用两条。其一,把"收敛"读成"很快收敛"——大数定律不承诺速度,厚尾分布的样本均值可能在几万次之后还差得远。其二,把"依概率收敛"读成"每次实验都收敛"——几乎必然版本说的是"概率为一的路径上收敛",例外路径的概率为零但并非逻辑上不存在。
结论:在期望 μ 与有限方差 σ² 的独立同分布假设下,标准化后的样本均值
√n · (X̄ₙ − μ) / σ
随 n 增大依分布收敛到标准正态。换算成估计语言:n 次平均的误差大致是 σ 除以 √n 的量级。
这个 √n 是全书最重要的工程常数之一。它告诉你三件事:精度与代价呈平方关系——想把误差减半,样本要翻四倍;误差有理论下限,靠堆样本无限提精度的做法在 √n 面前会撞墙;置信区间有了通用构造(估计值加减两倍标准误,覆盖率约九成五)。
适用条件与失效场景要分清。独立同分布是标准版;独立不同分布的林德伯格条件、平稳序列的混合条件是加强版,各自覆盖不同场景。失效的典型:重尾分布(方差无穷,收敛到稳定分布而非正态)、强相关样本(有效样本量远小于名义 n——第 5 章 MCMC 的"自相关时间"就是修正项)。拿中心极限定理做置信区间之前,先问一句"我的样本真的接近独立吗"。
| 分布形态 | 均值收敛 | 收敛的"体感" | 波动归谁管 |
|---|---|---|---|
| 轻尾(正态、指数) | 快而平滑 | 千次平均已很稳 | 中心极限定理,√n 尺度 |
| 重尾(方差大但有限) | 慢,偶有大跳 | 需万次以上才稳 | 仍是 √n,但 σ 本身巨大 |
| 极厚尾(方差无穷) | 收敛但踉跄 | 十万次仍可能偏离 | 稳定分布接管,√n 失效 |
这张表的实际用途是"定精度预算":先粗估分布的尾部重量,再决定样本规模——比盲选"跑十万次"科学得多。
把独立同分布换成马尔可夫依赖,秩序还在吗?在。第 3.3 节预告的遍历定理精确地说:对不可约非周期的有限链(及多数合理推广),时间占比收敛到平稳分布 π;进一步,对任意函数 f,
(1/n)·Σₖ f(Xₖ) 收敛到 Σᵢ πᵢ·f(i)
即沿单条链的函数平均收敛到平稳分布下的期望。这是蒙特卡洛方法的马尔可夫版合法性证书:第 5 章的 MCMC 全靠它——构造一条平稳分布等于目标分布的链,跑长链取平均,就完成了对目标分布期望的估计。
马尔可夫版与独立版的差别在有效样本量:相邻样本相关时,信息含量打折,误差从 σ/√n 膨胀为 σ 乘以 √(n 的有效折算)。量化这个折扣的"自相关时间"概念在第 5 章正式登场,这里先埋好线头。
import numpy as np rng = np.random.default_rng(1122) # 实验一:均匀掷硬币的样本均值轨迹(大数定律 + 中心极限定理) n = 100_000 flips = rng.integers(0, 2, size=n) means = np.cumsum(flips) / np.arange(1, n+1) for m in (100, 1_000, 10_000, 100_000): err = abs(means[m-1] - 0.5) print(f"n = {m:>6}: 样本均值偏离 {err:.4f},√n 理论尺度 {0.5/np.sqrt(m):.4f}") # 典型输出:偏离与理论尺度始终同量级——误差确实按 1/√n 缩水 # 实验二:重尾分布(帕累托,形状参数 1.3,方差无穷) pareto = (rng.pareto(1.3, size=n) + 1.0) mp = np.cumsum(pareto) / np.arange(1, n+1) print(f"帕累托 n = 100000 的样本均值 {mp[-1]:.3f}(理论期望约 4.33)") # 多换几个随机种子跑:轻尾情形每次都稳稳落进理论尺度, # 帕累托情形不同种子可能差出一倍——方差无穷时大数定律仍成立但极不稳定
第二组实验值得多跑几个种子:同样十万次抽样,轻尾的样本均值次次咬住理论值,厚尾的却可能因一次巨额抽签被拽偏——"样本够多"解决不了"尾部太重",这是模拟实践里最值钱的一条经验。
场景一:A/B 实验的样本量预算。想检出转化率从 5% 到 5.5% 的提升(九成五置信、八成功效),中心极限定理给出样本量公式——两 组各约十六万。运营同事常惊讶"改 0.5 个点要这么大的量",误差按 √n 缩水的平方代价在这里显形。预算不足时,正确动作是改指标(换更敏感的代理)而不是硬跑小样本。
场景二:看穿"伪收敛"。模拟实验里把样本量从一万加到十万,估计值挪了千分之三——这算收敛了吗?用理论尺度核查:标准误按 σ/√n,从十万到百万还该再缩三倍,若实际挪动超过这个量级,说明离散化偏差或相关结构在盖过统计误差。极限定理由此变成收敛体检的量尺:挪动量应当与理论尺度同阶,明显超尺即有系统性问题。
场景三:厚尾数据的止损线。处理支付金额、网络流量这类重尾数据,先估一个粗略的尾部指数;指数低于二(方差无穷)时,一切基于样本均值加减两倍标准误的结论作废,改用分位数、中位数或截尾均值。先验尾部、后算均值——这个顺序颠倒过来,是数据科学面试与实际事故里的高频错误。
三个场景共同点:定理没有直接给出数字,给出的是判断该信什么、不信什么的标尺。这正是极限定理在工程里的真实岗位。
第 3 章至此收官:从一步转移走到无穷步的秩序。下一章进入连续时间最深的舞台——布朗运动与鞅,那里连"下一步"都是无穷小的。