DDPM公式推导(一)

去噪扩散概率模型

Title:Denoising Diffusion Probabilistic Models

paper是UC Berkeley发表在NIPS 2020的工作

paper地址

Abstract

我们使用扩散概率模型(一类受非平衡热力学启发的潜在变量模型)展示了高质量的图像合成结果。根据扩散概率模型与采用Langevin动力学的去噪得分匹配之间的新颖联系设计的加权变分下界进行训练,我们获得了最佳结果。我们的模型自然而然地使用一种渐进的有损解压方案,这可以解释为自回归解码的推广。在无条件CIFAR10数据集上,我们取得了9.46的Inception得分和3.17的最先进的FID得分。在 256 × 256 256 \times 256 256×256 的LSUN数据集上,我们获得了与ProgressiveGAN相似的样本质量。代码。

1 Introduction

各种深度生成模型最近在多种数据模态中展示了高质量的样本。生成对抗网络(GANs)、自回归模型、流模型和变分自编码器(VAEs)已经合成了引人注目的图像和音频样本【14, 27, 3, 58, 38, 25, 10, 32, 44, 57, 26, 33, 45】。同时,并且基于能量的建模和得分匹配方面的显著进展也产生了与GANs可媲美的图像【11, 55】。

图1

图 1:在 CelebA-HQ 256 × 256(左)和无条件 CIFAR10(右)上生成的样本

图2

图 2:本工作中考虑的有向图模型。

本文介绍了扩散概率模型的进展【53】。扩散概率模型(简称为“扩散模型”)是一种参数化的马尔可夫链,通过变分推断进行训练,在有限时间内生成与数据匹配的样本。这个链的转移过程被学习来逆转扩散过程,即一个逐渐向数据中添加噪声的马尔可夫链,直到信号被完全破坏。当扩散过程由少量高斯噪声组成时,只需将采样链的转移过程也设置为条件高斯分布,从而允许采用特别简单的神经网络参数化方式。

扩散模型定义简单且训练高效,但据我们所知,尚未有研究表明它们能够生成高质量样本。我们展示了扩散模型实际上能够生成高质量样本,有时甚至优于其他类型生成模型的已发表结果(第4节)。此外,我们展示了一种特定的扩散模型参数化方法,这种方法揭示了在训练过程中扩散模型与多个噪声级别上的去噪得分匹配,以及在采样过程中与退火Langevin动力学的等价性(第3.2节)【55, 61】。我们使用这种参数化方法获得了最好的样本质量结果(第4.2节),因此我们认为这种等价性是我们主要的贡献之一。

尽管我们的模型样本质量较高,但与其他基于似然的模型相比,我们的模型在对数似然上并不具有竞争力(不过,我们的模型在对数似然上优于已报告的退火重要性采样对能量基模型和得分匹配产生的大量估计【11, 55】)。我们发现,大多数模型的无损编码长度主要用于描述难以察觉的图像细节(第4.3节)。我们以有损压缩的语言对这一现象进行了更精细的分析,并展示了扩散模型的采样过程是一种渐进解码形式,类似于按照位排序进行的自回归解码,这大大扩展了自回归模型通常可能实现的范围。

2 Background

扩散模型【53】是一种以 p θ ( x 0 ) : = ∫ p θ ( x 0 : T ) d x 1 : T p_\theta\left(\mathbf{x}_0\right):=\int p_\theta\left(\mathbf{x}_{0: T}\right) d \mathbf{x}_{1: T} pθ(x0):=pθ(x0:T)dx1:T 形式的潜在变量模型,其中 x 1 , … , x T \mathbf{x}_1, \ldots, \mathbf{x}_T x1,,xT 是与数据 x 0 ∼ q ( x 0 ) \mathbf{x}_0 \sim q\left(\mathbf{x}_0\right) x0q(x0) 同维度的潜变量。联合分布 p θ ( x 0 : T ) p_\theta\left(\mathbf{x}_{0: T}\right) pθ(x0:T) 被称为反向过程,其定义为从 p ( x T ) = N ( x T ; 0 , I ) p\left(\mathbf{x}_T\right)=\mathcal{N}\left(\mathbf{x}_T ; \mathbf{0}, \mathbf{I}\right) p(xT)=N(xT;0,I) 开始的学习高斯过渡的马尔科夫链:

