DDIM算法原理简介-Diffusion Models系列3

这篇文章将向大家简要介绍DDIM算法相关原理。前两篇已经简要的向大家介绍了DDPM算法的基本原理,在DDPM算法中,前向的扩散过程和逆向的去噪过程是“对称”的,而且一般迭代次数都比较高,比如从纯高斯噪声到清晰图片需要成千次的迭代。每一次迭代一般称为一次采样(sample,根据概率分布的特性,通过随概率函数的特性生成随机数),每一次采样都要运行一次去噪网络模型,这样对整个推理的性能有很大的影响(GAN方法生成图像只需要运行 一次网络模型就可以输出最终的结果)。

针对上面DDPM的逆向生成过程的效率和性能问题,DDIM算法在逆向采样方面进行了重新的建模,支持在不需要重新训练DDPM已经训练好的模型的基础上,通过新的采样方式,减少采样步骤,同样能够达到生成高质量图片的效果。通过拟合条件概率分布,得出的结果为:

对上述概率建模推导计算的具体过程在参考引文1中有较为清晰的说明。基于上述公式的采样策略为:

上式中,s为当前的需要采样的step,而k时上次采样的step,其不需要满足近邻关系,只需要满足s<k即可。由于k时刻的已知,加上需要满足前向时的重参化的公式:

即通过转换,可以通过公式的变换,基于已经训练的网络的推理的error输出epsilon和xt,得出x0。

上面的式子中将sigma设为0,也可以设为其他的值,具体可以参看引文1中的说明,下面的代码就是对上述最后两个公式的实现,具体可以参考引文2。

References


by

Tags:

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *