想要研究多模态数据生成就要研究diffusion架构。今天通过这个论文来学习一下。
在此之前先通过博文扩散模型 (Diffusion Model) 之最全详解图解-CSDN博客学习一下。
GAN就是生成对抗模型,让两个模型打擂台,一个造假一个打假。
而diffusion模型则是从原始数据Pdata(真实的图像)出发,不断地给他加上高斯噪声,让他面目全非,然后再复原。这个复原过程是可以学习的。
上述过程也被称为扩散与逆扩散。
这里要记录两个概念:后验概率与马尔卡夫链。
后验概率就是说在某件事情已经发生的情况下,推测这件事是因为什么原因产生的概率。在diffusion模型中,我们是先加噪声,然后逆向还原,这个过程其实就是计算后验概率的过程,我们先得到被加了噪声的图片,然后以此为基础推测各个像素点经历了什么,原本是什么样。
马尔卡夫链就是一系列随机过程,每一个节点的情况只和上一个节点的情况有关,不会受到上上个节点等更远的节点的影响。diffusion模型中的扩散过程就是一个马尔卡夫过程。
接下来是对一些细节的更加数学化的描述。
前向过程的详细解释
这里就遇到一个问题了。我们做深度学习肯定要能反向传播,要能求导,但这边全都是随机过程,系数在哪里?
这样就有系数,可以导了。