p θ ( x 0 : T ) : = p ( x T ) ∏ t = 1 T p θ ( x t − 1 ∣ x t ) , p θ ( x t − 1 ∣ x t ) : = N ( x t − 1 ; μ θ ( x t , t ) , Σ θ ( x t , t ) ) ( 1 ) p_\theta\left(\mathbf{x}_{0: T}\right):=p\left(\mathbf{x}_T\right) \prod_{t=1}^T p_\theta\left(\mathbf{x}_{t-1} \mid \mathbf{x}_t\right), \quad p_\theta\left(\mathbf{x}_{t-1} \mid \mathbf{x}_t\right):=\mathcal{N}\left(\mathbf{x}_{t-1} ; \boldsymbol{\mu}_\theta\left(\mathbf{x}_t, t\right), \mathbf{\Sigma}_\theta\left(\mathbf{x}_t, t\right)\right) \quad(1) pθ(x0:T):=p(xT)t=1Tpθ(xt1xt),pθ(xt1xt):=N(xt1;μθ(xt,t),Σθ(xt,t))(1)

将扩散模型与其他类型的潜在变量模型区别开来的是,近似后验 q ( x 1 : T ∣ x 0 ) q\left(\mathbf{x}_{1: T} \mid \mathbf{x}_0\right) q(x1:Tx0)(被称为前向过程或扩散过程)固定为一个马尔科夫链,该链根据方差调度 β 1 , … , β T \beta_1, \ldots, \beta_T β1,,βT 逐渐向数据添加高斯噪声:

q ( x 1 : T ∣ x 0 ) : = ∏ t = 1 T q ( x t ∣ x t − 1 ) , q ( x t ∣ x t − 1 ) : = N ( x t ; 1 − β t x t − 1 , β t I ) ( 2 ) q\left(\mathbf{x}_{1: T} \mid \mathbf{x}_0\right):=\prod_{t=1}^T q\left(\mathbf{x}_t \mid \mathbf{x}_{t-1}\right), \quad q\left(\mathbf{x}_t \mid \mathbf{x}_{t-1}\right):=\mathcal{N}\left(\mathbf{x}_t ; \sqrt{1-\beta_t} \mathbf{x}_{t-1}, \beta_t \mathbf{I}\right)\quad(2) q(x1:Tx0):=t=1Tq(xtxt1),q(xtxt1):=N(xt;1βt xt1,βtI)(2)

训练过程主要是通过优化变分下界(也称作证据下界,或ELBO)的负对数似然性来完成的:

E [ − log ⁡ p θ ( x 0 ) ] ≤ E q [ − log ⁡ p θ ( x 0 : T ) q ( x 1 : T ∣ x 0 ) ] = E q [ − log ⁡ p ( x T ) − ∑ t ≥ 1 log ⁡ p θ ( x t − 1 ∣ x t ) q ( x t ∣ x t − 1 ) ] = : L ( 3 ) \mathbb{E}\left[-\log p_\theta\left(\mathbf{x}_0\right)\right] \leq \mathbb{E}_q\left[-\log \frac{p_\theta\left(\mathbf{x}_{0: T}\right)}{q\left(\mathbf{x}_{1: T} \mid \mathbf{x}_0\right)}\right]=\mathbb{E}_q\left[-\log p\left(\mathbf{x}_T\right)-\sum_{t \geq 1} \log \frac{p_\theta\left(\mathbf{x}_{t-1} \mid \mathbf{x}_t\right)}{q\left(\mathbf{x}_t \mid \mathbf{x}_{t-1}\right)}\right]=: L \quad(3) E[logpθ(x0)]Eq[logq(x1:Tx0)pθ(x0:T)]=Eq[logp(xT)t1logq(xtxt1)pθ(xt1xt)]=:L(3)

可以通过重参数化【33】学习前向过程的方差 β t \beta_t βt,或者将其视为恒定的超参数,并通过选择高斯条件下的 p θ ( x t − 1 ∣ x t ) p_\theta\left(\mathbf{x}_{t-1} \mid \mathbf{x}_t\right) pθ(xt1xt),确保反向过程的表达力,因为当 β t \beta_t βt 很小的时候,这两个过程具有相同的函数形式【53】。前向过程的一个显著特性是,它允许在任意时间步长 t t t 以封闭形式采样 x t \mathbf{x}_t xt:使用符号 α t : = 1 − β t \alpha_t:=1-\beta_t αt:=1βt α ˉ t : = ∏ s = 1 t α s \bar{\alpha}_t:=\prod_{s=1}^t \alpha_s αˉt:=s=1tαs,我们有:

