DDIM和DDPM之 间的区别与联系

发布于:2025-09-14 ⋅ 阅读:(24) ⋅ 点赞:(0)

核心关系概述

首先,要理解DDIM并不是一个全新的模型,而是DDPM的一个精巧的重新参数化和扩展。它们使用完全相同的训练目标和方法,因此你可以用一个训练好的DDPM模型直接来运行DDIM的采样算法,而无需重新训练。

DDIM的核心贡献是:发明了一种新的、非马尔可夫链的扩散过程,从而实现了更高效、更确定性的采样


详细区别对比

我们从几个维度来对比它们:

特性 DDPM DDIM
扩散过程 马尔可夫链 (Markov Chain)。每一步都严格依赖于前一步。 非马尔可夫链 (Non-Markovian)。设计了一种更灵活的路径,当前状态可以依赖于更早的历史状态。
采样速度 。必须严格地从 T 步一步步迭代到 1 步(例如1000步)。 。允许跳步采样。可以用远少于训练步数(如50步或100步)的步骤生成高质量样本。
采样确定性 随机 (Stochastic)。反向过程的每一步都注入了新的随机高斯噪声。 确定性 (Deterministic) 或随机。可以通过一个参数(η)来控制随机性。当 η=0 时,过程完全确定。
生成过程 是一个随机过程,即使输入相同的初始噪声,每次生成的结果都不同。 η=0 时,是一个确定性映射,输入相同的初始噪声,输出结果完全相同。
数学基础 基于变分推断 (Variational Inference),推导出一个去噪匹配目标。 基于非马尔可夫假设,重新推导了逆向过程的概率分布,使其与DDPM的训练目标兼容。

核心问题解答

1. DDIM有把DDPM中的噪声设置为零吗?体现在哪里?

答案是:是的,但这是在采样(推理)阶段,而不是训练阶段。

在DDPM的反向采样过程中,每一步的关键操作是:

  1. 预测出当前步的噪声 ε_θ
  2. 用这个预测的噪声和公式计算出 x_{t-1}
  3. 这个计算公式里包含一项随机采样的高斯噪声 z(如下公式中的 σ_t z)。正是这项噪声使得DDPM的生成过程是随机的。

DDPM的反向采样公式(简化):
x_{t-1} = (1/√α_t) * (x_t - ((1-α_t)/√(1-ᾱ_t)) * ε_θ) + σ_t z
(其中 z ~ N(0, I)σ_t 是方差项)

DDIM的核心洞察是:他们发现,只要设计一个特殊的非马尔可夫扩散过程,这个逆向过程的分布就可以有多种选择。他们从中选择了一个方差更小的版本。

DDIM的反向采样公式(重新参数化后):
x_{t-1} = √(ᾱ_{t-1}) * ( (x_t - √(1-ᾱ_t) * ε_θ(x_t, t)) / √(ᾱ_t) ) + √(1-ᾱ_{t-1} - σ_t²) * ε_θ(x_t, t) + σ_t z

现在,重点来了:

  • 在这个公式中,σ_t 被定义为 η * √( (1-ᾱ_{t-1})/(1-ᾱ_t) ) * √(1 - ᾱ_t/ᾱ_{t-1}) )
  • 当我们设置 η = 0 时,σ_t 就等于 0
  • 一旦 σ_t = 0,上面公式的最后一项 σ_t z消失了

体现在哪里?
体现在反向采样算法的代码实现中。 当使用DDIM采样且设置 eta=0 时,代码中生成随机噪声 z 并将其与 sigma_t 相乘的那一行,实际上是在加一个零向量,相当于没有添加任何新的随机噪声。整个反向过程只依赖于初始的随机噪声 x_T 和神经网络确定的预测 ε_θ

所以,DDIM并没有“删除”DDPM中的噪声,而是通过数学推导提供了一个选项,允许我们将采样过程中额外添加的随机噪声项的大小设置为零

2. 反向采样的过程为什么说DDIM的是确定的?

正是因为上面一点。

当设置 η = 0 时,DDIM的反向采样过程不再注入任何随机性。整个过程的每一步计算都是确定的:

  1. 从纯噪声 x_T 开始(这是一个随机起点,但一旦固定就不变)。
  2. 神经网络 ε_θ 是一个确定的函数(模型权重固定)。
  3. 反向采样公式 x_{t-1} = f(x_t, ε_θ) 也是一个确定的计算,不含随机项 z

因此,给定一个固定的初始噪声 x_T,整个反向过程就像沿着一条确定的轨迹下滑,最终必然会到达同一个终点 x_0。这使得DDIM的采样成为一个确定性映射(Deterministic Mapping)。

这与DDPM形成鲜明对比:DDPM即使在相同的 x_T 下,每一步加入的随机噪声 z 都会不同,导致每次采样会走上不同的轨迹,从而产生不同的结果。

这种确定性有什么好处?

  1. 样本可重现(Reproducibility):对于同一个“种子”(初始噪声),你总能生成完全一样的图像,这对于研究和调试非常有用。
  2. 隐空间插值(Latent Interpolation):因为反向过程是一个 deterministic mapping,你可以将初始噪声 x_T 视为图像的隐编码(Latent Code)。对两个不同的 x_T 进行插值,再通过DDIM解码,可以得到语义上平滑过渡的图像。而在DDPM中,由于过程的随机性,这种插值是不稳定、不连续的。
  3. 更快的采样:确定性只是DDIM的一个特性,它另一个巨大优势是跳步采样。因为它不依赖于马尔可夫链,我们可以设计一个子序列 {τ_1, τ_2, ..., τ_S}(其中 S << T)来进行反向过程,大步长地“跳”着生成图像,大大加速了采样速度,且质量损失很小。

总结

  • DDIMDDPM 的“灵魂伴侣”,它们共享训练过程。
  • DDIM通过改变推理(采样)过程,提供了一个方差不添加(η=0) 的选项,从而实现了确定性采样
  • 这个确定性采样过程使得生成过程可重现、可插值,并且通过与跳步采样结合,实现了质量和速度的卓越权衡

可以说,DDIM的提出极大地推动了扩散模型的应用,因为它解决了DDPM最大的痛点——采样速度过慢。