前面推导了一些铺垫知识,现在正式来看diffusion Model。

3 diffusion models

diffusion Model原理之扩散过程与逆扩散过程_标准差

我们说的扩散过程,就是从diffusion Model原理之扩散过程与逆扩散过程_数据分布_02diffusion Model原理之扩散过程与逆扩散过程_正态分布_03的过程,也就是墒增的过程,从有序到无序。反过来是叫做逆扩散过程。

所以可以看到,q模型是一个加噪音的模型,p模型是一个去噪音的过程。

3.1 扩散过程

  • 给定初始数据分布diffusion Model原理之扩散过程与逆扩散过程_标准差_04,可以不断向分布中添加高斯噪音,该噪音的标准差是以固定值diffusion Model原理之扩散过程与逆扩散过程_数据分布_05而确定的,而均值是以固定值diffusion Model原理之扩散过程与逆扩散过程_数据分布_05和当前t时刻的diffusion Model原理之扩散过程与逆扩散过程_算法_07决定的。这个过程是一个马尔可夫链过程。
  • 随着t不断增大,最终数据分布diffusion Model原理之扩散过程与逆扩散过程_正态分布_03变成了一个各向独立的高斯分布。

diffusion Model原理之扩散过程与逆扩散过程_算法_09

diffusion Model原理之扩散过程与逆扩散过程_标准差_10

  • 这里会用到参数重整化的技巧,我们知道diffusion Model原理之扩散过程与逆扩散过程_算法_07服从这个正态分布,所以我们从标准正态分布中采样出z,然后与diffusion Model原理之扩散过程与逆扩散过程_正态分布_12均值相加,与diffusion Model原理之扩散过程与逆扩散过程_数据分布_05标准差相乘。

这里diffusion Model原理之扩散过程与逆扩散过程_算法_14

这里推导一下,我们的diffusion Model原理之扩散过程与逆扩散过程_算法_07可以表示为diffusion Model原理之扩散过程与逆扩散过程_数据分布_16的函数,也可以表示为diffusion Model原理之扩散过程与逆扩散过程_数据分布_02的函数。我们这里设定diffusion Model原理之扩散过程与逆扩散过程_标准差_18

diffusion Model原理之扩散过程与逆扩散过程_正态分布_19

上面公式中z为正态高斯分布,且利用了参数重整化的技巧。(reparameterization trick)

diffusion Model原理之扩散过程与逆扩散过程_数据分布_20

diffusion Model原理之扩散过程与逆扩散过程_数据分布_21

两个高斯分布相加a+b,那么新分布的方差是diffusion Model原理之扩散过程与逆扩散过程_标准差_22.所以上面公式可以化简成:

diffusion Model原理之扩散过程与逆扩散过程_标准差_23

所以我们继续递归上面公式,可以得到: diffusion Model原理之扩散过程与逆扩散过程_正态分布_24

设置diffusion Model原理之扩散过程与逆扩散过程_算法_25

diffusion Model原理之扩散过程与逆扩散过程_标准差_26

所以我们大概可以计算出来,当t需要多大的时候,diffusion Model原理之扩散过程与逆扩散过程_标准差_27是接近0的,就是独立同分布。

这里就可以看出来扩散模型和VAE的区别,从x到z的过程,vae是一个网络预测出来的z,而且并不能保证z和x是无关的;而扩散模型的扩散过程是一个无参的过程,并且z是一个各项同分布的一个分布,与x完全不相关。此外扩散模型的z和x是同尺寸的,而vae没有这个需求

当样本有着越来越多噪音的时候,可以采用更大的update step:

diffusion Model原理之扩散过程与逆扩散过程_数据分布_28

3.2 逆扩散过程

  • 逆过程是从高斯噪音中恢复原始数据。

diffusion Model原理之扩散过程与逆扩散过程_算法_29

现在我们需要推导一下后验扩散条件概率diffusion Model原理之扩散过程与逆扩散过程_正态分布_30

diffusion Model原理之扩散过程与逆扩散过程_正态分布_31

diffusion Model原理之扩散过程与逆扩散过程_算法_32

因为这是马尔可夫过程,所以diffusion Model原理之扩散过程与逆扩散过程_算法_33

现在我们要重点考虑这个部分:

diffusion Model原理之扩散过程与逆扩散过程_算法_34

前者是:

diffusion Model原理之扩散过程与逆扩散过程_算法_35

后者是:

diffusion Model原理之扩散过程与逆扩散过程_数据分布_36

我们只考虑指数部分,因为系数部分一定是正数,所以成正比关系。

diffusion Model原理之扩散过程与逆扩散过程_算法_37

diffusion Model原理之扩散过程与逆扩散过程_算法_38

我们要求解diffusion Model原理之扩散过程与逆扩散过程_数据分布_16,所以将上面公式整理一下形式:

diffusion Model原理之扩散过程与逆扩散过程_标准差_40

后面顶不住了。。先歇着吧