文章目录
- 一、直觉理解:
- 二、连续形式(SDE 视角)
- 三、为什么它能「采样」?
- 四、离散形式(算法角度)
- 五、和机器学习的对应关系
- 5.1 Langevin MCMC
- 5.2 SGLD(Stochastic Gradient Langevin Dynamics)
- 六、和 Diffusion Model 的关系
- 6.1 反向扩散 = Langevin-like dynamics
- 5.2 Score matching = 学梯度
- 七、和 Tweedie Estimator[^1] 的桥梁
- 八、总结
- 参考
一、直觉理解:
Langevin dynamics =「有噪声的梯度下降」
想象一个小球在能量地形U ( x U(xU(x) 上滚动:
梯度项:
小球会沿着「能量下降最快的方向」滚
⇒ \Rightarrow⇒普通梯度下降随机噪声项:
环境温度导致的小抖动
⇒ \Rightarrow⇒帮助跳出局部极小值
👉 所以:
Langevin dynamics = 梯度下降 + 随机热噪声
朗之万动力学通过两个关键力的博弈实现系统调控:摩擦力像水中的阻力让粒子减速,随机力模拟分子碰撞带来的无规则扰动。当这两种力达到平衡时,系统会自然趋向玻尔兹曼分布——这正是复杂概率采样的物理基础。
二、连续形式(SDE 视角)
标准的过阻尼 Langevin SDE:
d x t = − ∇ U ( x t ) d t + 2 T d W t \boxed{ \mathrm{d}x_t = - \nabla U(x_t)\mathrm{d}t + \sqrt{2T}\mathrm{d}W_t }dxt=−∇U(xt)dt+2TdWt
各项含义
| 项 | 含义 |
|---|---|
| x t x_txt | 系统状态(参数、样本、粒子位置) |
| U ( x U(xU(x) | 势能函数(能量) |
| − ∇ U ( x -\nabla U(x−∇U(x) | 确定性“往低能走” |
| W t W_tWt | Wiener 过程(布朗运动) |
| T TT | 温度(噪声强度) |
三、为什么它能「采样」?
这是Langevin dynamics 的核心魔法。
如果你让上面的 SDE 跑足够久,它的稳态分布是:
p ( x ) ∝ e − U ( x ) / T \boxed{ p(x) \propto e^{-U(x)/T} }p(x)∝e−U(x)/T
这就是Boltzmann 分布。
换句话说
- 你不需要知道如何直接采样p ( x p(xp(x)
- 只要能算∇ U ( x \nabla U(x∇U(x)
- 就可以用 Langevin dynamics 从p ( x p(xp(x) 中采样
四、离散形式(算法角度)
Euler–Maruyama 离散化:
x k + 1 = x k + η ∇ U ( x k ) − 2 T η ϵ k , ϵ k ∼ N ( 0 , I ) \boxed{ x_{k+1} = x_k + \eta \nabla U(x_k) - \sqrt{2T\eta}\epsilon_k, \quad \epsilon_k \sim \mathcal{N}(0,I) }xk+1=xk+η∇U(xk)−2Tηϵk,ϵk∼N(0,I)
这看起来是不是非常眼熟?
👉SGD + Gaussian noise
五、和机器学习的对应关系
5.1 Langevin MCMC
令:
U ( x ) = − log p ( x ) U(x) = - \log p(x)U(x)=−logp(x)
则更新变成:
x k + 1 = x k + η ∇ log p ( x k ) − 2 η ϵ k x_{k+1} = x_k + \eta \nabla \log p(x_k) - \sqrt{2\eta}\epsilon_kxk+1=xk+η∇logp(xk)−2ηϵk
👉用梯度信息做 MCMC
5.2 SGLD(Stochastic Gradient Langevin Dynamics)
在大数据场景中:
- 用 mini-batch 估计∇ log p ( x \nabla \log p(x∇logp(x)
- 噪声天然存在
👉 SGD ≈退化版 Langevin dynamics
六、和 Diffusion Model 的关系
6.1 反向扩散 = Langevin-like dynamics
扩散模型的反向 SDE:
d x = [ f ( x , t ) − g ( t ) 2 ∇ x log p t ( x ) ] d t + g ( t ) d W ˉ t \mathrm{d}x = \big[ f(x,t) - g(t)^2 \nabla_x \log p_t(x) \big] \mathrm{d}t + g(t)\mathrm{d}\bar W_tdx=[f(x,t)−g(t)2∇xlogpt(x)]dt+g(t)dWˉt
其中:
- ∇ x log p t ( x \nabla_x \log p_t(x∇xlogpt(x):score
- 噪声 + score 驱动采样
👉 本质上是时间变化版 Langevin dynamics
5.2 Score matching = 学梯度
- Langevin dynamics:已知∇ log p ( x \nabla \log p(x∇logp(x)→ 采样
- Diffusion model:先学 score→ 再用 Langevin/SDE 采样
七、和 Tweedie Estimator1的桥梁
在高斯噪声下:
E [ x 0 ∣ x t ] = x t + σ t 2 ∇ log p t ( x t ) \boxed{ \mathbb{E}[x_0 \mid x_t] = x_t + \sigma_t^2 \nabla \log p_t(x_t) }E[x0∣xt]=xt+σt2∇logpt(xt)
这意味着:
- score = denoising direction
- Langevin 的 drift 项 ≈一步去噪
👉 反向扩散 =连续去噪版 Langevin dynamics
八、总结
Langevin dynamics 是:
- 数学上:一个带噪声的 SDE
- 算法上:加噪声的梯度下降
- 统计上:一种 MCMC 采样方法
- Diffusion 中:反向过程的原型
参考
- 怎么理解随机微分方程SDE
一文解释 经验贝叶斯估计, Tweedie’s formula ↩︎