q ( x t ∣ x 0 ) = N ( x t ; α ˉ t x 0 , ( 1 − α ˉ t ) I ) ( 4 ) q\left(\mathbf{x}_t \mid \mathbf{x}_0\right)=\mathcal{N}\left(\mathbf{x}_t ; \sqrt{\bar{\alpha}_t} \mathbf{x}_0,\left(1-\bar{\alpha}_t\right) \mathbf{I}\right)\quad(4) q(xtx0)=N(xt;αˉt x0,(1αˉt)I)(4)

因此,我们可以通过使用随机梯度下降优化 L L L的随机项进行高效训练。进一步的改进来自于通过将 L L L(3)重写为以下格式来降低方差:
E q [ D K L ( q ( x T ∣ x 0 ) ∥ p ( x T ) ) ⏟ L T + ∑ t > 1 D K L ( q ( x t − 1 ∣ x t , x 0 ) ∥ p θ ( x t − 1 ∣ x t ) ) ⏟ L t − 1 − log ⁡ p θ ( x 0 ∣ x 1 ) ⏟ L 0 ] ( 5 ) \mathbb{E}_q[\underbrace{D_{\mathrm{KL}}\left(q\left(\mathbf{x}_T \mid \mathbf{x}_0\right) \| p\left(\mathbf{x}_T\right)\right)}_{L_T}+\sum_{t>1} \underbrace{D_{\mathrm{KL}}\left(q\left(\mathbf{x}_{t-1} \mid \mathbf{x}_t, \mathbf{x}_0\right) \| p_\theta\left(\mathbf{x}_{t-1} \mid \mathbf{x}_t\right)\right)}_{L_{t-1}} \underbrace{-\log p_\theta\left(\mathbf{x}_0 \mid \mathbf{x}_1\right)}_{L_0}]\quad(5) Eq[LT DKL(q(xTx0)p(xT))+t>1Lt1 DKL(q(xt1xt,x0)pθ(xt1xt))L0 logpθ(x0x1)](5)
(详情请参见附录A。这些项的标签用于第3节。)公式(5)使用KL散度直接将 p θ ( x t − 1 ∣ x t ) p_\theta\left(\mathbf{x}_{t-1} \mid \mathbf{x}_t\right) pθ(xt1xt)与条件于 x 0 \mathbf{x}_0 x0时可以处理的前向过程后验进行比较:
q ( x t − 1 ∣ x t , x 0 ) = N ( x t − 1 ; μ ~ t ( x t , x 0 ) , β ~ t I ) ( 6 ) where  μ ~ t ( x t , x 0 ) : α ˉ t − 1 β t 1 − α ˉ t x 0 + α t ( 1 − α ˉ t − 1 ) 1 − α ˉ t x t and  β ~ t : = 1 − α ˉ t − 1 1 − α ˉ t β t ( 7 ) \begin{aligned} q\left(\mathbf{x}_{t-1} \mid \mathbf{x}_t, \mathbf{x}_0\right) & =\mathcal{N}\left(\mathbf{x}_{t-1} ; \tilde{\boldsymbol{\mu}}_t\left(\mathbf{x}_t, \mathbf{x}_0\right), \tilde{\beta}_t \mathbf{I}\right) \quad(6)\\ \text { where } \quad \tilde{\boldsymbol{\mu}}_t\left(\mathbf{x}_t, \mathbf{x}_0\right) & : \frac{\sqrt{\bar{\alpha}_{t-1}} \beta_t}{1-\bar{\alpha}_t} \mathbf{x}_0+\frac{\sqrt{\alpha_t}\left(1-\bar{\alpha}_{t-1}\right)}{1-\bar{\alpha}_t} \mathbf{x}_t \quad \text { and } \quad \tilde{\beta}_t:=\frac{1-\bar{\alpha}_{t-1}}{1-\bar{\alpha}_t} \beta_t \quad(7) \end{aligned} q(xt1xt,x0) where μ~t(xt,x0)=N(xt1;μ~t(xt,x0),β~tI)(6):1αˉtαˉt1 βtx0+1αˉtαt (1αˉt1)xt and β~t:=1αˉt1αˉt1βt(7)
因此,公式(5)中的所有KL散度都是高斯间的比较,所以它们可以以Rao-Blackwellized的方式通过封闭形式的表达式计算,而不是使用高方差的蒙特卡洛估计。

