Denoising Diffusion Probabilistic Models(DDPM)公式推导

Denoising Diffusion Probabilistic Models(DDPM,去噪扩散概率模型)

公式推导

前向过程,加噪过程

前向过程的目标是通过原始图片得到添加了噪声的图片。

x 0 x_0 x0表示原始图片 , x t x_t xt表示添加了噪声的图片, ϵ t ∼ N ( 0 , 1 ) \epsilon_t \sim N(0,1) ϵtN(0,1), ϵ ∼ N ( 0 , 1 ) \epsilon \sim N(0,1) ϵN(0,1)
x t = α t x t − 1 + β t ϵ t (1) x_t = \sqrt{\alpha_t}x_{t-1}+\sqrt{\beta_t}\epsilon_t \tag{1} xt=αt xt1+βt ϵt(1)

x t − 1 = α t − 1 x t − 2 + β t − 1 ϵ t − 1 (2) x_{t-1} = \sqrt{\alpha_{t-1}}x_{t-2}+\sqrt{\beta_{t-1}}\epsilon_{t-1} \tag{2} xt1=αt1 xt2+βt1 ϵt1(2)

合并公式(1), (2)得到
x t = α t α t − 1 x t − 2 + α t 1 − α t − 1 ϵ t − 1 + 1 − α t ϵ t (3) x_t = \sqrt{\alpha_t\alpha_{t-1}}x_{t-2}+\sqrt{\alpha_t}\sqrt{1-\alpha_{t-1}}\epsilon_{t-1}+\sqrt{1-\alpha_t}\epsilon{t} \tag{3} xt=αtαt1 xt2+αt 1αt1 ϵt1+1αt ϵt(3)
用重参数化技巧(正态分布的可加性),合并公式(3)中的两个高斯噪声 ϵ t − 1 \epsilon_{t-1} ϵt1, ϵ t \epsilon_{t} ϵt,表示为 ϵ \epsilon ϵ
N ( 0 , α t − α t α t − 1 ) + N ( 0 , 1 − α t ) = N ( 0 , 1 − α t α t − 1 ) (4) N(0,\alpha_t-\alpha_t\alpha_{t-1})+N(0,1-\alpha_t) = N(0,1-\alpha_t\alpha_{t-1}) \tag{4} N(0,αtαtαt1)+N(0,1αt)=N(0,1αtαt1)(4)

x t = α t α t − 1 x t − 2 + 1 − α t α t − 1 ϵ (5) x_t = \sqrt{\alpha_t\alpha_{t-1}}x_{t-2}+\sqrt{1-\alpha_t\alpha_{t-1}}\epsilon \tag{5} xt=αtαt1 xt2+1αtαt1 ϵ(5)

运用数学归纳法得到 x t x_t xt x t − k x_{t-k} xtk的关系:
x t = α t α t − 1 ⋯ α t − k + 1 x t − k + 1 − α t α t − 1 ⋯ α t − k + 1 ϵ (6) x_t = \sqrt{\alpha_t\alpha_{t-1}\cdots\alpha_{t-k+1}}x_{t-k}+\sqrt{1-\alpha_t\alpha_{t-1}\cdots\alpha_{t-k+1}}\epsilon \tag{6} xt=αtαt1αtk+1 xtk+1αtαt1αtk+1 ϵ(6)

进一步得到 x t x_t xt x 0 x_{0} x0的关系:
x t = α t α t − 1 ⋯ α 1 x 0 + 1 − α t α t − 1 ⋯ α 1 ϵ (7) x_t = \sqrt{\alpha_t\alpha_{t-1}\cdots\alpha_{1}}x_{0}+\sqrt{1-\alpha_t\alpha_{t-1}\cdots\alpha_{1}}\epsilon \tag{7} xt=αtαt1α1 x0+1αtαt1α1 ϵ(7)

为了方便表达,使 α ‾ = α t α t − 1 ⋯ α 1 \overline{\alpha}=\alpha_t\alpha_{t-1}\cdots\alpha_{1} α=αtαt1α1
x t = α ‾ x 0 + 1 − α ‾ ϵ (8) x_t = \sqrt{\overline{\alpha}}x_{0}+\sqrt{1-\overline{\alpha}}\epsilon \tag{8} xt=α x0+1α ϵ(8)
前向过程推导结束

