第2章:概率论与随机过程基础
2.3 随机微分方程(SDEs)与朗之万动力学
2.3.1 随机微分方程的基本概念
随机微分方程(Stochastic Differential Equations, SDEs)是包含随机项的微分方程,用于描述受随机噪声影响的动态系统。其一般形式为:
其中:
- 是随机过程
- 是漂移项(drift term)
- 是扩散项(diffusion term)
- 是维纳过程(标准布朗运动)
2.3.2 伊藤积分与伊藤引理
由于布朗运动的路径处处不可微,传统微积分不适用。伊藤积分提供了处理SDEs的数学框架:
伊藤积分:
伊藤引理(一维情况): 对于随机过程 满足 ,若 是二次可微函数,则:
2.3.3 朗之万动力学
朗之万方程是物理学中描述粒子在势场中受随机力作用的SDE:
其中:
- 是势能函数
- 是摩擦系数
- 是热噪声
在扩散模型中,逆向过程常被建模为朗之万动力学:
2.3.4 与扩散模型的关系
扩散模型的前向过程可以表示为SDE:
逆向过程对应的时间反转SDE:
其中 就是分数函数(score function),通过分数匹配学习得到。
案例研究:图像去噪中的朗之万动力学
import torch
import numpy as np
def langevin_dynamics(score_fn, initial_noise, steps=1000, step_size=0.01):
"""
朗之万动力学采样过程
:param score_fn: 训练好的分数函数
:param initial_noise: 初始噪声样本
:param steps: 迭代步数
:param step_size: 步长
:return: 生成的样本
"""
x = initial_noise.clone()
for _ in range(steps):
noise = torch.randn_like(x) * np.sqrt(2 * step_size)
score = score_fn(x)
x = x + step_size * score + noise
return x
关键图示(概念示意图)
[前向扩散过程] [逆向生成过程]
清晰图像 ────> 噪声图像 (SDE)
x_0 ────> x_T dx = f(x,t)dt + g(t)dW
噪声图像 ────> 清晰图像 (逆向SDE)
x_T ────> x_0 dx = [f(x,t)-g(t)²∇logp]dt + g(t)dW̅
延伸阅读
- 高阶数值解法:Euler-Maruyama方法、Milstein方法
- Fokker-Planck方程与稳态分布
- 不同噪声调度(noise schedule)对SDE的影响
- 基于SDE的统一框架(Score SDE, Probability Flow ODE)