前向加噪过程的推导,即式(2)和式(4)
前向加噪( x t − 1 → x t \mathbf{x}_{t-1} \rightarrow \mathbf{x}_t xt1xt):
x t = a t x t − 1 + b t ε t , ε t ∼ N ( 0 , I ) ( a . 1 ) \mathbf{x}_t = a_t\mathbf{x}_{t-1}+b_t\varepsilon_t, \quad \varepsilon_t \sim \mathcal{N}(\mathbf{0}, \boldsymbol{I})\quad(a.1) xt=atxt1+btεt,εtN(0,I)(a.1)
其中 a t a_t at b t b_t bt表示图像与噪声的混合比例, ε t \varepsilon_t εt是噪声,满足 a t 2 + b t 2 = 1 a_t^2+b_t^2=1 at2+bt2=1的约束。
展开上式,得:
x t = a t x t − 1 + b t ε t = a t ( a t − 1 x t − 2 + b t − 1 ε t − 1 ) + b t ε t = a t a t − 1 x t − 2 + a t b t − 1 ε t − 1 + b t ε t = … = ( a t … a 1 ) x 0 + ( a t … a 2 ) b 1 ε 1 + ( a t … a 3 ) b 2 ε 2 + ⋯ + a t b t − 1 ε t − 1 + b t ε t ⏟ 多个相互独立的正态噪声之和  ( a . 2 ) \begin{aligned} \mathbf{x}_t & =a_t \mathbf{x}_{t-1}+b_t \varepsilon_t \\ & =a_t\left(a_{t-1} \mathbf{x}_{t-2}+b_{t-1} \varepsilon_{t-1}\right)+b_t \varepsilon_t \\ & =a_t a_{t-1} \mathbf{x}_{t-2}+a_t b_{t-1} \varepsilon_{t-1}+b_t \varepsilon_t \\ & =\ldots \\ & =\left(a_t \ldots a_1\right) \mathbf{x}_0+\underbrace{\left(a_t \ldots a_2\right) b_1 \varepsilon_1+\left(a_t \ldots a_3\right) b_2 \varepsilon_2+\cdots+a_t b_{t-1} \varepsilon_{t-1}+b_t \varepsilon_t}_{\text {多个相互独立的正态噪声之和 }} \end{aligned}\quad(a.2) xt=atxt1+btεt=at(at1xt2+bt1εt1)+btεt=atat1xt2+atbt1εt1+btεt==(ata1)x0+多个相互独立的正态噪声之和  (ata2)b1ε1+(ata3)b2ε2++atbt1εt1+btεt(a.2)
根据独立高斯的可加性:
假设 X X X Y Y Y是独立的随机变量,并且服从正态分布(因此也是联合正态分布),那么它们的和也是正态分布的。即:
如果
X ∼ N ( μ X , σ X 2 ) Y ∼ N ( μ Y , σ Y 2 ) Z = X + Y \begin{aligned} & X \sim N\left(\mu_X, \sigma_X^2\right) \\ & Y \sim N\left(\mu_Y, \sigma_Y^2\right) \\ & Z=X+Y \end{aligned} XN(μX,σX2)YN(μY,σY2)Z=X+Y
然后
Z ∼ N ( μ X + μ Y , σ X 2 + σ Y 2 ) . Z \sim N\left(\mu_X+\mu_Y, \sigma_X^2+\sigma_Y^2\right) . ZN(μX+μY,σX2+σY2).
这意味着两个独立的正态分布随机变量的和是正态的,其均值是两个均值的和,其方差是两个方差的和。
因此上式可以写为:
x t = ( a t … a 1 ) x 0 + ( a t … a 2 ) 2 b 1 2 + ( a t … a 3 ) 2 b 2 2 + ⋯ + a t 2 b t − 1 2 + b t 2 ε ‾ t , ε ‾ t ∼ N ( 0 , I ) ( a . 3 ) \begin{gathered} \boldsymbol{x}_t=\left(a_t \ldots a_1\right) \boldsymbol{x}_0+\sqrt{\left(a_t \ldots a_2\right)^2 b_1^2+\left(a_t \ldots a_3\right)^2 b_2^2+\cdots+a_t^2 b_{t-1}^2+b_t^2} \overline{\boldsymbol{\varepsilon}}_t, \quad \overline{\boldsymbol{\varepsilon}}_t \sim \mathcal{N}(\mathbf{0}, \mathbf{I}) \end{gathered}\quad(a.3) xt=(ata1)x0+(ata2)2b12+(ata3)2b22++at2bt12+bt2 εt,εtN(0,I)(a.3)
注意到式(a.1)满足 a t 2 + b t 2 = 1 a_t^2+b_t^2=1 at2+bt2=1的约束,下面给出推导。
计算式(a.2)系数的平方和:
( a t … a 1 ) 2 + ( a t … a 2 ) 2 b 1 2 + ( a t … a 3 ) 2 b 2 2 + ⋯ + a t 2 b t − 1 2 + b t 2 = ( a t … a 2 ) 2 a 1 2 + ( a t … a 2 ) 2 b 1 2 + ( a t … a 3 ) 2 b 2 2 + ⋯ + a t 2 b t − 1 2 + b t 2 = ( a t … a 2 ) 2 ( a 1 2 + b 1 2 ) + ( a t … a 3 ) 2 b 2 2 + ⋯ + a t 2 b t − 1 2 + b t 2 = ( a t … a 3 ) 2 ( a 2 2 ( a 1 2 + b 1 2 ) + b 2 2 ) + ⋯ + a t 2 b t − 1 2 + b t 2 = a t 2 ( a t − 1 2 ( … ( a 2 2 ( a 1 2 + b 1 2 ) + b 2 2 ) + … ) + b t − 1 2 ) + b t 2 ( a . 3 ) \begin{aligned} & \left(a_t \ldots a_1\right)^2+\left(a_t \ldots a_2\right)^2 b_1^2+\left(a_t \ldots a_3\right)^2 b_2^2+\cdots+a_t^2 b_{t-1}^2+b_t^2 \\ = & \left(a_t \ldots a_2\right)^2 a_1^2+\left(a_t \ldots a_2\right)^2 b_1^2+\left(a_t \ldots a_3\right)^2 b_2^2+\cdots+a_t^2 b_{t-1}^2+b_t^2 \\ = & \left(a_t \ldots a_2\right)^2\left(a_1^2+b_1^2\right)+\left(a_t \ldots a_3\right)^2 b_2^2+\cdots+a_t^2 b_{t-1}^2+b_t^2 \\ = & \left(a_t \ldots a_3\right)^2\left(a_2^2\left(a_1^2+b_1^2\right)+b_2^2\right)+\cdots+a_t^2 b_{t-1}^2+b_t^2 \\ = & a_t^2\left(a_{t-1}^2\left(\ldots\left(a_2^2\left(a_1^2+b_1^2\right)+b_2^2\right)+\ldots\right)+b_{t-1}^2\right)+b_t^2 \end{aligned}\quad(a.3) ====(ata1)2+(ata2)2b12+(ata3)2b22++at2bt12+bt2(ata2)2a12+(ata2)2b12+(ata3)2b22++at2bt12+bt2(ata2)2(a12+b12)+(ata3)2b22++at2bt12+bt2(ata3)2(a22(a12+b12)+b22)++at2bt12+bt2at2(at12((a22(a12+b12)+b22)+)+bt12)+bt2(a.3)
如果满足 a t 2 + b t 2 = 1 a_t^2+b_t^2=1 at2+bt2=1的约束,那么式(a.3)会大大简化。即式(a.2)的系数平方和也为1。记 a ˉ t = ( a t … a 1 ) 2 \bar{a}_t=\left(a_t \ldots a_1\right)^2 aˉt=(ata1)2,式(a.3)可以写成:
x t = a ˉ t x 0 + 1 − a ˉ t ε ˉ t , ε ˉ t ∼ N ( 0 , I ) ( a . 4 ) \mathbf{x}_t=\sqrt{\bar{a}_t} \mathbf{x}_0+\sqrt{1-\bar{a}_t} \bar{\varepsilon}_t, \quad \bar{\varepsilon}_t \sim \mathcal{N}(\mathbf{0}, \boldsymbol{I})\quad(a.4) xt=aˉt x0+1aˉt εˉt,εˉtN(0,I)(a.4)
a t = α t a_t=\sqrt{\alpha_t} at=αt ,代入式(a.4)可得:
x t = α ˉ t x 0 + 1 − α ˉ t ε ˉ t , ε ˉ t ∼ N ( 0 , I ) \mathbf{x}_t=\sqrt{\bar{\alpha}_t} \mathbf{x}_0+\sqrt{1-\bar{\alpha}_t} \bar{\varepsilon}_t, \quad \bar{\varepsilon}_t \sim \mathcal{N}(\mathbf{0}, \boldsymbol{I}) xt=αˉt x0+1αˉt εˉt,εˉtN(0,I)
对应式(4)
α t : = 1 − β t \alpha_t:=1-\beta_t αt:=1βt,重写式(a.1)可得:
x t = ( 1 − β t ) x t − 1 + β t ε t , ε t ∼ N ( 0 , I ) \mathbf{x}_t = \sqrt{(1-\beta_t)}\mathbf{x}_{t-1}+\sqrt{\beta_t}\varepsilon_t, \quad \varepsilon_t \sim \mathcal{N}(\mathbf{0}, \boldsymbol{I}) xt=(1βt) xt1+βt εt,εtN(0,I)
对应式(2)
上述高斯相加的过程,也可以从重参数化来理解:若希望从高斯分布 N ( μ , σ 2 ) N\left(\mu, \sigma^2\right) N(μ,σ2) 中采样,可以先从标准分布 N ( 0 , 1 ) N(0,1) N(0,1) 采样出 z z z ,再得到 σ ∗ z + μ \sigma * z+\mu σz+μ ,这就是我们想要采样的结果。这样做的好处是将随机性转移到了 z z z 这个常量上,而 σ \sigma σ μ \mu μ 则当作仿射变换网络的一部分。
此外, a t 2 + b t 2 = 1 a_t^2+b_t^2=1 at2+bt2=1根本原因在于这个约束保证了信号的总能量不变,同时确保了生成过程中的稳定性和归一化特性。

  • 在信号传输和处理过程中,保持信号的原始能量有助于保留信号的主要特征,从而提高处理结果的保真度。
  • 数值稳定性:归一化处理有助于避免计算过程中出现过大的数值,防止溢出或下溢。
  • a t 2 + b t 2 = 1 a_t^2+b_t^2=1 at2+bt2=1描述的是一个单位圆上的点。在单位圆上,所有点到原点的距离都是1,表示信号和噪声在每一步的组合仍然在一个固定的能量水平上。
  • 信号和噪声的加权可以看作是两个向量的合成,这两个向量在每一步的组合结果仍然保持在单位圆上,确保总的“长度”或能量不变。
  • 数学推导的简化
    从方差合成归一化的视角理解:
    在前向加噪过程中,每一步加噪的形式为:
    x t = 1 − β t x t − 1 + β t ε t , \mathbf{x}_t = \sqrt{1 - \beta_t} \mathbf{x}_{t-1} + \sqrt{\beta_t} \varepsilon_t, xt=1βt xt1+βt εt,
    其中 ε t ∼ N ( 0 , I ) \varepsilon_t \sim \mathcal{N}(\mathbf{0}, \mathbf{I}) εtN(0,I),并且 β t \beta_t βt控制噪声的比例。
    我们来看每一步的方差归一化过程:
    初始时刻 t = 0 t = 0 t=0
    x 0 ∼ N ( 0 , σ 0 2 I ) . \mathbf{x}_0 \sim \mathcal{N}(\mathbf{0}, \sigma_0^2 \mathbf{I}). x0N(0,σ02I).
    t t t步:
    x t = 1 − β t x t − 1 + β t ε t . \mathbf{x}_t = \sqrt{1 - \beta_t} \mathbf{x}_{t-1} + \sqrt{\beta_t} \varepsilon_t. xt=1βt xt1+βt εt.
    在这里, ε t \varepsilon_t εt的方差为 I \mathbf{I} I
    为了计算 x t \mathbf{x}_t xt的方差,我们需要考虑两个独立正态分布变量的加权和:
    Var ( x t ) = Var ( 1 − β t x t − 1 + β t ε t ) = ( 1 − β t ) Var ( x t − 1 ) + β t Var ( ε t ) = ( 1 − β t ) Var ( x t − 1 ) + β t ⋅ I . \begin{aligned} \text{Var}(\mathbf{x}_t) &= \text{Var}(\sqrt{1 - \beta_t} \mathbf{x}_{t-1} + \sqrt{\beta_t} \varepsilon_t) \\ &= (1 - \beta_t) \text{Var}(\mathbf{x}_{t-1}) + \beta_t \text{Var}(\varepsilon_t) \\ &= (1 - \beta_t) \text{Var}(\mathbf{x}_{t-1}) + \beta_t \cdot \mathbf{I}. \end{aligned} Var(xt)=Var(1βt xt1+βt εt)=(1βt)Var(xt1)+βtVar(εt)=(1βt)Var(xt1)+βtI.
    累积方差的归一化
    假设在每一步中, x t − 1 \mathbf{x}_{t-1} xt1的方差为 I \mathbf{I} I(这表示信号保持归一化方差)。则我们希望通过选择合适的 β t \beta_t βt保持方差的归一化,即每一步的 x t \mathbf{x}_t xt也具有单位方差。
    在每一步中:
    ( 1 − β t ) I + β t I = I . (1 - \beta_t) \mathbf{I} + \beta_t \mathbf{I} = \mathbf{I}. (1βt)I+βtI=I.
    这意味着无论我们选择的 β t \beta_t βt是多少,只要满足 β t ∈ [ 0 , 1 ] \beta_t \in [0, 1] βt[0,1],前向加噪过程中的信号和噪声的加权组合将始终保持单位方差 I \mathbf{I} I。这就是方差合成归一化的意义。
    累积效应
    考虑从初始状态 x 0 \mathbf{x}_0 x0到第 t t t步的累积效应,我们有:
    x t = α ˉ t x 0 + 1 − α ˉ t ε ˉ t , \mathbf{x}_t = \sqrt{\bar{\alpha}_t} \mathbf{x}_0 + \sqrt{1 - \bar{\alpha}_t} \bar{\varepsilon}_t, xt=αˉt x0+1αˉt εˉt,
    其中 α ˉ t = ∏ i = 1 t ( 1 − β i ) \bar{\alpha}_t = \prod_{i=1}^t (1 - \beta_i) αˉt=i=1t(1βi)是所有 α i \alpha_i αi的累积乘积, ε ˉ t \bar{\varepsilon}_t εˉt是独立正态噪声的加权和。
    再次计算方差:
    Var ( x t ) = Var ( α ˉ t x 0 + 1 − α ˉ t ε ˉ t ) = α ˉ t Var ( x 0 ) + ( 1 − α ˉ t ) Var ( ε ˉ t ) = α ˉ t I + ( 1 − α ˉ t ) I = I . \begin{aligned} \text{Var}(\mathbf{x}_t) &= \text{Var}(\sqrt{\bar{\alpha}_t} \mathbf{x}_0 + \sqrt{1 - \bar{\alpha}_t} \bar{\varepsilon}_t) \\ &= \bar{\alpha}_t \text{Var}(\mathbf{x}_0) + (1 - \bar{\alpha}_t) \text{Var}(\bar{\varepsilon}_t) \\ &= \bar{\alpha}_t \mathbf{I} + (1 - \bar{\alpha}_t) \mathbf{I} \\ &= \mathbf{I}. \end{aligned} Var(xt)=Var(αˉt x0+1αˉt εˉt)=αˉtVar(x0)+(1αˉt)Var(εˉt)=αˉtI+(1αˉt)I=I.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/26973.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

