Score-Based Generative Modeling through SDEs:扩散模型的统一数学理论


一、从 ODE 到 SDE:引入随机性的必然性

1.1 确定性的局限

在 Neural ODE / CNF 中,变换是完全确定性的:

然而,真实的扩散过程(如物理中的布朗运动、热传导)本质上具有随机性。扩散模型的前向过程也是随机的——每一步都注入独立的高斯噪声。

为了统一确定性 ODE 和随机扩散过程,我们需要将常微分方程(ODE)扩展为随机微分方程(SDE)。

1.2 维纳过程与布朗运动

维纳过程 (也称布朗运动)是 SDE 理论的基础:

定义: 是一个连续时间随机过程,满足:

  1. (几乎处处)
  2. 独立增量:
  3. 路径连续但处处不可导

物理直觉:维纳过程描述了粒子受到大量微小随机碰撞后的位移累积。每一步的位移服从均值 0、方差为时间间隔的高斯分布。


二、前向 SDE(Forward Process)

2.1 形式化定义

设前向过程满足 Itô SDE:

其中:

  • 是维纳过程(标准布朗运动)
  • 是漂移系数(drift coefficient)
  • 是扩散系数(diffusion coefficient)

2.2 标准前向 SDE(DDPM 类)

DDPM 前向过程对应的 SDE(Variance Preserving, VP-SDE):

其中 是噪声调度函数。此为**方差保持(VP)**类 SDE, 始终保持单位方差附近的扰动。

补充:另有**方差爆炸(Variance Exploding, VE-SDE)**形式:,其方差随时间增长,适用于需要极端多尺度噪声的场景。两者统称主流 SDE 框架。

对应的离散化形式(Euler-Maruyama 方法):

验证(重参数化推导):DDPM 离散加噪 可写为: 其中 。

连续化时令 ,对 做 Taylor 展开(): 这正是 Euler-Maruyama 离散形式 (),故连续 SDE 欧拉离散与 DDPM 加噪公式等价。

2.3 SDE 的解:Fokker-Planck 方程

SDE 的解 不再是确定性轨迹,而是一个随机过程。其概率分布由 Fokker-Planck 方程(也称 Kolmogorov 前进方程)描述:

物理意义:第一项是漂移项贡献的分布变化(类似流体力学中的对流项),第二项是扩散项贡献的散布(类似热传导的扩散项)。


三、反向时间 SDE:反向生成的数学推导

3.1 核心定理

定理:对于任意前向 Itô SDE:

对应的反向时间 SDE 为:

其中:

  • 是反向时间的维纳过程
  • 是 score function(对数概率密度的梯度)
  • 是 “逆风”项,抵消前向扩散的效应

3.2 推导要点

设前向过程从 演化到 。我们需要找到一个反向过程,从 回到 。

由贝叶斯定理,在反向时间:

对 求导并利用前向 SDE 的 Fokker-Planck 方程,可以推导出反向 SDE 的形式。

物理直觉:score function 指向概率密度增长最快的方向。前向 SDE 添加噪声(增加熵),反向 SDE 需要减去熵(沿 score 方向去噪)。

3.3 Score Function 的直观理解

Score Function: 是对数概率密度关于 的梯度。

直观理解:

  • 考虑一个概率密度 ,在 处取对数:
  • 梯度 指向 增长最快的方向
  • 这就像是一个”力”,推动 向高概率区域移动

在扩散模型中的意义:

  • 前向过程:向数据添加噪声, 变得越来越平坦
  • 反向过程:需要沿着 的方向去噪,逐步恢复数据结构

四、Probability Flow ODE:确定性等价

4.1 核心发现

关键发现:对于任意 SDE,存在一个等价的确定性 ODE,它产生相同的边际分布 。

Probability Flow ODE(Song et al., 2021):

核心物理内涵:概率流 ODE 是所有随机 SDE 轨迹的均值确定性流——它在每点 给出的是随机前向轨迹的条件期望,而非单条 SDE 轨迹的真实演化。仅保证边际分布 与 SDE 一致,单条轨迹与 SDE 轨迹存在差异。

4.2 与 Reverse-Time SDE 的对比

特性Reverse-Time SDEProbability Flow ODE
类型随机(包含 项)确定性(无随机项)
采样需要 SDE 求解器可用 ODE 求解器
边际分布(相同)
数值稳定性较低(有噪声)较高(确定性)

为什么它们等价?

两者对应的 Fokker-Planck 方程给出相同的解 。概率流 ODE 通过将随机项替换为”drift correction”项来消除随机性。

4.3 与 DDPM 的联系

对于 DDPM 风格的 SDE :

Probability Flow ODE 为:

DDPM 反向过程(连续时间极限):

两者在形式上是一致的!区别仅在于概率流 ODE 去掉了随机项 。


五、Score Matching:训练目标的推导

5.1 三种等价的 Score Matching 训练目标

5.1.1 直接得分匹配(Direct Score Matching)

其中 是网络预测的 score function。

缺点(致命问题):必须获取真实 ,实际中无法直接得到——这是 DSM 无法实用的根本原因。去噪得分匹配(DSM-Denoise)正是为规避此问题而诞生。 优点:无实际意义,DSM 无法在现实场景中使用。

5.1.2 切片得分匹配(Slice Score Matching)

核心思想:利用随机投影矩阵 (列向量独立同分布 ),通过 估计 score 的方向,规避显式计算 的二阶导数(散度项)。

