【论文阅读笔记】Tackling the Generative Learning Trilemma with Denoising Diffusion GANs

【论文阅读笔记】Tackling the Generative Learning Trilemma with Denoising Diffusion GANs

Paper:https://arxiv.org/abs/2112.07804

Code:https://github.com/NVlabs/denoising-diffusion-gan

Authors:Nvlabs, Zhisheng Xiao, Karsten Kreis, Arash Vahdat

Introduction

主流生成模型(Generative Models)的优缺点以及它们在三个关键目标上的表现:高质量样本生成、模式覆盖和多样性、快速采样。

在本文中,我们通过重新制定去噪扩散模型来解决生成学习三引理,专门用于快速采样,同时保持强大的模式覆盖率和样本质量。

  1. 扩散模型通常假设去噪分布可以近似为高斯分布。然而,众所周知,高斯假设仅在小去噪步骤的无穷小极限中成立,这导致在反向过程中需要大量的步骤。
  2. 当反向过程使用更大的步长(即去噪步骤更少)时,需要一个非高斯多模态分布来建模去噪分布。直观地说,在图像合成中,多模态分布源于多个似是而非的干净图像可能对应于相同的噪声图像这一事实。

受这一观察的启发,我们建议使用富有表现力的多模态分布参数化去噪分布,以实现大步骤的去噪 。特别是,我们引入了一种新的生成模型,称为去噪扩散 GAN,其中去噪分布用条件 GAN 建模

在图像生成中,我们观察到我们的模型获得了与扩散模型竞争的样本质量和模式覆盖率,同时只需要两个去噪步骤,与Song等人(2021c)在CIFAR-10上的预测器校正器采样相比,采样速度提高了约2000倍。与传统的GANs相比,我们表明我们的模型在样本多样性方面明显优于最先进的GANs,同时在样本保真度方面具有竞争力

总之,我们做出了以下贡献:

  1. 我们将扩散模型的缓慢采样归因于去噪分布中的高斯假设,并提出采用复杂的多模态去噪分布。
  2. 我们提出了去噪扩散 GAN,这是一种扩散模型,其反向过程由条件 GAN 参数化。
  3. 通过仔细评估,我们证明了去噪扩散 GAN 与当前的图像生成和编辑扩散模型相比实现了几个数量级的加速。我们表明,我们的模型在很大程度上克服了深度学习三引理,使得扩散模型首次以较低的计算成本适用于交互式的现实世界应用程序。

方法

扩散模型文献中的一个常见假设是用高斯分布近似 q ( x t − 1 ∣ x t ) q(x_{t−1}|x_t) q(xt−1∣xt)。在这里,我们质疑这种近似何时是准确的

LSGM尝试使用 VAE 将数据编码到高斯分布,但仍然需要数百或数十步,而且数据分布压缩到高斯分布是十分困难的。

在本文中,我们认为当不满足任何条件时,即当去噪步长较大且数据分布为非高斯时,不能保证去噪分布的高斯假设成立 。为了说明这一点,在图 2 中,我们可视化了多模态数据分布的不同去噪步长的真实去噪分布。我们看到,随着去噪步骤变大,真正的去噪分布变得更加复杂和多模态。

上图:一维数据分布 q(x0) 通过扩散过程的演变。底部:以固定的x5为条件的不同步长的真实去噪分布的可视化。**小步长(即q(x4|x5 = X))的真实去噪分布接近于高斯分布。**然而,随着步长的增加,它变得更加复杂和多模态。

使用传统GANS建模去噪分布

我们的目标是减少扩散模型反向过程中所需的去噪扩散步骤T的数量。受上述观察的启发,我们建议对去噪分布进行建模具有表现力的多模态分布。由于条件 GAN 已被证明可以对图像域的复杂条件分布进行建模(Mirza & Osindero,2014;Ledig 等人,2017;Isola 等人,2017),我们采用它们来近似真实去噪分布 q(xt−1|xt)。

具体来说,我们的正向扩散的设置类似于Eq. 1中的扩散模型,主要假设T很小(T≤8),每个扩散步长βt较大。我们的训练是通过使用对抗性损失匹配条件 GAN 生成器 pθ (xt−1|xt) 和 q(xt−1|xt) 来制定的,该对抗性损失最小化每个去噪步骤的散度 Dadv:


简而言之:
给定x0,前向加噪过程为 xt-1 到 xt;在扩散模型 xt 的基础上预测 x'0,随后将其加噪成 x't-1;然后以 xt、xt-1(或 x't-1)和 t 为条件输入到判别器网络中进行对抗性训练。

我们模型的一个自然问题是,为什么不仅仅是训练一个 GAN,它可以使用传统的设置一次性生成样本,而我们的模型通过迭代去噪生成样本。我们的模型比传统的 GAN 有几个优点。众所周知,GAN 存在训练不稳定和模式崩溃的问题(Kodali 等人,2017;Salimans 等人,2016),一些可能的原因包括难以直接从一次性的复杂分布中采样,以及鉴别器仅查看干净样本时的过拟合问题 。相比之下,由于对 xt 的强条件作用,我们的模型将生成过程分解为几个条件去噪扩散步骤,其中每个步骤对模型相对简单。此外,**扩散过程平滑了数据分布(Lyu, 2012),使鉴别器不太可能过拟合。**因此,我们希望我们的模型表现出更好的训练稳定性和模式覆盖率。我们在第 5 节中凭经验验证了传统 GAN 的优势。

理解模式覆盖率

生成模型的结果是否可以 cover Real samples。

相关推荐
DKPT40 分钟前
Java享元模式实现方式与应用场景分析
java·笔记·学习·设计模式·享元模式
KoiHeng4 小时前
操作系统简要知识
linux·笔记
巴伦是只猫5 小时前
【机器学习笔记Ⅰ】11 多项式回归
笔记·机器学习·回归
DKPT8 小时前
Java桥接模式实现方式与测试方法
java·笔记·学习·设计模式·桥接模式
巴伦是只猫10 小时前
【机器学习笔记Ⅰ】13 正则化代价函数
人工智能·笔记·机器学习
X_StarX16 小时前
【Unity笔记02】订阅事件-自动开门
笔记·学习·unity·游戏引擎·游戏开发·大学生
MingYue_SSS16 小时前
开关电源抄板学习
经验分享·笔记·嵌入式硬件·学习
巴伦是只猫16 小时前
【机器学习笔记 Ⅱ】1 神经网络
笔记·神经网络·机器学习
weixin_4373982116 小时前
转Go学习笔记(2)进阶
服务器·笔记·后端·学习·架构·golang
teeeeeeemo17 小时前
回调函数 vs Promise vs async/await区别
开发语言·前端·javascript·笔记