开源可二次开发的商城小程序源码系统源码 前后端分离 附带完整的安装包以及搭建部署教程

系统概述 本开源商城小程序源码系统是基于现代Web开发技术栈打造的一套高性能、易扩展的电商解决方案。它采用了前后端分离的设计模式,前端使用Vue.js或React等主流框架构建用户界面,后端则采用Node.js/Express、Spring Boot等技术栈处理业务逻辑与数据…

【npm】console工具(含胶囊,表格,gif图片)

这是一款控制台花样输出工具 相对丰富的输出方式 文本输出属性值输出胶囊样式输出表格输出图片输出(含动图) 安装 npm install v_aot引用 import v_aot from "v_aot";字段说明 字段类型属性字符串值字符串类型default 、 primary 、 suc…

可再生能源的未来——Kompas.ai如何助力绿色发展

引言 在全球气候变化和能源危机的背景下,可再生能源逐渐成为能源发展的重要方向。本文将探讨可再生能源的发展趋势,并介绍Kompas.ai如何通过AI技术助力绿色发展的实现。 可再生能源的发展及其重要性 可再生能源是指通过自然资源产生的能源,…

【投稿优惠|权威主办】2024年能源、智能制造与材料科学国际学术会议(ICEIMMS 2024)

【投稿优惠|权威主办】2024年能源、智能制造与材料科学国际学术会议(ICEIMMS 2024) 2024 International Academic Conference on Energy, Intelligent Manufacturing, and Materials Science(ICEIMMS 2024) ▶会议简介 2024年能源…

