附录A:测度论与随机过程速成
本附录为理解第5章(连续时间扩散模型)提供必要的数学基础。我们将快速回顾测度论的核心概念,介绍布朗运动和随机微分方程(SDE)的基本知识。这不是一门完整的数学课程,而是为理解扩散模型所需的最小知识集,旨在建立直觉并熟悉核心工具。
A.1 测度论基础
A.1.1 为什么需要测度论?
让我们从一个简单但深刻的问题开始:在区间[0,1]上随机选一个点,这个点恰好是有理数的概率是多少?
直觉可能会说:“有理数有无穷多个,所以概率应该不为零。”但实际上,这个概率是0。这个反直觉的结果揭示了我们需要一个比传统集合论更精细的数学框架来处理“无穷”。测度论正是为此而生,它严格定义了“长度”、“面积”、“体积”乃至“概率”等概念。
A.1.2 σ-代数与测度
- σ-代数 (σ-algebra): 在一个样本空间
Ω
中,并非所有子集都能被合理地赋予概率。σ-代数F
是Ω
的一个子集族,它包含了我们所有感兴趣的“事件”,并对补、可数并等运算封闭。 - 测度 (Measure): 测度
μ
是一个定义在σ-代数F
上的函数,它为每个事件赋予一个非负的“大小”。当μ(Ω) = 1
时,这个测度就是一个概率测度P
。
定义 A.1 (概率空间) 一个概率空间是一个三元组
(Ω, F, P)
,其中:
Ω
是样本空间(所有可能结果的集合)。F
是Ω
上的一个σ-代数(所有可测事件的集合)。P
是定义在F
上的一个概率测度。
💡 关键洞察:有理数集的勒贝格测度(长度)为0,是因为虽然有理数是可数无穷的,但每个单点的测度都是0。根据测度的可数可加性,可数个0相加仍然是0。
A.1.3 随机变量与条件期望
- 随机变量 (Random Variable): 一个随机变量
X
是一个从样本空间Ω
到实数R
的函数,它必须是“可测的”,即对于任何数值区间,我们都能找到其在样本空间中对应的事件。 - 滤波 (Filtration): 滤波
{F_t}
是一个随时间t
递增的σ-代数序列,F_s ⊆ F_t
对所有s ≤ t
成立。它代表了信息的累积过程,F_t
包含了到时刻t
为止所有已知的信息。 - 条件期望 (Conditional Expectation):
E[X | F_t]
代表在已知时刻t
信息F_t
的情况下,对随机变量X
的最优估计。
**练习 A.1:σ-代数**
设 Ω = {1, 2, 3, 4}
。
- 构造包含事件
A = {1, 2}
的最小σ-代数σ(A)
。 - 如果再加入事件
B = {2, 3}
,最小σ-代数σ(A, B)
是什么?
解答:
σ(A)
必须对补运算封闭,所以必须包含A^c = {3, 4}
。同时必须包含全集和空集。因此σ(A) = {∅, {1, 2}, {3, 4}, {1, 2, 3, 4}}
。σ(A, B)
必须包含A
和B
,以及它们的所有交、并、补运算的组合。例如A ∩ B = {2}
,A ∪ B = {1, 2, 3}
,(A ∪ B)^c = {4}
等。最终可以生成Ω
的幂集(所有16个子集)。
A.2 布朗运动 (Brownian Motion)
布朗运动是随机过程理论的基石,也是扩散模型的数学核心。
定义 A.2 (标准布朗运动) 一个随机过程
{B_t}
称为标准布朗运动(或维纳过程),如果:
- 起点确定:
B_0 = 0
。- 独立增量: 对任意
0 ≤ s < t
,增量B_t - B_s
独立于过去的路径{B_u : u ≤ s}
。- 高斯增量:
B_t - B_s
服从均值为0,方差为t-s
的正态分布,即B_t - B_s ~ N(0, t-s)
。- 路径连续: 路径
t ↦ B_t
是连续函数。
布朗运动的深刻性质:
- 无处可微: 布朗运动的路径虽然连续,但在任何一点都是不可微的。它的“速度”是无穷的。
- 二次变差非零: 在普通微积分中
(dt)^2 = 0
,但在随机微积分中,(dB_t)^2 = dt
。这是两者最核心的区别,也是伊藤公式中出现修正项的根源。 - 鞅 (Martingale): 布朗运动是一个鞅,即
E[B_t | F_s] = B_s
fors < t
。这意味着对未来的最优预测就是当前的值。
A.3 随机积分与伊藤公式
由于布朗运动的奇异性质,传统的黎曼积分不适用。我们需要一种新的积分理论——随机积分。
A.3.1 伊藤积分 (Itô Integral)
伊藤积分 ∫f_s dB_s
的定义在黎曼和中,总是取被积函数在区间的左端点的值。这个选择保证了被积函数 f_s
不会“预见”到噪声 dB_s
的未来,从而使得积分结果仍然是一个鞅。
⚡ 理论要点:伊藤积分和另一种常见的斯特拉托诺维奇(Stratonovich)积分(取中点)会导致不同的结果。物理学中常用后者,因为它遵循普通的链式法则。金融和概率论中常用前者,因为它具有鞅性质。扩散模型理论建立在伊藤积分之上。
A.3.2 伊藤公式 (Itô's Formula)
伊藤公式是随机微积分的链式法则,是处理SDE最重要的工具。
定理 A.3 (伊藤公式) 设
X_t
满足SDEdX_t = μ_t dt + σ_t dB_t
,f(x, t)
是一个足够光滑的函数,则:
$$df(X_t, t) = \left(\frac{\partial f}{\partial t} + \mu_t \frac{\partial f}{\partial x} + \frac{1}{2}\sigma_t^2 \frac{\partial^2 f}{\partial x^2}\right)dt + \sigma_t \frac{\partial f}{\partial x} dB_t$$
核心区别在于比普通链式法则多出的一项:
1/2 * σ_t^2 * ∂^2f/∂x^2
,这被称为伊藤修正项,它正是来源于(dB_t)^2 = dt
。
**练习 A.2:伊藤公式的应用**
- 推导:设
B_t
是标准布朗运动,使用伊藤公式计算d(B_t^3)
。 - 证明:证明
M_t = exp(B_t - t/2)
是一个鞅。 - 研究思路:
- 问题1:对
f(x) = x^3
应用伊藤公式,其中μ_t=0, σ_t=1
。df = (1/2 * 1^2 * 6B_t)dt + (3B_t^2 * 1)dB_t = 3B_t dt + 3B_t^2 dB_t
。 - 问题2:对
f(x,t) = exp(x - t/2)
应用伊藤公式。df = (-1/2 * f)dt + (0)dt + (1/2 * 1^2 * f)dt + (f * 1)dB_t = f dB_t
。由于结果的dt
项(漂移项)为0,所以它是一个鞅。
- 问题1:对
A.4 随机微分方程 (SDEs)
SDE描述了受随机扰动影响的动态系统,是扩散模型的数学语言。
定义 A.4 (SDE) 一个典型的SDE具有形式:
$$dX_t = b(X_t, t)dt + \sigma(X_t, t)dB_t$$
- 漂移项
b(X_t, t)
: 描述系统的确定性平均行为。- 扩散项
σ(X_t, t)
: 描述随机波动的强度。
存在唯一性:如果漂移和扩散系数满足Lipschitz连续性和线性增长条件,那么SDE存在唯一的强解。这保证了我们讨论的扩散过程是良定义的。
A.5 数值方法简介
大多数SDE没有解析解,需要数值方法来模拟。
-
Euler-Maruyama方法: 最简单的数值格式,直接将SDE离散化:
X_{n+1} = X_n + b(X_n)Δt + σ(X_n) * sqrt(Δt) * Z_n
,其中Z_n ~ N(0, 1)
。 -
Milstein方法: 更高阶的方法,通过加入一个修正项来获得更高的收敛精度,特别是当扩散系数
σ
不为常数时。
💡 实践洞察:数值模拟显示,对于扩散系数依赖于状态 X_t
的SDE(例如金融中的一些模型),Milstein方法比Euler-Maruyama方法能更精确地收敛到真实解。对于扩散模型中常见的 σ
只依赖于时间 t
的情况,两种方法的差别不大。
A.6 与扩散模型的深层联系
现在,我们可以将这些数学工具与扩散模型联系起来。
A.6.1 前向与反向SDE
-
前向SDE: 精心设计的、将数据
x_0
转化为噪声x_T
的过程。例如VP-SDE:dx = -1/2 * β(t) * x dt + sqrt(β(t)) * dB_t
-
反向SDE: Anderson定理告诉我们,存在一个对应的反向过程,其漂移项必须由分数函数
∇log p_t(x)
来修正:dx = [f(x, t) - g(t)^2 * ∇log p_t(x)] dt + g(t) d(bar(W)_t)
这揭示了学习生成模型等价于学习分数函数。
A.6.2 概率流ODE
-
每个SDE都对应一个确定性的ODE,称为概率流ODE,它描述了概率密度的平均流动方向:
dx = [f(x, t) - 1/2 * g(t)^2 * ∇log p_t(x)] dt
-
由于没有随机项,可以使用高效的ODE数值求解器进行快速、确定性的采样。这是DDIM等快速采样算法的理论基础。
A.6.3 Fokker-Planck方程
- 这是一个偏微分方程(PDE),它从宏观上描述了概率密度
p(x, t)
随时间的演化。 - 它将微观的粒子运动(SDE)与宏观的密度变化(PDE)联系起来,是进行理论分析的强大工具。
**综合练习:统一视角**
考虑一个简单的一维Ornstein-Uhlenbeck过程:dX_t = -θX_t dt + σdB_t
。
- 稳态分布:使用Fokker-Planck方程,证明其稳态分布为
N(0, σ^2/(2θ))
。 - 分数函数:写出其稳态分布的分数函数。
- 反向SDE:写出在稳态下的反向SDE。
- 概率流ODE:写出在稳态下的概率流ODE。
解答思路:
- 在Fokker-Planck方程中令
∂p/∂t = 0
,得到一个关于p(x)
的常微分方程,求解可得高斯分布。 - 对于高斯分布
N(μ, Σ^2)
,分数函数为-(x-μ)/Σ^2
。 - 将分数函数代入Anderson定理的公式。
- 将分数函数代入概率流ODE的公式。你会发现,在稳态下,ODE的漂移项恰好是前向SDE漂移项的两倍。
A.7 进一步学习资源
- Øksendal, B. "Stochastic Differential Equations": SDE的经典入门教材,理论与应用并重。
- Evans, L.C. "An Introduction to Stochastic Differential Equations": 更侧重于PDE方法的SDE介绍,适合数学背景较强的读者。
- Särkkä, S., & Solin, A. "Applied Stochastic Differential Equations": 侧重于数值方法和实际应用的优秀书籍。