蒙特卡洛方法:用随机数算确定的东西
本文基于模型知识整理(生成时未联网核对),方差缩减技巧建议对照 Robert & Casella《Monte Carlo Statistical Methods》复核。
一句话定义
蒙特卡洛方法用随机采样逼近确定量:要算 $\theta=E[f(X)]$,就抽 n 个样本取均值 $\hat\theta_n=\frac1n\sum f(X_i)$——大数定律保证 $\hat\theta_n\to\theta$(kp-014),CLT 保证误差 $\propto1/\sqrt n$(kp-015)。把积分/求和/优化问题改写为期望,再用随机数平均掉它——20 世纪最重要的算法思想之一。
为什么重要
现代计算的心脏地带全是蒙特卡洛:贝叶斯后验计算(MCMC,kp-022/025)、物理模拟(粒子输运)、金融衍生品定价、强化学习的策略评估、图形学的路径追踪。凡是"维度高到数值网格放不下"的积分,MC 是默认答案——而且它的误差率 O(1/√n) 与维度无关(数值网格是指数灾难)。
前置知识
kp-007(期望)、kp-014/015(LLN/CLT)。
核心概念
- 基本形式:$\theta=E[f(X)]\approx\frac1n\sum_i f(X_i)$,误差 $\approx\frac{\sigma_f}{\sqrt n}$(σ_f=f(X) 的标准差);置信区间 $\hat\theta\pm1.96\frac{\hat\sigma}{\sqrt n$}$(CLT 直接产品)。
- 积分的期望化:$\int_a^bf(x)dx=(b-a)E_{U\sim U(a,b)}[f(U)]$——任何积分都能写成期望(kp-030 概率中的积分的算法化)。
- 精度经济学:误差减半 → 样本 ×4(√n 律,kp-015);与维度无关是 MC 对网格法的降维打击(100 维网格即使每维 10 点也是 10¹⁰ 个格子)。
- 方差缩减(少采一半样达到同精度):
- 对偶变量:用 f(U) 与 f(1−U) 配对平均(负相关抵消); - 控制变量:减去一个"已知期望的相关量"再补回; - 重要性采样:从更"聚焦"的分布 q 采样,权重 $p/q$ 校正(kp-027)——稀有事件概率的救星(直接采几乎采不到尾部)。
- MCMC 是 MC 的依赖版(kp-025):样本相关时误差仍 1/√n 但常数变差(有效样本量 ESS< n)。
原理与机制
为什么误差与维度无关:误差由 f(X) 的方差与样本数决定,不涉及"每维几点"的网格计数——高维积分的 Curse of Dimensionality 对求和法致命(点数 d 维指数),对 MC 只是"方差换个数"。MC 的超能力=把维度诅咒兑换成平方根税。
为什么方差缩减等价于"更聪明的采样":误差只看 $\text{Var}[f(X)]/n$——降低估计量的方差(不是采样分布的方差)直接等比缩短误差;对偶/控制变量/重要性采样都是在构造方差更小的无偏估计量。估计量的设计空间是开放的——这是 MC 研究的全部主题。
如何诊断收敛:均值轨迹图(肉眼平台)、多链对比(kp-025 MCMC 的 R̂ 指标)、误差条随 n 的 1/√n 缩放验证——kp-017 数值积分的"误差纪律"在随机版的移植。
图示
θ = E[f(X)] ≈ (1/n)Σf(Xᵢ) (LLN: 收敛)
误差 ≈ σ_f/√n (CLT: 定速) — 与维度无关!
积分→期望: ∫f = (b−a)·E[f(U)]
方差缩减: 对偶配对 | 控制变量 | 重要性采样(权 p/q)
MCMC: 相关样本, 看有效样本量 ESS
直观类比
蒙特卡洛像"撒豆测圆":在方框里均匀撒豆,数落在圆内的比例×方框面积=圆面积。豆子撒得越多(n↑)越准、每撒 4 倍精度翻倍(√n 律);豆子改成"偏撒圆边"再乘校正权重(重要性采样)——更少的豆达到同样的准。
实例或案例
- 金融期权定价:高维标的路径期望——网格法维度灾难下 MC 的统治区。
- 贝叶斯后验:MCMC 从后验采样后取均值/分位数(kp-022 的计算兑现)。
- 稀有事件:系统崩溃概率 10⁻⁹——朴素采样不可行,重要性采样把有效样本导向尾部。
常见误区
- 误区一:"误差 1/√n 所以多跑就行"。到 1e-6 精度需要 10¹² 样本——纯堆样本有天花板;方差缩减/解析结构才是出路。
- 误区二:"随机数=真随机"。伪随机数生成器是确定性序列(kp-032);种子可复现是特性也是偏差源(劣质 LCG 有格点伪影)。
- 误区三:"MCMC 样本当独立样本用"。相关样本的误差由 ESS 决定而非表面 n——有效样本量诊断必做(kp-025 混合检查)。
与其他知识点的关系
- kp-014/015:理论保证(LLN 收敛 + CLT 定速)。
- kp-022/025/027:贝叶斯后验、MCMC、采样方法的生态。
- kp-017:确定性数值积分的对照(低维用求积、高维用 MC 的分工)。
自测题
- MC 估计要从误差 0.01 降到 0.001:样本量怎么变?
答:×100(1/√n 律)。
- 为什么高维积分用 MC 而不是网格?
答:网格点数随维度指数爆炸;MC 误差率与维度无关——维度诅咒的免疫。
- 重要性采样的失效模式?
答:q 与 p 差太远 → 权重 p/q 方差爆炸(少数样本统治估计)——q 必须"覆盖" p 的重尾(kp-027)。
延伸阅读
- Robert & Casella《Monte Carlo Statistical Methods》(专著)。
- MacKay《Information Theory, Inference, and Learning Algorithms》第 29 章(MC/MCMC 免费章)。
- Kroese 等《Handbook of Monte Carlo Methods》。