大语言模型 (LLM) 红队测试:提前解决模型漏洞

大型语言模型 (LLM) 的兴起具有变革性,以其在自然语言处理和生成方面具有与人类相似的卓越能力,展现出巨大的潜力。然而,LLM 也被发现存在偏见、提供错误信息或幻觉、生成有害内容,甚至进行欺骗行为的情况。一些备受关注的事件包括…

《分析模式》第2章中文UML图(已修正原书错误)(2.1-2.6)

DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 (1)已用UML、OCL表示,并翻译为中文。 (2)已修正原书图存在的错误(多重性、角色),之前的…

企业服务器上云还是下云哪种比较好?-尚云Sunclouds

如今很多中小企业都面临一个艰难的选择,是要选择将服务器迁移至数据中心托管(下云)或者直接迁移到云端(上云)。中小企业是社会发展的中坚力量,他们的特点少而明显:资金少,增长快&…

tkinter文件选择对话框

tkinter文件选择对话框 Tkinter 文件选择对话框效果代码 Tkinter 文件选择对话框 Tkinter 提供以下文件选择对话框: tkinter.filedialog.askopenfilename():打开文件对话框,选择单个文件。tkinter.filedialog.askopenfilenames()&#xff1…

2024最值得入手的骨传导耳机有几款?年度精选五款骨传导耳机分享

