扩散过程随时间进行(连续化)
time-dependent神经网络估计score,用SDE求解反向生成过程
1、SDE
反向过程:
1)w和是标准wiener过程(如布朗运动)
2)f(·, t)是x(t)的漂移系数,是仿射变换
3)g(·)是x(t)的扩散系数,是标量,与x无关
4)上述系数需要在不同的状态和时间上全局Lipschitz连续
5)是x(t)的概率密度,是非结构化先验分布(如固定均值和方差的高斯分布)
6)注意两个公式中的dt的符号相反
2、网络
1)用来估计
2)目标函数
3)转移核是一个高斯分布,其均值和方差均为闭合解
4)本文取一种sub-VP SDE
5)网络结构:NCSN++,NCSN++cont,DDPM++cont
3、采样器
1)ancestral sampling
DDPM的采样方式
2)reverse diffusion samplers
将反向SDE过程离散化
3)predictor-corrector samplers
a)predictor:估计下一时间的sample
b)corrector:用score-based MCMC(Markov chain Monte Carlo)矫正估计的sample的边际分布
SMLD可以看做是用identity function作为predictor,annealed Langevin dynamics作为corrector;DDPM可以看做是用ancestral sampling作为predictor,identity作为corrector
4、优点
1)训好的unconditional模型可直接用于class-conditional generation
2)SMLD和DDPM可以看做SDE的离散化特例
SMLD,当t→时,Variance Exploding (VE):
DDPM,当t→时,Variance Preserving (VP):
3)用于条件生成(如图像插补、图像上色等)
用一个单独的模型来学习forward过程,然后计算其梯度,用于条件生成
5、ODE
1)确定性过程
2)任何数据x(0)可以被编码为隐空间的x(T),相应的x(T)可以被解码为x(0)。可用于图像编辑(如插值、温度缩放)
3)可以在accuracy和efficiency之间trade off