在过去十年中,人工智能以能够从零生成逼真图像、音频和文本的深度生成模型令世界惊叹。我们见证了生成对抗网络 (GANs) 生成栩栩如生的人像,也看到了变分自编码器 (VAEs) 学习到丰富的潜在表示。但在 2020 年,一篇来自加州大学伯克利分校研究人员的论文 *Denoising Diffusion Probabilistic Models *(去噪扩散概率模型) 改变了这一领域的格局。
这项工作介绍了一类新的模型,其思想源于 2015 年首次探索的非平衡热力学。研究首次证明,这类模型能够生成极高质量的图像,足以媲美甚至在某些情况下超越最顶尖的 GANs。
这些模型现在被广泛称为**去噪扩散模型 **(DDPMs) ,其运作原理优美而直观:
- 从一张清晰的图像开始。
- 不断添加噪声逐步将其破坏。
- 通过一步步逆转加噪过程,学习如何重建原始图像。
这种“先蓄意破坏,再学习修复”的思路,被证明是捕捉真实世界数据中复杂统计规律的极其有效的方法。
图 1: 从 CelebA-HQ (左) 和无条件 CIFAR10 (右) 生成的高质量样本。
双向过程: 扩散模型的工作原理
扩散模型的核心由两个相反的过程组成:
- 前向过程: 系统地向图像中添加噪声。
- 反向过程: 学习去除噪声。
图 2: 前向 (加噪) 和反向 (去噪) 过程的马尔可夫链结构。
这两个过程都是马尔可夫链,每一步仅依赖于前一步的状态。
1. 前向过程 (扩散)
假设你有一张清晰的图像 \(\mathbf{x}_0\)。
前向过程 \(q\) 在 \(T\) 个时间步内逐步添加少量高斯噪声,得到 \(\mathbf{x}_1, \mathbf{x}_2, \ldots, \mathbf{x}_T\)。
每一步的转移定义为:
\[ q(\mathbf{x}_t|\mathbf{x}_{t-1}) \coloneqq \mathcal{N}\big(\mathbf{x}_t; \sqrt{1-\beta_t}\,\mathbf{x}_{t-1},\,\beta_t\,\mathbf{I}\big) \]其中:
- \(\beta_t\) 控制第 \(t\) 步的噪声水平。
- 均值是 \(\mathbf{x}_{t-1}\) 的缩放版本;方差是 \(\beta_t \mathbf{I}\)。
在最后一步 \(T\) (论文取 \(T = 1000\)) 时,图像几乎被完全抹去,变成纯高斯噪声。
优雅的捷径:
由于高斯分布组合性质良好,我们可以直接从 \(\mathbf{x}_0\) 跳到任意的 \(\mathbf{x}_t\),而无需模拟中间步骤:
这里 \(\alpha_t = 1 - \beta_t\),\(\bar{\alpha}_t = \prod_{s=1}^t \alpha_s\)。
这个特性使训练高效: 我们可以随机选一个时间步,一步采样到加噪后的图像。
2. 反向过程 (生成)
前向过程是固定的,反向过程 \(p_{\theta}\) 才是学习发生的地方——模型学习如何撤销加噪操作。
从 \(\mathbf{x}_T \sim \mathcal{N}(\mathbf{0}, \mathbf{I})\) 开始,反向过程迭代地预测在 \(\mathbf{x}_t\) 条件下噪声稍小的图像 \(\mathbf{x}_{t-1}\):
\[ p_{\theta}(\mathbf{x}_{t-1} | \mathbf{x}_t) := \mathcal{N}\big(\mathbf{x}_{t-1};\, \boldsymbol{\mu}_{\theta}(\mathbf{x}_t, t),\, \boldsymbol{\Sigma}_{\theta}(\mathbf{x}_t, t)\big) \]均值和方差由参数为 \(\theta\) 的神经网络预测。
使用变分推断进行训练
我们通过最大化数据对数似然来训练网络,使用**变分下界 (VLB) **(也称 ELBO) 。
该下界自然分解为不同时间步对应的项:
VLB 分为 \(L_T\)、一组针对 \(t>1\) 的去噪项 \(L_{t-1}\) 以及用于最终重建的 \(L_0\)。
各项解释:
- \(L_T\): 将最终噪声潜变量 \(\mathbf{x}_T\) 与标准高斯分布比较。前向过程固定,该项是常数,训练中忽略。
- \(L_{t-1}\): 模型预测的反向步骤与前向过程真实后验分布之间的 KL 散度,这是核心去噪目标。
- \(L_0\): 从 \(\mathbf{x}_1\) 解码出 \(\mathbf{x}_0\) 的重建项。
由于真实后验分布是高斯,这些 KL 散度有闭式解,训练稳定且高效。
是什么让 DDPM 如此出色?
早期扩散模型 (如 Sohl-Dickstein 等人,2015) 样本质量不高。DDPM 论文引入了关键设计选择和一个核心洞见,改变了游戏规则。
洞见: 预测噪声,而非均值
最直接方法是让网络预测 \(\tilde{\boldsymbol{\mu}}_t\),即前向过程后验分布的均值:
\[ L_{t-1} = \mathbb{E}_q \left[ \frac{1}{2\sigma_t^2} \|\tilde{\boldsymbol{\mu}}_t(\mathbf{x}_t, \mathbf{x}_0) - \boldsymbol{\mu}_\theta(\mathbf{x}_t, t)\|^2 \right] + C \]注意:
在前向过程中,
\(\mathbf{x}_t = \sqrt{\bar{\alpha}_t} \mathbf{x}_0 + \sqrt{1 - \bar{\alpha}_t} \boldsymbol{\epsilon}\)。
将 \(\mathbf{x}_0\) 用 \(\mathbf{x}_t\) 和 \(\boldsymbol{\epsilon}\) 表示,可发现预测 \(\tilde{\boldsymbol{\mu}}_t\)等价于预测噪声 \(\boldsymbol{\epsilon}\)。
因此作者将反向过程的均值重新参数化为:
此处网络 \(\boldsymbol{\epsilon}_{\theta}\) 预测在第 \(t\) 步添加的噪声。
简化损失函数
通过这种参数化,损失函数简化为真实噪声与预测噪声之间简单的加权均方误差 (MSE) :
但加权项会弱化噪声较大的时间步 (大 \(t\)) 的重要性。
实验表明,直接去掉加权项反而提升了样本质量。
最终的简化目标函数是:
简化的训练循环:
- 随机选择一张数据图像 \(\mathbf{x}_0\)。
- 随机选择时间步 \(t \in [1, T]\)。
- 采样高斯噪声 \(\boldsymbol{\epsilon}\)。
- 计算 \(\mathbf{x}_t = \sqrt{\bar{\alpha}_t} \mathbf{x}_0 + \sqrt{1 - \bar{\alpha}_t} \boldsymbol{\epsilon}\)。
- 将 \(\mathbf{x}_t\) 和 \(t\) 输入 U-Net 预测 \(\hat{\boldsymbol{\epsilon}}\)。
- 最小化 \(\boldsymbol{\epsilon}\) 与 \(\hat{\boldsymbol{\epsilon}}\) 的均方误差。
实验结果
作者在 CIFAR10、CelebA-HQ 和 LSUN 数据集上评估了 DDPM。
表 1: CIFAR10 分数。DDPM 取得了最先进的 FID (3.17) 和有竞争力的 Inception Score (9.46)。
FID (Fréchet Inception Distance,越低越好) 和 IS (Inception Score,越高越好) 指标证明了 DDPM 的顶级保真度。
在高分辨率数据上:
图 3: LSUN Church 样本。FID = 7.89。
图 4: LSUN Bedroom 样本。FID = 4.90。
消融研究: 为何 \(L_{\text{simple}}\) 如此重要
使用简化损失预测 \(\epsilon\) 的方法优于所有其他方案。
采用完整变分下界直接预测均值的基线方法明显较差。
率–失真分析: 好图像,似然度一般?
尽管 DDPM 生成的图像惊艳,但其对数似然落后于其他基于似然的模型。
作者认为 DDPM 像一个优秀的有损压缩器: 大部分比特用于建模感知上重要的大尺度特征,少量比特用于难以察觉的细节。
渐进式解码:
在反向过程的任意一步 \(t\),可估计:
图 5: 失真-码率关系——大部分可感知结构在低码率时即已重建。
可视化: 渐进式生成
反向过程中,大尺度结构先于精细细节出现:
图 6: DDPM 的生成过程。先出现粗略轮廓,再生成清晰细节。
结论与影响
Denoising Diffusion Probabilistic Models 论文是生成建模领域的一个转折点:
- 稳定训练下实现了顶级生成质量——媲美顶尖 GANs 且无其训练不稳定问题。
- 噪声预测 (\(\epsilon\) 参数化) 和简化损失函数是解锁高质量的关键。
- 渐进式生成揭示了其与去噪分数匹配、朗之万动力学和有损压缩的深层联系。
这些思想奠定了现代扩散模型的基础,并被应用于 Stable Diffusion、DALL·E 2 等系统,且扩展到图像以外的音频、视频和多模态生成。
通过展示逆转噪声如何实现高保真生成,这项工作不仅推出了新模型——还启发了我们看待创造本身的新角度。