1.前向过程->加噪,得到Xt时刻的分布
每一个时刻都要添加高斯噪声,后一时刻都是由前一时刻增加噪声得到
这是不断构建标签(噪声)的过程!后续要用到这里加了的噪声Z
-
, β属于[0.0001,0.002]递增,所以α会越来越小(衰减)
-
z是噪音,符合高斯分布.
一开始加点噪声就很有效果,越往后得加噪越多才行.
3.引入:后一时刻是由前一时刻加噪得到,那么如何一步从X0到Xt呢?
前提:噪声符合高斯分布:Z1,Z2,…~N(0,I),都是标准正态分布,在z前乘以系数相当于对方差进行了改变
因为
,代入(2)得:
其中,z1N(0,1-αt),z2N(αt(1-αt-1)),进行标准化->两式相加,1-αt+αt(1-αt-1)=1-αt * αt-1->
规律就出来了->只要已知X0和第n步就可以知道Xn的分布了,不需要管中间的过程
->α的累乘
2.逆向过程->去噪,生成图像
(1)求Xt-1
-
已知q(Xt|Xt-1):
,那么使用贝叶斯公式 -
,其中Xt-1和Xt可以由X0求出来,所以等式右边三项都是已知的 -
,三个式子都服从N(µ,∂^2) -
q(Xt|Xt-1,X0) * q(Xt-1|X0) / q(Xt|X0):乘法相当于在分布内相加,除法相当于分部内相减->
-
所以得到µ就是:
,但在逆向过程中X0是未知的. -
因此我们利用前向过程的公式
,估计X0-> -
最终结果:
(2)求Zt(的近似解)
Zt其实就是我们要估计的每个时刻的噪声
- 训练一个模型来计算Zt,
- 论文中使用的是Unet(编码与解码).
- 模型的输入参数为:当前时刻的分布和时刻t