尽管去噪扩散概率模型(DDPM)实现了出色的生成质量,但其采样速度慢是一个主要缺点。生成单个样本通常需要数百甚至数千个连续去噪步骤,这与训练中使用的噪声级别数 T 对应。旨在加快采样和改进生成过程的技术得到探讨,重点介绍去噪扩散隐式模型(DDIM)和方差调度的影响。
去噪扩散隐式模型(DDIM)实现更快的采样
DDIM 对DDPM的生成(逆向)过程进行了修改,能够显著加快采样,通常可以将所需步骤数减少10到100倍,而无需重新训练模型。其独特之处在于构建了一种非马尔可夫逆向过程,该过程仍然使用利用DDPM目标进行训练的相同噪声预测网络 ϵθ。
回顾标准DDPM逆向步骤:
pθ(xt−1∣xt)=N(xt−1;μθ(xt,t),β~tI)
其中 μθ 取决于 ϵθ(xt,t),方差 β~t 则根据噪声调度 βt 固定。这个过程是马尔可夫的,意味着 xt−1 只依赖于 xt。
DDIM 引入了一类更普遍的非马尔可夫扩散过程。其主要思路是,首先从当前噪声状态 xt 预测最终的干净数据点 x0,然后利用这个预测来引导向 xt−1 的步骤。预测的 x0 是通过重新排列正向过程方程 xt=αˉtx0+1−αˉtϵ 获得的:
x0pred(t)=αˉt1(xt−1−αˉtϵθ(xt,t))
这个预测的 x0 表示模型对原始数据的最佳估计,考虑到噪声输入 xt 和当前时间步 t。
DDIM逆向步骤随后利用这个预测的 x0 来采样 xt−1:
xt−1=αˉt−1x0pred(t)+指向 xt 的方向1−αˉt−1−σt2ϵθ(xt,t)+随机噪声σtϵ′
这里,ϵ′∼N(0,I) 是新的随机噪声,σt 控制此逆向步骤的随机性。参数 σt 使用超参数 η≥0 定义:
σt(η)=η1−αˉt1−αˉt−11−αˉt−1αˉt
其作用在于 η 的角色:
- 随机情况 (η=1): 当 η=1 时,σt2 的值等于 DDPM 方差 β~t=1−αˉt1−αˉt−1βt。在这种情况下,DDIM 采样过程恢复了原始的 DDPM 马尔可夫过程。
- 确定性情况 (η=0): 当 η=0 时,我们有 σt=0。随机噪声项消失,并且给定 xt 时,更新变为完全确定性:
xt−1=αˉt−1x0pred(t)+1−αˉt−1ϵθ(xt,t)
这使得生成过程变为隐式,因为 xt−1 是直接计算得出的,而非从分布中采样。这种确定性使得在采样过程中时间步可以有更大的跳跃。不必使用全部 T 个步骤(例如 T=1000),我们可以使用一个时间步子序列 τ1,τ2,...,τS,且 S≪T(例如 S=50 或 S=100)。更新规则按顺序应用于 t=τS,τS−1,...,τ1。这个确定性变体通常与扩散模型的概率流常微分方程(ODE)公式相关联。
DDPM 逆向步骤与确定性 DDIM 逆向步骤 (η=0) 的比较。DDIM 使用对干净数据 x0 的中间预测来确定 xt−1。
使用 η=0(确定性 DDIM)通常能以少得多的步骤产生高质量样本。η 值在0到1之间,可在确定性生成和随机性生成之间进行插值,可能增加多样性,但会牺牲部分一致性。DDIM 的一个主要优点是它使用为 DDPM 训练的完全相同的网络 ϵθ。只有采样过程发生改变,因此可以轻松地与现有模型一起部署,以实现更快的生成。
方差调度
噪声调度的选择(由 t=1,...,T 的 βt 定义)是影响模型性能的另一个重要方面。此调度决定了在正向过程中添加噪声的速度,控制着每个步骤 t 的信噪比。常见的调度包括:
- 线性调度: βt 从一个较小的值 β1(例如 10−4)线性增加到一个较大的值 βT(例如 0.02)。这在最初的 DDPM 论文中被使用。
- 余弦调度: 提出用于改进训练稳定性和样本质量。累积噪声水平 αˉt 遵循余弦形状,防止信号在正向过程早期衰减过快。具体来说:
αˉt=f(0)f(t),此处f(t)=cos(1+st/T+s⋅2π)2
这里,s 是一个小的偏移量(例如 0.008),以防止 βt 在 t=0 附近过小。然后 βt 被推导为 βt=1−αˉt−1αˉt。
αˉt 的平方根(表示信号率)随时间减小。βt 的线性调度导致 αˉt 大致呈线性下降,而余弦调度则能维持更高的信号率更长时间,然后才更快地衰减。
除了固定调度外,一些研究还关注了学习逆向过程的方差 pθ(xt−1∣xt)。原始 DDPM 将此方差固定为 β~tI 或 βtI。然而,模型 ϵθ 可以被修改,使其也能预测一个参数 v,该参数在最优逆向方差的这些下限和上限之间进行插值。虽然学习方差可以改进对数似然分数,但它通常不会大为改善感知质量(由 FID 等指标衡量),并增加了复杂性。固定的小方差方法(通常由 β~t 近似)在实践中通常表现良好。DDIM 框架通过控制 η 的随机性来避免显式方差学习,提供了一种灵活的方式来隐式管理逆向过程方差。
"总而言之,DDIM 提供了一种有效的方法来加快扩散模型的采样,它通过定义确定性或近似确定性的逆向路径,利用相同的已训练噪声预测网络。方差调度(βt)的选择仍然是影响模型性能的重要设计决策,余弦调度通常比线性调度更受青睐。这些方法共同使得扩散模型在需要高效生成的应用中更具实用性。"