codex_agy_batch_20260704_1609 / guided_diffusion_distillation · paper

On Distillation of Guided Diffusion Models

论文的核心贡献

  • 支持 guidance weight 的单模型蒸馏: 第一阶段把 classifier-free guidance 中条件预测和无条件预测按权重组合后的输出,蒸馏到一个学生模型中。学生模型把连续的 guidance weight w 作为额外输入,因此同一个模型可以覆盖不同的质量-多样性权衡。重要性在于,它把原本每个采样步需要两次模型评估的 guided sampling,压缩成一次模型评估。
  • 把 progressive distillation 扩展到 guided diffusion: 第二阶段从第一阶段得到的 w-conditioned 学生模型出发,反复把 N 步教师蒸馏成 N/2 步学生。这样避免直接让一个学生模型一次性拟合长去噪轨迹,降低了极少步采样时的训练难度。
  • 同时覆盖 pixel-space 和 latent-space diffusion: 作者把两阶段蒸馏用于像素空间 DDPM,也用于 Stable Diffusion 这类 latent diffusion。论文报告称,该方法在 ImageNet、CIFAR-10、LAION 文本生成、图像翻译和 inpainting 中都能在少步数下保持较好质量。
  • 提出少步随机采样过程: 除了 deterministic sampler,论文还给出 stochastic sampling:先做大步长 denoise,再通过 add noise 回到中间噪声水平,为下一次去噪提供修正空间。这个设计是为了缓解极少步采样中误差累积和细节损失。

复杂 Pipeline 深度解析

Figure 5
Figure 5

图中元素对照解读

  • 图中上半部分标题 Deterministic sampling: 对应论文中的确定性少步采样过程;它在 pipeline 中的作用是展示蒸馏模型只沿一条去噪轨迹从噪声走向图像。
  • 图中下半部分标题 Stochastic sampling: 对应论文中的随机少步采样过程;它在 pipeline 中的作用是展示去噪之间插入加噪回退的另一条推理轨迹。
  • 图中左侧两块彩色噪声小图: 对应论文中的初始噪声样本;它在 pipeline 中的作用是作为 4-step sampling 的起点,后续箭头都从该噪声状态开始。
  • 图中右侧两块小狗图像: 对应论文中的最终生成样本;它在 pipeline 中的作用是标出两种采样路径在完成 4 次 Denoise 后得到的输出端。
  • 图中上半部分四段蓝色弧形箭头和 Denoise 标签: 对应论文中的 4 次蒸馏模型去噪调用;它在 pipeline 中的作用是把长扩散采样轨迹压缩为少量大步去噪。
  • 图中下半部分蓝色弧形箭头和 Denoise 标签: 对应论文中的随机采样里的去噪推进步骤;它在 pipeline 中的作用是每次先把当前噪声状态推向更干净的中间状态或输出状态。
  • 图中下半部分三段绿色弧形箭头和 Add noise 标签: 对应论文中的随机加噪回退步骤;它在 pipeline 中的作用是在相邻去噪步骤之间重新注入噪声,给后续大步去噪留下修正空间。
  • 图中横向虚线分隔线: 对应论文对 deterministic 与 stochastic 两种采样过程的并列比较;它在 pipeline 中的作用是说明两条路径共享同一类输入和输出,但中间状态转移规则不同。
  • 图中底部 caption number of denoising steps is 4 对应论文实验中展示的 4 步采样设置;它在 pipeline 中的作用是限定图里蓝色 Denoise 操作的数量,而不是声明任意步数的流程。

这篇论文的核心思路是把 classifier-free guidance 从“推理时同时评估条件模型和无条件模型”的双路计算范式,压缩成一个可调 guidance strength 的单学生模型,然后再用渐进式蒸馏把采样步数继续压到 1-4 步。它解决的主要痛点不是重新设计一个更强的扩散骨干,而是降低高质量 guided diffusion 在文本生成、图像编辑和 inpainting 中的推理成本。

核心图是 Figure 5. Sampling procedures of the distilled model where the number of denoising steps is 4. 这张图不是完整网络结构图,而是蒸馏后模型的推理 pipeline 图。它展示了同一个蒸馏模型在 4 个 denoising steps 下的两种采样路径:deterministic sampling 和 stochastic sampling。

Deterministic sampling

  • 输入: 初始噪声状态。
  • 操作: 按图上半部分从左到右依次执行 4 次蓝色 Denoise。每次 Denoise 调用的是蒸馏后的单模型,而不是分别调用条件模型和无条件模型。
  • 输出: 最右侧的生成图像。
  • 作用: 这是最直接的少步采样路径。它体现第二阶段 progressive distillation 的结果:原本长时间轴上的许多小去噪步,被压缩成少数大步去噪。

Stochastic sampling

  • 输入: 初始噪声状态。
  • 操作: 按图下半部分的箭头顺序,每个周期先执行蓝色 Denoise,再执行绿色 Add noiseDenoise 用蒸馏模型向更干净的状态推进,Add noise 则把状态随机扰动回中间噪声水平。
  • 输出: 经过 4 次 denoise 后得到的最终图像。
  • 作用: 随机回退不是为了增加模型调用次数,而是为了在大步长去噪造成误差时提供修正余地。它让少步采样不只是粗暴跳过中间时间点,而是在去噪和重新加噪之间形成更稳的轨迹。

关键术语

  • Classifier-free guidance: 在本文中,它是教师模型的基础生成机制。推理时用条件预测和无条件预测的组合来增强条件控制,但代价是每一步通常需要两次网络评估。本文第一阶段蒸馏的目标就是把这个组合输出变成单模型输出。
  • Guidance weight w w 控制生成质量与多样性的权衡。本文把 w 编码后输入学生模型,使蒸馏模型不是固定在某一个 guidance strength 上,而是能覆盖一个连续区间。
  • Stage-one distillation: 把 classifier-free guided teacher 的合成输出蒸馏成一个 w-conditioned student。它主要减少每步模型评估次数。
  • Stage-two progressive distillation: 把已经得到的学生模型继续从多步采样压缩到少步采样。它主要减少采样步数。
  • Deterministic / stochastic sampling: deterministic 路径只做大步 denoise;stochastic 路径在 denoise 之间插入 add-noise 回退。两者都使用蒸馏后的单模型,但随机路径试图改善极少步采样的稳定性。

为什么 Figure 5 是核心图

Figure 5 把论文的两个主要贡献串在同一条推理路径里:每个 Denoise 箭头内部代表第一阶段得到的 w-conditioned 单模型,箭头数量很少则代表第二阶段 progressive distillation 对时间步的压缩。图中的 Add noise 分支进一步说明,作者并不只依赖确定性大步跳跃,还为极少步生成设计了随机修正机制。

论文中关于 “up to 256x faster”、“at least 10-fold” 和少步数匹配教师质量的说法,均应理解为作者在其设定、数据集、指标和实现下报告的结果;这里没有独立验证跨方法、跨协议的可比性。