作为一个爱好运动的人来说,现在天气越来越暖和了,很多人选择外出徒步、越野或者骑行。在运动过程中都会佩戴一些入耳式耳机,但是运动一段时间发现入耳式耳机带久了耳朵会很不舒服,而且出汗了的话对于一些不防水的入耳式耳机的话&a…

SpringBoot 大文件基于md5实现分片上传、断点续传、秒传

SpringBoot 大文件基于md5实现分片上传、断点续传、秒传 SpringBoot 大文件基于md5实现分片上传、断点续传、秒传前言1. 基本概念1.1 分片上传1.2 断点续传1.3 秒传1.4 分片上传的实现 2. 分片上传前端实现2.1 什么是WebUploader?功能特点接口说明事件APIHook 机制 …

MySQL查询数据库中所有表名表结构及注释以及生成数据库文档

MySQL查询数据库中所有表名表结构及注释 生成数据库文档在后面!!! select t.TABLE_COMMENT -- 数据表注释 , c.TABLE_NAME -- 表名称 , c.COLUMN_COMMENT -- 数据项 , c.COLUMN_NAME -- 英文名称 , -- 字段描述 , upper(c.DATA_TYPE) as …

视频字幕提取工具怎么使用?不妨看看这些教程

在探索学习设备使用的过程中,视频教程扮演着极其重要的角色。 但是,我们可能会遇到一些挑战,比如长视频教程的观看效率不高,信息量大难以快速定位到关键点,或者有些人更喜欢阅读文字而非观看视频来学习。 为解决这一…

