论文原文

论文原文是20年的这一篇 Denoising diffusion probabilistic models 论文的地址: Arxiv.org


题外话,现在网上的教程都是一个抄一个,有个公式打错了结果我发现网上大部分教程都打错了 :-(

模型的整体思路

整体的流程润下图所示:

首先是从训练集开始不断地往上面加高斯噪声,最后直到达到一个纯随机的分布,再训练这个去除噪声的过程,从任意一个纯随机分布开始,一步步地去除噪声,直到还原出最后的图片

加噪声的过程

引理

考虑原输入和一个高斯噪声的加权平均的过程,假设第 步时,原输入为 加上了一个为 的高斯噪声,对应的权重为 ,其中的 由于独立的高斯分布具有可加性,即满足 那么考虑再往前一步的噪声 有:

这其中的

考虑权重 的一个前缀累乘,记

注意到这里的 的符号其实不重要,都是从 中采样的随机高斯噪声,所以我们可以发现第 步的分布本质上只由一系列的权重决定

加噪声的过程

在论文中,加噪的过程被描述为:


如果你对这个式子里面的正态分布为什么有三个参数感到迷惑,你可以理解为第一个分号前面的 是指明这个正态分布是描述变量


那么考虑从最开始的图像加噪 步得到的分布:

根据前面的引理,记 可以得到:

去除噪声的过程

去除噪声的过程简言之就是推到出后验概率 然后一步步地还原回去

已经有论文证明了在 充分小的情况下, 仍然满足正态分布,那么做出如下假设:


而这里面的 就是需要通过神经网络学习的均值参数和方差参数。

接下来考虑怎么去求一个loss,这样就可以优化这两个参数了,注意到如果知道 可以计算

这里面的 是剩下的所有与 无关的项


上面式子中的第一步是根据贝叶斯公式把先验概率转换成后验概率

第二个正比是因为这里已经全是后验概率了,全是高斯噪声,而高斯分布的计算公式是:

去掉第一项就是正比


由于我们知道这个分布是近似为正态分布的,那么把这个正态分布记为:

接下来求这两个参数
根据正态分布的表达式,有: