极市导读
DuoDiff通过在生成过程的不同阶段使用两个不同的去噪网络(一个较浅的网络用于初始阶段,一个较深的网络用于后续阶段)来加速推理过程。实验表明,DuoDiff在推理速度和生成质量上都优于现有的早期终止扩散方法,并且易于实现,与加速扩散的现有方法相辅相成。这项工作为解决扩散模型推理速度慢的问题提供了一种有效的解决方案。 >>加入极市CV技术交流群,走在计算机视觉的最前沿
扩散模型在图像生成方面取得了前所未有的性能,但由于其迭代采样过程,推理速度较慢。
为了解决这个问题,最近提出了早期终止(Early-exiting)的方法,其中,去噪网络的深度根据每个采样步骤的(估计)难度进行自适应。
在这里,作者发现在当前自适应扩散模型的采样过程中存在一个有趣的“相变”:在初始采样步骤中,去噪网络始终过早地退出,直到突然切换到使用整个网络。
基于这个发现,作者提出了一种加速生成的方法:在初始采样步骤中使用较浅的去噪网络,而在后续步骤中使用较深的网络。
作者在实验中证明了作者的双骨架方法 DuoDiff 在推理速度和生成质量上都优于现有的早期终止扩散方法。
重要的是,DuoDiff 易于实现,并且与加速扩散的现有方法相辅相成。
1 Introduction
扩散模型[21]在各种模态的生成任务上近期展现了令人印象深刻的表现,包括图像[6; 3],视频[7; 8],音频[12],以及分子[9]。然而,使用扩散模型生成新样本的过程可能较慢,因为需要多次调用去噪网络[25]。为了提高采样效率[26],一些最具前景的方法关注于减少采样步骤(例如,DDIM[22]和基于蒸馏的方法[19; 15])或改变采样空间(例如,潜在扩散[18])。
为了加速扩散, AdaDiff [23] 中提出了早期终止策略。与上述静态方法不同, AdaDiff 是一种自适应方法, 其中使用的去噪网络的深度可以在采样步骤之间变化。具体来说, 每个采样步骤 (其中 从总步骤数 递减到 0) 的难度是通过计算每个层去噪网络的不确定性进行估计。如果不确定性足够低, 那么正向传播将在该层终止(即模型 提前终止),从而减少该步骤的计算量。
在这项工作中,作者利用早期退出模型的自适应性质来研究扩散模型中生成过程的动力学。
有趣的是, 作者发现生成过程的早期(即, 对于大的 ),只有去噪网络的少量层处于活动状态,而当 接近 0 时,整个网络都被利用(如图1所示)。这表明扩散模型中的生成过程开始于一个更容易的阶段,然后是更具有挑战性的阶段。受这些发现启发,作者在每个采样步骤上都消除了动态的早期退出, 并引入了一种(静态)双 Backbone 设计, 即DuoDiff。
DuoDiff由两个去噪网络组成:在生成过程的初始、更容易的阶段中使用较浅的一个,而在随后的更具有挑战性的阶段中使用更深的一个(如图3所示)。
实验证明,DuoDiff 在各种标准数据集(如 ImageNet)上的采样延迟和图像生成质量均优于现有的早期退出扩散模型。此外,与早期的退出扩散模型相比,DuoDiff 更适合批处理推理,因为它不需要为每个样本分配计算路径。此外,作者还展示了 DuoDiff 能够有效地与其他流行的效率提升方法(如 [22; 18])结合使用。
2 Background
扩散模型通过逐步向数据中添加噪声并学习如何逆转这一过程,生成高质量的样本。定义为向原始数据中添加噪声的前向过程。
在训练之后,新的样本通过以下步骤生成:首先从高斯分布中采样 ,然后依次应用 DDPM [6]或DDIM [22]中的噪声网络 , 根据DDPM或DDIM的转换规则。
早期退出(Early-exiting)是一种提高推理效率的流行范式,通过允许模型的深度根据给定输入的难度进行自适应[24]。它已成功应用于各种领域,包括计算机视觉[10;11]和语言建模[4;20]。对于扩散模型,早期退出已在AdaDiff[23]中进行过探索。为了在AdaDiff中实现动态推理,在每个层 之前将原始 Backbone 模型(U-ViT[1])附加中间输出头。此外,在每个采样步骤 和每个层 定义一个不确定性估计值 。一旦给定层的不确定性低于预定义阈值 , 则返回早期(噪声)预测:
在这篇论文中, 表示在第 j 层的激活值, 表示第 i 个输出头。
3 Methods
扩散模型中的早期退出趋势. 作者首先利用AdaDiff的适应性来研究扩散模型中生成过程的动力学。具体来说, 在图1中, 作者可视化了每个采样步骤t的测试样本的平均退出层。有趣的是, 作者观察到早期退出仅在反向过程的开始阶段发生。例如,在ImageNet 上,阈值 时,退出层的平均值在t约为 600 之前等于 2 ,之后整个模型被利用。这表明,根据AdaDiff的退出趋势,扩散生成过程可以大致分为两个阶段,其中第一个阶段比第二个阶段”更容易”。
尽管这种行为在开始时可能会令人惊讶,但作者证明,这种行为可以通过更深入地观察扩散模型的训练来解释。为此,观察随着 的增加, 越来越受到噪声的影响(方程 1 )。因此,去噪网络 的输入和预期输出开始越来越相似,使任务变得更加容易,因为网络主要需要学习一种类似于身份的行为 2 。请参见图2以获得更直观的解释。这也体现在测试时间, 去噪网络对于较大的 始终过早地退出, 表明任务更容易。
在上述早期退出趋势的基础上,作者提出了一种名为DuoDiff的新颖扩散框架,旨在通过使用双 Backbone 结构加速推理过程。在反向扩散过程的初始时间步长中,输入主要由噪声主导,任务较为简单,此时DuoDiff使用了一个浅层的三层 Backbone ,作为这些时间步中大多数样本的早期退出层,通常低于3(如图1所示)。
随着扩散过程的进行, 输入变得更加结构化, DuoDiff将剩余、更复杂的时步切换到完整的 Backbone 。作者用 表示浅层模型活跃的时间步数。浅层和完整 Backbone 都从零开始在相同的数据集上使用相同的扩散训练目标进行训练。此外, 两种 Backbone 都针对所有 值进行训练, 训练完成后, 可以根据需要自由选择 。
不同于AdaDiff,它依赖于基于每个样本不确定性水平的动态提前终止机制(见公式3),DuoDiff通过在两个 Backbone 之间使用固定转换点来简化此过程。虽然这牺牲了早期退出的适应性(即根据样本的难度而变化的计算),但作者认为这在这一点上是可以谅解的,因为作者在不同的样本之间观察到非常少的退出模式变化(如图1中标准偏差条的小表示)。
此外,静态方法消除了AdaDiff为不同样本设置不同退出点所导致的批处理低效问题,使批处理推理更高效且易于实现。
4 Experiments
为了说明DuoDiff的性能, 作者将它与AdaDiff在三个广泛使用的数据集上进行了比较:无条件生成任务的CIFAR-10 [13]和CelebA [14], 以及条件生成任务的 ImageNet[2]。
对于ImageNet, 作者在两个分辨率上评估模型: 和 , 以便在不同的图像大小上评估DuoDiff的可伸缩性。在ImageNet 上, 作者在潜在空间中训练作者的扩散模型。作者使用U-ViT[1]作为基础模型。在所有实验中, DuoDiff采用了一个浅层的三层背
作者使用FID分数[5]评估生成的图像质量, 并通过记录每个样本的推理时间来衡量性能。此外, 作者还测试了DuoDiff与DDPM和DDIM采样器, 并提供了DuoDiff与潜在空间扩散无缝工作的证据。所有指标均在 5,120 张图像上计算, 分批处理, 每批128张图像。对于AdaDiff, 使用批处理采样计算推理时间是具有挑战性的。
在本研究中, 作者将AdaDiff和DuoDiff进行比较, 证明DuoDiff在图像质量和采样效率方面均优于 AdaDiff。图4展示了在ImageNet 和ImageNet 上的FID分数和推理时间。有关所有结果的表格视图, 请参阅附录 B 。
度量DuoDiff在推理时间方面优于 Baseline 和AdDiff。这是预期结果,因为DuoDiff在第一次时间步使用了浅层U-ViT,而AdDiff则由于其基于不确定性的退出机制产生了额外的开销。
然而, 两种方法的采样时间均有所减少, 同时FID分数也出现了下滑。对于AdaDiff, 这一下滑趋势更加明显, 随着 的增加, 推理速度更快但图像质量较低存在明显的权衡。相比之下, DuoDiff在 值增加时, FID分数也出现了减少, 但与AdaDiff相比, 这种下降要温和得多, 图像质量保持相对稳定, 更接近 Baseline 。例如, 在ImageNet 上, 每个样本的计算预算为 时, AdaDiff的FID分数为 57 ,而DuoDiff的FID分数为 32 – 提高了大约 。有关更多信息和定量结果, 请参阅表2。
此外,表1显示DuoDiff可以与其他技术如DDIM [22]和潜在扩散[18]一起使用。
超参数对性能的影响。对于AdaDiff和DuoDiff,作者可以观察到一个普遍的趋势:随着阈值超参数 ( 和 , 分别) 的增加, 图像质量逐步降低, 而推理时间减少。这一关系在图5中定性说明, 并在表2中定量。作者将未来的工作留待更原则的机制进行阈值选择。
5 Conclusion & Future Work
在本文中,作者提出了DuoDiff,它是适应扩散模型的双 Backbone 件的替代品,灵感来源于早期退出趋势的一致性。
作者证明了DuoDiff在降低每个样本推理时间的同时,还能保持图像质量。
DuoDiff还兼容其他扩散技术,包括潜在空间扩散和DDIM采样,为解决扩散模型的缓慢推理速度提供了一种高效解决方案。
未来研究将专注于探索不同的DuoDiff配置,例如增加浅层 Transformer 中的层数以增加。
此外,一个有前途的方向是研究不同扩散参数化中的早期退出趋势,例如预测原始图像而不是添加的噪声。
参考文献
[0]. DuoDiff: Accelerating Diffusion Models with a Dual-Backbone Approach.
公众号后台回复“数据集”获取100+深度学习各方向资源整理
极市干货
点击阅读原文进入CV社区
收获更多技术干货