本系列文章介绍了基于扩散模型在图像生成领域应用相关的论文,排名不分先后

1. ILVR:Conditioning method for denoising diffusion probabilistic models

  该文提出一种基于DDPM的条件生成方法,无需额外的训练,仅需一张图像作为参考,就能生成与参考图像具备相似风格的其他图像。并且可以通过改变一些超参数,来控制生成样本与参考图像的相关性以及生成样本的多样性。作者介绍了一种迭代潜变量优化方法(Iterative Latent Variable Refinement,ILVR),通过引入条件c,来得到条件分布p_{\theta}(x_0|c)。首先,在DDPM的重建过程中,我们可以得到这样的一个条件分布p_{\theta}(x_{t-1}|x_t),作者在重建过程中引入了一个条件c,目的是得到分布p_{\theta}(x_{t-1}|x_t,c)进而实现在条件 c的引导下,生成样本x_0。那么作者是如何引入条件c的呢?

给定一个参考图像 y,并对其进行一系列的下采样过程\phi_{N}(\cdot),其中N NN表示下采样的倍数,如 N=8,16,32,…。然后,作者给出的条件c是令生成的图像x_0其经过下采样后的图像\phi_{N}(x_0)与下采样后的参考图像\phi_{N}(y)相同,分解到生成过程的每一步中就是

p_{\theta}(x_{t-1}|x_t,c)\approx p_{\theta}(x_{t-1}|x_t,\phi_{N}(x_{t-1})=\phi_{N}(y_{t-1}))

其中y_t是根据输入参考y,利用DDPM的扩散过程得到的。具体的实现过程如下图所示

首先,利用DDPM的生成过程得到无条件生成结果x’_{t-1};然后,利用DDPM的扩散过程得到条件编码y_{t-1};最后,利用下式得到条件生成结果x_{t-1}=\phi_{N}(y_{t-1})+x’_{t-1}-\phi_{N}(x’_{t-1})。算法流程图如下

可以看到整个算法的实现过程非常简单,而且无需训练,只需要对DDPM模型进行小幅改动即可实现。并且通过调整下采样的倍数N,和重建过程中引入条件的步数,就能够有效的控制生成结果。如下图所示

可以看到下采样的倍数越小,生成的结果与参考图像的相似性就越高,这是因为参考图像中保留了更多的细节信息;随着下采样倍数增大,生成结果就具备更高的多样性,其仅保留了参考图像中低频的信息,如颜色主题等。另一方面,如果增加条件的步数多,如Step 125就是指从第1000步到第125步都进行条件引导,则生成的结果也更接近参考图像。反之,如果仅在开始阶段进行引导,生成的结果与参考图像差异就会更大,如Step 875。
  综上,该文通过简单的参考图像作为引导,实现了无需训练的条件图像生成,并且可以运用到图像变换、图画到照片、根据涂鸦编辑图像等任务中。