反向过程,去噪过程

反向过程的目标是从最后的噪声图片 x T x_T xT中恢复出原始图片 x 0 x_0 x0.

贝叶斯定理[^3]
P ( A ∣ B ) = P ( B ∣ A ) ⋅ P ( A ) P ( B ) (9) P(A \mid B) = \frac{P(B \mid A) \cdot P(A)}{P(B)} \tag{9} P(AB)=P(B)P(BA)P(A)(9)
P ( A ∣ B ) P(A \mid B) P(AB): posterior,后验概率。 P ( B ∣ A ) P(B \mid A) P(BA): likelihood,似然。 P ( A ) P(A) P(A): prior,先验概率。 P ( B ) P(B) P(B): Evidence,证据。

在反向过程中,我们想从 x t x_t xt得到 x t − 1 x_{t-1} xt1,也就是 P ( x t − 1 ∣ x t ) P(x_{t-1}\mid x_t) P(xt1xt),根据贝叶斯定理可知
P ( x t − 1 ∣ x t ) = P ( x t ∣ x t − 1 ) ⋅ P ( x t − 1 ) P ( x t ) (10) P(x_{t-1}\mid x_t) = \frac{P(x_t \mid x_{t-1})\cdot P(x_{t-1})}{P(x_t)} \tag{10} P(xt1xt)=P(xt)P(xtxt1)P(xt1)(10)

根据公式(1),可知
P ( x t ∣ x t − 1 ) ∼ N ( x t − 1 , 1 − α t ) (11) P(x_t \mid x_{t-1}) \sim N(\sqrt{x_{t-1}},1-\alpha_t) \tag{11} P(xtxt1)N(xt1 ,1αt)(11)

根据公式(8),可知
P ( x t ∣ x 0 ) ∼ N ( α t ‾ x 0 , 1 − α t ‾ ) (12) P(x_t \mid x_0) \sim N(\sqrt{\overline{\alpha_t}}x_0,1-\overline{\alpha_t}) \tag{12} P(xtx0)N(αt x0,1αt)(12)

P ( x t − 1 ∣ x 0 ) ∼ N ( α t − 1 ‾ x 0 , 1 − α t − 1 ‾ ) (13) P(x_{t-1} \mid x_0) \sim N(\sqrt{\overline{\alpha_{t-1}}}x_0,1-\overline{\alpha_{t-1}}) \tag{13} P(xt1x0)N(αt1 x0,1αt1)(13)

根据正态分布的指数形式表达式可以将公式(10)化简为

P ( x t − 1 ∣ x t ) ∼ N ( α t ( 1 − α t − 1 ‾ ) 1 − α t ‾ x t + α t − 1 ‾ ( 1 − α t ) 1 − α t ‾ x 0 ,   1 − α t 1 − α t − 1 ‾ 1 − α t ‾ ) (14) P(x_{t-1}\mid x_t) \sim N(\frac{\sqrt{\alpha_t}(1-\overline{\alpha_{t-1}})}{1-\overline{\alpha_t}}x_t+\frac{\sqrt{\overline{\alpha_{t-1}}}(1-\alpha_t)}{1-\overline{\alpha_t}}x_0,~ {\frac{\sqrt{1-\alpha_t}\sqrt{1-\overline{\alpha_{t-1}}}}{\sqrt{1-\overline{\alpha_t}}}}) \tag{14} P(xt1xt)N(1αtαt (1αt1)xt+1αtαt1 (1αt)x0, 1αt 1αt 1αt1 )(14)
根据公式(8) 得到
x 0 = x t − 1 − α t ‾ × ϵ α t ‾ (15) x_0 = \frac{x_t-\sqrt{1-\overline{\alpha_t}}\times\epsilon}{\sqrt{\overline{\alpha_t}}} \tag{15} x0=αt xt1αt ×ϵ(15)
最后可知:
P ( x t − 1 ∣ x t ) ∼ N ( α t ( 1 − α t − 1 ‾ ) 1 − α t ‾ x t + α t − 1 ‾ ( 1 − α t ) 1 − α t ‾ × x t − 1 − α t ‾ × ϵ α t ‾ ,   1 − α t 1 − α t − 1 ‾ 1 − α t ‾ ) (16) P(x_{t-1}\mid x_t) \sim N(\frac{\sqrt{\alpha_t}(1-\overline{\alpha_{t-1}})}{1-\overline{\alpha_t}}x_t+\frac{\sqrt{\overline{\alpha_{t-1}}}(1-\alpha_t)}{1-\overline{\alpha_t}}\times \frac{x_t-\sqrt{1-\overline{\alpha_t}}\times\epsilon}{\sqrt{\overline{\alpha_t}}},~ {\frac{\sqrt{1-\alpha_t}\sqrt{1-\overline{\alpha_{t-1}}}}{\sqrt{1-\overline{\alpha_t}}}}) \tag{16} P(xt1xt)N(1αtαt (1αt1)xt+1αtαt1 (1αt)×αt xt1αt ×ϵ, 1αt 1αt 1αt1 )(16)
公式(16)表示通过 x t x_t xt ϵ \epsilon ϵ可以采样出一个上一时刻的图片。用一个神经网络。输入 x t x_t xt预测 ϵ \epsilon ϵ,得到前一时刻的概率分布,然后用这个概率分布随机采样,就得到了前一时刻的图像 x t − 1 x_{t-1} xt1。以上公式推导参考B站大白话AI[^4]

