跳转至

扩散模型 (Diffusion Models)

背景知识
  • 概率分布与采样:从给定分布中抽取随机样本的过程,生成模型的核心操作
  • 神经网络作为函数逼近器:用参数化网络拟合任意复杂函数(这里是去噪函数)
  • Transformer:可作为扩散模型的骨干网络(如 DiT),替代传统 U-Net → 详见
  • 多模态 AI:文本/图像/音频/视频的 tokenization 与跨模态对齐 → 详见

扩散模型是当前图像、视频、音频生成的主流技术路线。本文档聚焦其核心原理和关键改进。

相关文档:多模态 AI | Transformer 架构


1. DDPM (Denoising Diffusion Probabilistic Models)

DDPM 是扩散模型的基础架构,通过学习去噪来生成图像。

1.1 核心思想

学习去噪:从纯噪声逐步还原成清晰信号。DDPM 将这个过程形式化为一个前向加噪、反向去噪的概率模型。1

两阶段过程

前向(构建训练数据):
  清晰图 x₀ → 加一点噪声 → x₁ → 加噪声 → x₂ → ... → x_T (纯噪声)

反向(训练模型):
  纯噪声 x_T → 去一点噪声 → x_{T-1} → 去噪声 → ... → x₀ (生成图)

注:上图是概念性展示。实际训练时使用重参数化技巧,从 \(x_0\) 一步计算得到任意 \(x_t\),无需逐步迭代。

直觉类比: - 前向过程:像"毁掉"一张图,一步步加噪声直到完全模糊 - 反向过程:训练神经网络学会"修复",从模糊图猜原图长什么样 - 生成时从纯噪声开始,一步步"修复"成清晰图

1.2 推理流程(从纯噪声生成)

从纯噪声 \(x_T\) 开始,每步去噪后重新添加噪声(用 \(\sigma_t\)),保持扩散过程的随机性,逐步得到 \(x_{T-1}, x_{T-2}, ..., x_0\)(生成图)。

\(\sigma_t\) 的作用: - 重新添加噪声的标准差参数,通常 \(\sigma_t = \sqrt{\beta_t}\) - 保持扩散过程的随机性,避免推理过程完全确定性 - 确保生成的样本具有多样性

1.3 DDPM 的局限性

  • 采样速度慢:需要多步去噪(通常 1000 步)
  • 在像素空间扩散:计算量大,高分辨率图像生成困难

2. 关键改进

2.1 DDIM (Denoising Diffusion Implicit Models)

通过修改推理过程实现加速,可以用更少的步数达到类似质量。2

核心改进: - DDPM 需要 1000 步采样,DDIM 可以用 50 步达到类似质量 - 实现非马尔可夫采样,跳过中间步骤 - 推理过程可以是确定性的(可设置),便于一致性和可控性

技术原理: DDIM 的核心洞察是:同一个训练好的 DDPM 模型,可以对应多个不同的反向过程,只要它们的边际分布一致。DDPM 每步去噪后必须重新添加随机噪声,而 DDIM 用模型预测的噪声替代随机噪声,因此可以是确定性的。由于公式结构改变,不依赖中间步骤,可以直接跳步。

直觉类比: - DDPM:像走楼梯,必须一级一级走完,每步都要重新买票(加随机噪声) - DDIM:像坐电梯,可以直接跳到目标楼层,沿着相同的"轨道"(噪声调度)行驶

2.2 Flow Matching

基于连续正规化流(Continuous Normalizing Flows, CNFs)的生成建模范式,通过学习向量场实现从噪声到数据的连续变换。3

核心概念: - 向量场 v_t(x):在时刻 t,位置 x 的粒子应该往哪个方向移动 - 连续变换:将整个生成过程建模为连续的"流动",而非离散步骤 - 概率路径:定义从噪声分布到数据分布的变换路径,扩散路径只是其中一种特例

与 DDPM 的区别

维度 DDPM Flow Matching
变换方式 离散的逐步去噪 连续的向量场
训练目标 学习去噪 回归向量场
推理方式 固定步数迭代 ODE 求解器数值积分
路径选择 固定的扩散路径 可选多种路径(扩散/OT 等)

为什么更快?

DDPM 每步必须重新加随机噪声,步数固定(通常 1000 步)。Flow Matching 用 ODE 求解器进行数值积分:

  • 自适应步长:求解器可以根据向量场的平滑程度自动调整步长
  • 跳过中间点:可以用更大的步长直接"跳"到目标状态
  • 无需重加噪声:沿着向量场连续流动,不需要每步重新采样噪声

技术优势: - 采样步数更少,速度更快 - 训练过程更稳定 - 兼容多种概率路径(如最优传输 OT 路径),可以进一步优化生成质量


3. 已知问题

3.1 视频生成的特殊挑战

视频生成相比图像生成面临额外的挑战,主要源于时间维度的引入。

挑战 具体问题 图像生成无此问题
帧间一致性 同一个人不能变脸、物体不能突然消失 单帧无时间维度
物理合理 重力、碰撞、流体运动要符合物理规律 静态图像无物理约束
镜头运动平滑 相机运动不能抖动、跳变 无相机运动

技术手段: - 3D 注意力:空间+时间联合 attention(Sora 的做法)。将视频切成时空立方体(如 2 帧×16×16),一次编码空间+时间 - Temporal super-resolution:先生成低帧率(如 8fps),再插帧到高帧率(24fps/30fps) - 运动先验:利用光流(optical flow)等运动信息指导生成,保证运动连贯

核心差异: - 图像生成:2D 空间去噪,关注单帧质量 - 视频生成:3D 时空去噪,关注帧间连贯性和物理合理性


4. 与自回归对比

维度 扩散模型 自回归(GPT)
生成方式 整体去噪,并行处理 逐 token 顺序生成
适用模态 图像/音频/视频(连续) 文本(离散)
采样速度 慢(需要多步去噪) 慢(需要顺序生成)
质量控制 通过条件引导(文本、图像等) 通过 prompt 引导

为什么图像不用自回归? - 图像像素太多(224×224×3 = 15万),逐像素预测太慢 - 连续空间的自回归效果不如扩散

为什么文本不用扩散? - 文本天然离散,自回归更合适 - 扩散模型在离散空间效果不好


参考资料


  1. Ho et al. Denoising Diffusion Probabilistic Models. 2020. https://arxiv.org/abs/2006.11239 

  2. Song et al. Denoising Diffusion Implicit Models. 2020. https://arxiv.org/abs/2010.02502 

  3. Lipman et al. Flow Matching for Generative Modeling. 2022. https://arxiv.org/abs/2210.02747