引言
扩散模型(Diffusion Models)作为生成式人工智能的核心技术,正在彻底改变我们创建和理解数字内容的方式。从OpenAI的DALL-E 2到Stability AI的Stable Diffusion,从Runway的视频生成到Sora的长视频合成,扩散模型已经从学术走向产业,成为AIGC(AI Generated Content)时代最重要的基础设施之一。
与生成对抗网络(GAN)和变分自编码器(VAE)不同,扩散模型通过模拟物理扩散过程,实现了更稳定、更多样化、更可扩展的生成能力。本文将从数学原理出发,深入剖析扩散模型的核心机制,并探讨其最新工程进展与前沿方向。
1. 数学基础:从热力学到随机过程
1.1 扩散过程的热力学直觉
扩散模型的灵感来自非平衡热力学中的扩散现象。想象一滴墨水在清水中缓缓散开——这是熵增原理的宏观表现,系统从有序(墨水滴)趋向无序(均匀混合)。扩散模型将这个过程逆向运用:学习如何将无序的噪声恢复为有序的数据分布。
1.2 前向扩散过程(Forward Process)
前向扩散过程是一个固定的马尔可夫链,逐步向数据中添加高斯噪声。定义数据分布为 (\mathbf{x}_0)$,在 $ 步内逐渐将数据转化为纯噪声:
q(\mathbf{x}_t | \mathbf{x}_{t-1}) = \mathcal{N}(\mathbf{x}_t; \sqrt{1-\beta_t}\mathbf{x}_{t-1}, \beta_t\mathbf{I})
其中 $\beta_t$ 是噪声调度(noise schedule),通常设置为线性增长或余弦调度。通过重参数化技巧,可以直接从 $\mathbf{x}_0$ 采样任意时刻 $ 的噪声版本:
q(\mathbf{x}_t | \mathbf{x}_0) = \mathcal{N}(\mathbf{x}_t; \sqrt{\bar{\alpha}_t}\mathbf{x}_0, (1-\bar{\alpha}_t)\mathbf{I})
其中 $\alpha_t = 1 - \beta_t$,$\bar{\alpha}_t = \prod_{s=1}^{t}\alpha_s$。当 $ 足够大时,$\mathbf{x}_T$ 近似服从标准正态分布。
1.3 逆向过程(Reverse Process)
扩散模型的核心任务是学习逆向过程——从纯噪声中恢复数据。这个逆向过程同样是马尔可夫链,但需要神经网络来参数化转移概率:
p_\theta(\mathbf{x}_{t-1} | \mathbf{x}_t) = \mathcal{N}(\mathbf{x}_{t-1}; \mu_\theta(\mathbf{x}_t, t), \Sigma_\theta(\mathbf{x}_t, t))
训练目标是最大化数据的变分下界(VLB),等价于最小化噪声预测损失:
\mathcal{L}_{\text{simple}} = \mathbb{E}_{\mathbf{x}_0, \epsilon, t}\left[\|\epsilon - \epsilon_\theta(\mathbf{x}_t, t)\|^2\right]
2. DDPM 到 Score Matching:理论统一
2.1 DDPM 的原始框架
Denoising Diffusion Probabilistic Models (DDPM, Ho et al. 2020) 是扩散模型的里程碑工作。它采用 U-Net 架构预测噪声,并通过固定的方差逆向采样。DDPM 的核心洞见在于:与其直接预测均值,不如预测添加到数据中的噪声——这等价于估计数据分布的梯度。
2.2 Score Matching 的等价视角
Song & Ermon (2019) 提出的 Score-based Generative Models 揭示了扩散模型与 score matching 的深层联系。数据分布的分数函数(score function)定义为:
\nabla_{\mathbf{x}} \log p(\mathbf{x})
这指向数据密度增长最快的方向。通过 Langevin 动力学:
\mathbf{x}_{t+1} = \mathbf{x}_t + \frac{\delta}{2}\nabla_{\mathbf{x}}\log p(\mathbf{x}_t) + \sqrt{\delta}\mathbf{z}_t
可以从任意噪声分布出发,逐步收敛到真实数据分布。NCSN(Noise Conditional Score Network)通过在多个噪声尺度上训练 score network,实现了这一过程。
2.3 随机微分方程(SDE)统一框架
Song et al. (2021) 进一步将扩散模型统一到随机微分方程框架中。前向扩散过程可以表示为:
d\mathbf{x} = f(\mathbf{x}, t)dt + g(t)d\mathbf{w}
其对应的逆向 SDE 为:
d\mathbf{x} = [f(\mathbf{x}, t) - g(t)^2\nabla_{\mathbf{x}}\log p_t(\mathbf{x})]dt + g(t)d\bar{\mathbf{w}}
这个统一视角不仅涵盖了 DDPM 和 NCSN,还引出了基于概率流 ODE(Probability Flow ODE)的确定性采样器,为后续的快速采样算法奠定了理论基础。
3. 工程实践:从 U-Net 到 DiT
3.1 U-Net 架构演进
扩散模型的主流骨干网络经历了从 U-Net 到 Transformer 的演变。早期 DDPM 采用 PixelCNN++ 风格的 U-Net 结构,包含:
- 编码器路径:逐步下采样,提取多尺度特征
- 瓶颈层:处理最高级语义信息
- 解码器路径:逐步上采样,通过跳跃连接融合细节
- 时间步嵌入:通过 sinusoidal 位置编码或 MLP 注入时间信息
- 注意力机制:在低分辨率层引入自注意力,捕获长程依赖
U-Net 在图像生成任务中表现出色,但其归纳偏置也限制了更大规模模型的扩展。
3.2 Latent Diffusion Model (LDM)
Rombach et al. (2022) 提出的潜在扩散模型是工程上的重大突破。其核心思想是:不在像素空间进行扩散,而是在低维潜空间(latent space)中操作。
具体流程:
- 训练一个 VQ-VAE 或 KL-VAE 编码器,将图像压缩到潜空间(通常 4-16 倍下采样)
- 在潜空间训练扩散模型,大幅降低计算复杂度
- 通过解码器将生成的潜变量还原为图像
LDM 使 Stable Diffusion 在消费级 GPU 上运行成为可能,同时保持了高质量的生成效果。
3.3 Diffusion Transformer (DiT)
Peebles & Xie (2023) 提出的 Diffusion Transformer 彻底抛弃了 U-Net,采用 Vision Transformer (ViT) 作为扩散模型的骨干。DiT 的核心设计理念:
- Patch化:将输入潜变量分割为固定大小的 patch,类似 ViT 的处理方式
- 自适应层归一化(adaLN):将时间步和条件信息调制到每个 transformer 块中
- 交叉注意力:用于融合文本或其他条件输入
- 通道分离:对潜变量的时空维度分别处理
DiT 展示了 Transformer 在扩散模型中的强大扩展性(scaling properties),更大的模型和数据带来更好的生成质量。OpenAI 的 Sora 正是基于 DiT 架构,并在时空建模上做了进一步创新。
4. 加速采样:从数百步到实时生成
4.1 DDIM:确定性采样
Denoising Diffusion Implicit Models (DDIM, Song et al. 2021) 提出了非马尔可夫的前向过程,允许在采样时跳过中间步。DDIM 的生成过程是确定性的,可以从同一噪声出发生成一致的图像。更重要的是,DDIM 可将采样步数从 1000 步减少到 50 步甚至更少,而质量几乎不下降。
4.2 ODE Solver 方法
基于概率流 ODE,可以使用更高效的 ODE 求解器来加速采样:
- Euler 方法:一阶求解器,简单快速
- Heun 方法:二阶求解器,精度更高
- DPM-Solver:Lu et al. (2022) 专为扩散模型设计的求解器,支持 10-25 步高质量采样
- DPM-Solver++:改进版本,进一步加速收敛
- Consistency Models:Song et al. (2023) 实现单步生成的新范式
4.3 Progressive Distillation
Salimans & Ho (2022) 提出的渐进蒸馏技术,通过将 ^k$ 步的采样器蒸馏为 ^{k-1}$ 步,逐步压缩采样步数。经过多次迭代,可以将 1024 步的模型蒸馏为 4 步,同时保持生成质量。
5. 条件控制与多模态生成
5.1 Classifier Guidance & Classifier-Free Guidance
Classifier Guidance (Dhariwal & Nichol, 2021) 利用辅助分类器提供梯度信号,引导生成过程朝向目标类别。
Classifier-Free Guidance (CFG) (Ho & Salimans, 2022) 是更实用的方案:训练时随机丢弃条件信息,推理时通过调节 guidance scale $\omega$ 控制条件强度:
\hat{\epsilon}_\theta(\mathbf{x}_t, c) = (1+\omega)\epsilon_\theta(\mathbf{x}_t, c) - \omega\epsilon_\theta(\mathbf{x}_t, \emptyset)
CFG 已成为几乎所有现代文生图模型的标准配置,$\omega$ 通常在 7-12 之间。
5.2 ControlNet 与可控制生成
Zhang et al. (2023) 提出的 ControlNet 通过复制预训练模型的权重并添加额外的控制分支,实现了对生成过程的精确控制。ControlNet 支持的条件输入包括:
- Canny 边缘图、HED 边界
- 深度图、法线图
- 姿态关键点(OpenPose)
- 语义分割图
- 涂鸦(Scribble)和用户草图
ControlNet 的创新在于"零卷积初始化"——初始时控制分支的输出为零,不破坏预训练模型的性能。
5.3 IP-Adapter 与多条件融合
IP-Adapter (Ye et al., 2023) 解决了图像提示(image prompt)的融入问题。它通过解耦的图像编码器,将图像特征注入到 UNet 的交叉注意力层中,实现了:
- 图像风格迁移与内容融合
- 多图像参考的组合生成
- 与文本提示的协同控制
6. 前沿方向与未来展望
6.1 视频扩散模型
视频扩散模型面临时空一致性和长视频合成的巨大挑战。主要技术路线包括:
- 时空分离建模:如 Sora 的 DiT-Transformer,先处理空间维度再处理时间维度
- 潜空间视频扩散:在时空潜空间中操作,如 Stable Video Diffusion
- 多帧一致性约束:通过自回归注意力或隐变量插值保证帧间连贯
6.2 3D 生成
NeRF、Gaussian Splatting 等 3D 表示与扩散模型的结合,催生了多种 3D 生成方法:
- DreamFusion:利用 2D 扩散模型的 score distillation 优化 3D 表示
- Zero-1-to-3:从单张图像生成 3D 物体
- Direct3D:直接在像素空间训练 3D-aware 扩散模型
6.3 扩散模型与 LLM 的融合
最新的研究趋势是将扩散模型与大型语言模型结合:
- Diffusion-LM:将扩散过程应用于离散文本 tokens,实现可控文本生成
- 语言条件视频生成:如 Sora 利用 GPT-4 扩展提示词,增强对意图的理解
- 统一多模态架构:如 Emu、Chameleon,用单一模型处理图像、文本、视频
6.4 单步与实时生成
追求实时生成能力的另一个前沿是 Consistency Models 和蒸馏技术:
- Consistency Models:学习概率流 ODE 的"一致性映射",实现单步高质量生成
- LCM (Latent Consistency Model):在潜空间进行一致性蒸馏,实现 2-4 步实时生成
- SDXL-Turbo / Lightning:商业级实时文生图,步数压缩到 1-8 步
7. 实践洞察与经验总结
经过对扩散模型的系统研究,我们总结以下工程实践要点:
- 噪声调度的选择至关重要:余弦调度通常优于线性调度;对于高分辨率图像,需要调整最终信噪比
- 训练数据的规模和多样性:扩散模型对数据质量极其敏感,高质量的过滤和标注带来显著提升
- CFG 强度的权衡:过高的 guidance scale 导致过饱和和伪影,过低则偏离条件意图
- 潜空间压缩比:4-8 倍压缩是质量与效率的最佳平衡;过度压缩损失细节
- 采样器选择:DPM-Solver++ (2M) 在 20-30 步内提供最佳的质量-速度权衡
- V-Prediction vs Epsilon-Prediction:预测速度(v-prediction)在某些场景下比预测噪声更稳定
结语
扩散模型从热力学灵感出发,经过 DDPM 的理论奠基、Score Matching 的统一视角、LDM 的工程突破、DiT 的架构创新,已经发展成为生成式人工智能的基石技术。随着采样速度的持续提升、多模态能力的不断增强、与 LLM 的深度融合,扩散模型正在从实验室工具变为产业基础设施,深刻地改变着我们创造视觉内容的方式。
理解扩散模型,不仅是掌握一项技术,更是洞察生成式人工智能演进脉络的关键窗口。在这个 AIGC 的时代浪潮中,扩散模型的故事才刚刚开始。

发表评论 取消回复