参考:

[^1]ascha Sohl-Dickstein, Eric Weiss, Niru Maheswaranathan, and Surya Ganguli. Deep unsupervised learning using nonequilibrium thermodynamics. In International Conference on Machine Learning, pages 2256–2265, 2015.

[^2] 马尔可夫链:Markov chain

[^3] 贝叶斯公式:Bayes’ theorem

[^4] DDPM公式推导 B站大白话AI

文章信息

发表时间:2020,发表地点:NuerPIS,作者:Jonathan Ho,机构:UC Berkeley.

github:DDPM

原发表网站引用模板:

@inproceedings{NEURIPS2020_4c5bcfec,

author = {Ho, Jonathan and Jain, Ajay and Abbeel, Pieter},

booktitle = {Advances in Neural Information Processing Systems},

editor = {H. Larochelle and M. Ranzato and R. Hadsell and M.F. Balcan and H. Lin},

pages = {6840--6851},

publisher = {Curran Associates, Inc.},

title = {Denoising Diffusion Probabilistic Models},

url = {[https://proceedings.neurips.cc/paper_files/paper/2020/file/4c5bcfec8584af0d967f1ab10179ca4b-Paper.pdf}](https://proceedings.neurips.cc/paper_files/paper/2020/file/4c5bcfec8584af0d967f1ab10179ca4b-Paper.pdf%7D),

volume = {33},

year = {2020}

}
  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
DDPMDenoising Diffusion Probabilistic Models)和DDIM(Denoising Diffusion Implicit Models)是两种基于扩散过程的图像去噪模型。它们的主要区别在于模型结构和学习策略。 首先,DDPM和DDIM的模型结构存在差异。DDPM是基于生成对抗网络(GAN)的模型,它将一个噪声样本通过一个潜在空间的扩散过程逐渐转换为真实样本。DDPM使用自回归模型来建模噪声样本和真实样本之间的条件分布,并通过学习逆过程来实现去噪。而DDIM是基于自编码器的模型,它将一个噪声样本通过逐步更改噪声水平来实现去噪。DDIM使用隐式神经网络来学习噪声样本和真实样本之间的条件分布,不需要生成样本或潜在空间。 其次,DDPM和DDIM的学习策略也有所不同。DDPM使用反向过程来学习,即从真实样本逐渐生成噪声样本。这种学习方式需要采样随机扰动来模拟生成噪声样本的过程。而DDIM使用前向模拟扰动过程来学习,即从噪声样本逐步还原为真实样本。这种学习方式不需要随机采样,可以更高效地生成噪声和去噪样本。 总结来说,DDPM和DDIM都是通过扩散过程实现图像去噪的模型,但它们在模型结构和学习策略上存在差异。DDPM使用生成对抗网络,学习逆过程去噪;而DDIM使用自编码器,学习前向过程去噪。这些区别使得它们在处理图像去噪问题时具有不同的优势和适用场景。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值