LLM2020· NeurIPS 2020· CLASSIC

DDPM: Denoising Diffusion Probabilistic Models

Ho, Jain, Abbeel (Berkeley)

把扩散过程化简为预测噪声 ε,让 diffusion 训练像普通监督学习——开启 diffusion 时代。

arXiv:2006.11239
#diffusion#generative#foundational

核心贡献

  • 01Forward:q(x_t|x_0) = N(√ᾱ_t x_0, (1-ᾱ_t)I),可一步采样到任意 t
  • 02Reverse:训练 ε_θ(x_t,t) 预测加入的噪声,loss = ||ε - ε_θ||²
  • 031000 步线性 beta schedule + U-Net 架构是事实标配
  • 04FID 在 CIFAR-10 上 3.17、CelebA-HQ 上 3.6(当时 SOTA 接近 GAN)

扩散:把图像逐步加噪声直到变成纯 N(0,I);学一个网络逆转这个过程。原始 VLB 推导一堆 KL 项,DDPM 化简为预测每步加入的噪声 ε——loss = ||ε - ε_θ(x_t, t)||²,等价 reweighted ELBO。训练像普通监督,采样 1000 步一步步去噪。

面试视角

为什么预测 ε 而不是 x_0? 数学上等价(参数线性变换),但 ε 在所有 t 上方差一致,训练更稳。为什么需要 1000 步? 每步去一点噪保证 reverse 转移近似 Gaussian;步少了就要 DDIM/DPM-Solver 这类高阶 ODE 求解器。vs GAN? 训练稳、覆盖好(无 mode collapse)、可控(CFG);但慢。vs VAE? Diffusion 是多步 VAE,先验固定为 N(0,I);表达力强得多。ε-prediction vs v-prediction? v = α_t ε - σ_t x_0,在 high-noise 端更稳,Imagen Video / SD2 用。为什么必看? 所有现代图像/视频生成(SD、Sora、FLUX)都是 DDPM 的变体。

相关论文