[总结] DDPM Diffusion模型各阶段训练和采样过程方案细节和代码逻辑汇总

  • Post author:
  • Post category:其他




算法回顾

DDPM的算法概述

在这里插入图片描述

我们从 Classifier-Free Diffusion Guidance 这篇文章开始。

classifier-free 引导的条件采样过程

在这里插入图片描述

在《Null-text Inversion for Editing Real Images using Guided Diffusion Models》 中,对Classifier-free guidance 形式化为:

在这里插入图片描述

简单的推断一下:

=



ω

ϵ

θ

(

z

t

,

t

,

C

)

+

ϵ

θ

(

z

t

,

t

,

)

ω

ϵ

θ

(

z

t

,

t

,

)

\omega * \epsilon_{\theta}(z_t,t,C)+\epsilon_{\theta}(z_t,t,\oslash )-\omega * \epsilon_{\theta}(z_t,t,\oslash )






ω














ϵ











θ



















(



z










t


















,




t


,




C


)




+









ϵ











θ



















(



z










t


















,




t


,







)













ω














ϵ











θ



















(



z










t


















,




t


,







)






=



ω

(

ϵ

θ

(

z

t

,

t

,

C

)

ϵ

θ

(

z

t

,

t

,

)

)

+

ϵ

θ

(

z

t

,

t

,

)

\omega *( \epsilon_{\theta}(z_t,t,C)-\epsilon_{\theta}(z_t,t,\oslash ))+\epsilon_{\theta}(z_t,t,\oslash )






ω













(



ϵ











θ



















(



z










t


















,




t


,




C


)














ϵ











θ



















(



z










t


















,




t


,







))




+









ϵ











θ



















(



z










t


















,




t


,







)




相当于是在



ϵ

θ

(

z

t

,

t

,

)

\epsilon_{\theta}(z_t,t,\oslash )







ϵ











θ



















(



z










t


















,




t


,







)





的基础上,加强了在



ϵ

θ

(

z

t

,

t

,

C

)

ϵ

θ

(

z

t

,

t

,

)

\epsilon_{\theta}(z_t,t,C)-\epsilon_{\theta}(z_t,t,\oslash )







ϵ











θ



















(



z










t


















,




t


,




C


)














ϵ











θ



















(



z










t


















,




t


,







)





方向上的引导,可以结合下图来进行理解:

在这里插入图片描述

Classifier-Free Diffusion Guidance 中的这张图也表达相同的意思,模型增加分类器指导强度时发生的Inception score增加和样本多样性减少的简化表现。

在这里插入图片描述



框架理解

下面画图理解一下Diffuion Model 发展各个阶段的方法



DDPM



训练过程

在这里插入图片描述



采样过程

在这里插入图片描述



Text-guiled DDPM



训练过程

在这里插入图片描述



采样过程

在这里插入图片描述



Null-text guiled DDPM



训练过程

和 text guiled DDPM一致。



采样过程

在这里插入图片描述



项目代码

下面是论文《GLIDE: Towards Photorealistic Image Generation and Editing with Text-Guided Diffusion Models》的代码逻辑进行梳理,code 链接:https://github.com/openai/glide-text2im/



训练过程
在这里插入图片描述



采样过程

在这里插入图片描述



版权声明:本文为NGUever15原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。