Diffusion Models' Learning Script

Introduction

Diffusion Model认为:目标图像/视频经过了多次噪音添加过程(noise),最终产生某个随机分布。Diffusion model反向这个过程,每一步产生一个噪声(Sampler),并且让这个随机分布减去,最终产生(还原)目标图像/视频。

Classic Works

Diffusion Models 加速采样方法

Diffusion Models 最大的问题就是推理速度慢,因为需要进行数百步甚至数千步的迭代采样。以下是几种主要的加速采样方法:

1. 步数减少方法

1.1 DDIM (Denoising Diffusion Implicit Models)

  • 核心思想:使用更大的步长跳过中间步骤,减少采样步数(从1000步→50步)
  • 原理:DDIM 通过马尔可夫链的重新参数化,允许不同的步长而不改变数据分布
  • 特点
    • 保持与 DDPM 相同的训练过程
    • 推理速度快 10-50 倍
    • 生成质量略有下降但基本可接受
  • 公式:去噪步骤可以跳跃式进行,不需要连续采样

1.2 PNDM (Pseudo Numerical Methods for Diffusion Models)

  • 核心思想:使用高阶数值积分方法加速采样
  • 原理:将扩散过程视为常微分方程(ODE),用数值方法求解
  • 优势:可以进一步减少采样步数到 20-50 步

1.3 DPM-Solver

  • 核心思想:专门为扩散概率模型设计的数值求解器
  • 特点
    • 支持 1-3 阶精度的不同实现
    • 2-4 步即可生成较好质量的图片
    • 比 DDIM 的收敛速度更快
  • 优势:在保持质量的同时将步数从 50 降至 20

2. 模型蒸馏方法

2.1 Progressive Distillation

  • 思想:先训练能在 N 步完成采样的模型,再蒸馏到 N/2 步
  • 优势:通过知识蒸馏逐步加速模型
  • 流程:迭代式的蒸馏过程,每次将步数减半

2.2 Consistency Models

  • 核心创新:直接学习将任意噪声水平映射到干净数据的映射关系
  • 特点
    • 支持单步生成(虽然质量不如多步)
    • 支持任意少数步的快速采样
    • 可并行生成多个中间结果

3. 潜在空间方法

3.1 Latent Diffusion Models (LDM)

  • 核心思想:在低维潜在空间而非像素空间执行扩散
  • 优势
    • 计算复杂度大幅降低(如 4-8 倍)
    • 推理速度显著加快
    • 生成质量不下降甚至提升
  • 代表:Stable Diffusion 使用该方法

3.2 Token-Based 加速

  • 思想:在离散的 token 空间进行扩散而非连续空间
  • 优势:减少需要采样的维度和步数

4. 条件化优化

4.1 Guidance-based Acceleration

  • 思想:利用 classifier-free guidance 在采样过程中指导生成
  • 特点
    • 可以更快地收敛到目标生成结果
    • 减少需要的采样步数
    • 增强可控性

5. 混合策略

5.1 组合使用多种方法

  • 在潜在空间(LDM)中使用 DDIM 采样
  • 结合 Consistency Models 做预生成
  • 在蒸馏模型基础上使用 DPM-Solver