【JavaEE精炼宝库】多线程(5)单例模式 | 指令重排序 | 阻塞队列

目录 一、单例模式: 1.1 饿汉模式: 1.2 懒汉模式: 1.2.1 线程安全的懒汉模式: 1.2.2 线程安全的懒汉模式的优化: 二、指令重排序 三、阻塞队列 3.1 阻塞队列的概念: 3.2 生产者消费者模型&#xf…

Docker部署常见应用之大数据基础框架Hadoop

文章目录 Hadoop简介主要特点核心组件生态系统 Docker Compose 部署集群参考文章 Hadoop简介 Hadoop是一个开源框架,由Apache软件基金会开发,用于在普通硬件构建的集群中存储和处理大量数据。它最初由Doug Cutting和Mike Cafarella创建,并受…

H5小程序视频编辑解决方案,广泛适用,灵活部署

如何在微信小程序、网页、HTML5等WEB场景中实现轻量化视频制作,满足多样化的运营需求,一直是企业面临的挑战。美摄科技凭借其在视频编辑领域的深厚积累和创新技术,为企业量身打造了一套H5/小程序视频编辑解决方案,助力企业轻松应对…

C++笔记:模板

模板 为什么要学习模板编程 在学习模板之前,一定要有算法及数据结构的基础,以及重载,封装,多态,继承的基础知识,不然会出现看不懂,或者学会了没办法使用。 为什么C会有模板,来看下面…

JVM性能优化案例:减少对象频繁创建

JVM性能优化案例:减少对象频繁创建 案例背景 某金融应用系统在处理大量并发交易时,响应时间过长,并且有时出现内存溢出(OutOfMemoryError)的问题。经过分析,发现问题主要出在频繁的对象创建和较差的内存管…

git的ssh安装,windows通过rsa生成密钥认证问题解决

1 windows下载 官网下载可能出现下载太慢的情况,Git官网下载地址为:官网,推荐官网下载,如无法下载,可移步至CSDN,csdn下载地址:https://download.csdn.net/download/m0_46309087/12428308 2 Gi…

Perl 语言学习进阶

一、如何深入 要深入学习Perl语言的库和框架,可以按照以下步骤进行: 了解Perl的核心模块:Perl有许多核心模块,它们提供了许多常用的功能。了解这些模块的功能和用法是深入学习Perl的第一步。一些常用的核心模块包括:S…

如何在 Windows 10/11 上编辑 PDF [4 种简单方法]

PDF 在大多数设备上都易于查看,但由于其设计用于查看,因此编辑起来可能比较棘手。编辑 PDF 可能比编辑 Microsoft Office 文档更具挑战性。 不用担心,我们已经为你做好了准备。无论你是想添加、删除还是插入文本或图片,你都可以使…