Diffusion Model (1) - DDPM

本文主要推演 DDPM 的数学公式部分,并验证本站配置的 Pandoc 是否成功。

diffusion

前向过程

扩散过程可以看作一条马尔科夫链:

由重参数化技巧,我们有:

如果逐步进行前向采样,采样效率低下,通过推导,得到以下快速采样:

推导

其中 表示从标准高斯分布中随机采样得到的噪声,如此,可通过一步采样处于时间步 的分布。

逆向过程

费勒证明了对于高斯分布,其扩散过程的逆向过程的分布同样是高斯分布。经过前向加噪过程,原图像的数据分布已经成为一个近似的标准高斯分布,即 ,接下来,我们要从标准高斯分布中逆向去噪(也称采样)得到生成图像(数据),推导有:

其中, 是训练完成的网络的参数。 是无法直接求解的(因为如果能直接求解,相当于能直接从噪声中恢复出一个图像,这是我们不知道的,我们正在近似学习这个过程),但是我们知道 这个带条件 的后验分布,如下: 根据贝叶斯公式,这个可以进一步写作: 由于前向过程被建模为一个马尔科夫链,所以新家条件 并不影响原有条件概率,即: 由前向过程,有: 所以有 $$ 线使

$$

损失函数

试图最大化 无法求解,所以采用 的变分推断(简言之,复杂分布无法求解时,采用近似分布求解近似解以解决推断问题),即最大化证据下界: 最大化证据下界等价于最小化下列损失: 上式的 使得 接近于高斯分布, 最小化 前向过程中的后验分布(forward process posterior)与 逆向过程中的后验分布 (由深度神经网络生成)之间的 散度。 采用负对数似然函数做最终预测。这种 会导致模型训练的不稳定,参考文献[1] 中的方法, 是已知的, 忽略,对于 可以使 最小化 散度。由于推断时 不知道,所以我们需要一个近似估计的 作为条件(指导信息),这个 如何估计呢?有两种方法,依靠 或者 架构。用于生成估计 的部件,我们称之为 。参照图像方法继续推导,可以得到简化后的优化目标: 简化后的损失函数:

参考文献

[1] Jonathan Ho, Ajay Jain, and Pieter Abbeel. 2020. Denoising diffusion probabilistic models. Advances in Neural Information Processing Systems 33 (2020), 6840–6851.

声明

本文作者 laozibabac (laozibabac) - Gitee.com,由网站作者重新整理。