设 为随机向量,构造估计量:

实际实现时通过下式估计 score:

(详细推导见 Song et al., 2019)

5.1.3 去噪得分匹配(Denoising Score Matching)

核心思想:不去直接估计 score,而是在加噪后的数据上做条件期望。

对于加噪过程 :

物理含义:

  • 是注入的噪声
  • 应该预测 (因为 )

5.2 损失权重的设计

实践中常使用加权损失:

常用调度:

  • (均匀权重)
  • (与信噪比成反比)
  • (更高阶)

六、采样过程

6.1 三种采样范式

给定训练好的 score network ,我们有三种采样方法:

6.1.1 Reverse-Time SDE 采样

使用数值 SDE 求解器(如 Euler-Maruyama)沿反向时间求解。

Algorithm: SDE Sampling

x_T ~ p_T (纯噪声)
for t = T, T-Δ, ..., 0:
    x_{t-Δ} = x_t - [f_t(x_t) - g_t g_t^T s_θ(x_t,t)] Δ + g_t √Δ · z
    其中 z ~ N(0,I)

6.1.2 Probability Flow ODE 采样

使用确定性 ODE 求解器(可使用更少步数)。

Algorithm: ODE Sampling

x_T ~ p_T (纯噪声)
for t = T, T-Δ, ..., 0:
    x_{t-Δ} = x_t - [f_t(x_t) - ½ g_t g_t^T s_θ(x_t,t)] Δ

6.1.3 Predictor-Corrector 方法

结合两者:先用 ODE predictor 预测,再用 SDE corrector 校正。

Algorithm: PC Sampling

x_T ~ p_T
for t = T, T-Δ, ..., 0:
    x_pred = x_t - [f_t - ½ g g^T s_θ] Δ  # Predictor
    x_{t-Δ} = x_pred + g √Δ · z          # Corrector (Langevin, 步长 g√Δ)

6.2 采样步数的权衡

方法典型步数质量速度
SDE Sampling1000-10000最高慢
ODE Sampling50-500高中
PC Sampling50-500最高中

概率流 ODE 因为没有随机性,可以使用更激进的步长(更大的 ),从而在更少步数内达到满意的质量。


七、数学推导速查

7.1 核心公式

前向 SDE:

反向时间 SDE:

Probability Flow ODE:

Score Function(DDPM 情形):

其中 是注入的噪声,。

7.2 维度与复杂度

操作复杂度备注
Score 网络前向与网络计算量相同
Score 网络反向一次反向传播
SDE 采样( 步)每步需计算 score
ODE 采样( 步)确定性,无随机开销

八、训练中的潜在问题

8.1 Score 估计的方差问题

问题:当 (低噪声水平)时,score function 的幅度很大,估计方差较高。

原因:低噪声时,数据分布支撑集较小,密度梯度变化剧烈。

解决方案:

  • 使用加权损失 降低 时的权重
  • 采用截断技巧(truncated score)
  • 使用混合损失(结合去噪目标)

8.2 时间 embedding 的重要性

问题:Score network 需要同时处理空间输入 和时间 。

常见方法:

  • Sinusoidal embedding(原始 DDPM)
  • Gaussian Fourier embedding
  • Time MLP / Attention

8.3 数值稳定性

问题:长时间积分可能累积数值误差。

解决方案:

  • 使用自适应求解器
  • 对极端 值使用更小步长
  • 监控能量守恒等不变量

九、与其他模型的关系

9.1 与 DDPM 的关系

特性DDPMScore SDE
数学框架变分推断 + ELBOScore Matching + SDE
前向过程离散马尔可夫链连续 SDE
反向过程离散条件分布连续 SDE/ODE
训练目标噪声预测 Score function
采样多步离散可连续(ODE)

数学等价性:

  • DDPM 的噪声预测目标 与 score function 的关系:
  • 当 时,两者的损失函数等价

9.2 与 Flow Matching 的关系

Score SDE 和 Flow Matching 提供了两种互补的视角:

视角Score SDEFlow Matching
核心量(score)(速度场)
物理类比力场(指向密度增长方向)速度场(描述运动)
训练目标Score Matching向量场回归
统一关系(仅在概率流 ODE 场景下成立,非 Score-SDE 与 Flow Matching 的通用统一公式)

十、总结

Score-Based SDE 框架将扩散模型的前向和反向过程统一到随机微分方程的理论体系中:

  1. 前向 SDE:将加噪过程建模为 Itô SDE,描述数据如何逐渐被噪声污染
  2. 反向时间 SDE:严格推导了从噪声恢复到数据所需的随机微分方程
  3. Probability Flow ODE:给出了一个确定性的等价 ODE,可以更高效地采样
  4. Score Matching:提供了训练 score network 的三种等价目标

这一理论框架的核心价值在于:

  • 统一性:将 DDPM、NF、VAE 等多种生成模型纳入同一框架
  • 灵活性:可以根据精度和速度需求选择不同的采样方法
  • 可扩展性:容易引入新的 SDE 形式(如 sub-VP、VESDE 等)

延伸阅读:

  1. Song et al., “Score-Based Generative Modeling through Stochastic Differential Equations” (ICLR 2021)
  2. Song et al., “Maximum Likelihood Training of Score-Based Diffusion Models” (NeurIPS 2021)
  3. Huang et al., “Stochastic Interpolants: A Unifying Framework for Flow and Diffusion Models” (ICLR 2024)