ML Revisit: Diffusion


2026-09-03

Flow and Diffusion Models

参考:(Holderrieth & Erives, 2026)

Flow models:

\[ X_0 \sim p_{\text{init}}, \quad\mathrm{d}X_t=u_t^\theta(X_t)\mathrm{d}t \]

Diffusion Models 其实就是加入了随即运动,将其变成了 SDE:

\[ X_0 \sim p_{\text{init}}, \quad \mathrm{d}X_t = u_t^{\theta}(X_t)\mathrm{d}t+\sigma_t \mathrm{d}W_t \]

其中 \(W_t\) 是 Brownian motion(或者叫 Wiener process):

\[ W_0 = 0, \quad W_{t+h} = W_t + \sqrt{h}\epsilon_t, \quad \epsilon_t\sim \mathcal{N}(0, I) \]

训练的时候,我们从数据中抽取 \(z\),大部分时候我们假设模型算出来的 \(p_t(\cdot\mid z)\) 满足某种分布,一般情况下我们会认为是 \(\mathcal{N}(\alpha_t z, \beta_t^2I)\)。这时候我们希望

\[ \left<\alpha_0, \beta_0\right> = \left<0, 1\right>,\quad\left<\alpha_1, \beta_1\right> = \left<1, 0\right> \]

也就是从正态分布收敛到一个点 \(\delta_z\)(大概就是 \(\cal{N}(z, 0)\),用 Dirac delta function 定义)。

Reinforcement Learning

References

Holderrieth, P., & Erives, E. (2026). Introduction to Flow Matching and Diffusion Models. diffusion.csail.mit.edu

Cite this post

@misc{pu2026mlrevisitdiffusion,
  author = {Pu, Fanyi},
  title  = {ML Revisit: Diffusion},
  year   = {2026},
  month  = {9},
  url    = {https://pufanyi.com/blog/ml-revisit-diffusion}
}