论文笔记(六十三)Understanding Diffusion Models: A Unified Perspective(三)

Understanding Diffusion Models: A Unified Perspective(三)

文章概括

引用:

bash 复制代码
@article{luo2022understanding,
  title={Understanding diffusion models: A unified perspective},
  author={Luo, Calvin},
  journal={arXiv preprint arXiv:2208.11970},
  year={2022}
}
markup 复制代码
Luo, C., 2022. Understanding diffusion models: A unified perspective. arXiv preprint arXiv:2208.11970.

原文: https://arxiv.org/abs/2208.11970
代码、数据和视频: https://arxiv.org/abs/2208.11970

系列文章:

请在 《 《 《文章 》 》 》 专栏中查找

利用这一新公式,我们可以重新从公式 (37) 中的ELBO开始推导:

我们因此成功地推导出了一个可以用较低方差估计的ELBO解释,因为每一项最多是关于一个随机变量的期望。这种形式还有一个优雅的解释,当我们检查每个独立项时可以发现:

  1. E q ( x 1 ∣ x 0 ) [ log ⁡ p θ ( x 0 ∣ x 1 ) ] \mathbb{E}{q(x_1|x_0)}[\log p{\theta}(x_0|x_1)] Eq(x1∣x0)[logpθ(x0∣x1)]可以被解释为一个重构项;与普通VAE的ELBO中的类似项一样,该项可以通过蒙特卡洛估计进行近似和优化。

  2. D K L ( q ( x T ∣ x 0 ) ∥ p ( x T ) ) D_{KL}(q(x_T|x_0) \| p(x_T)) DKL(q(xT∣x0)∥p(xT))表示最终加噪输入的分布与标准高斯先验的接近程度。在我们的假设下,该项没有可训练参数,并且也等于零。

  3. E q ( x t ∣ x 0 ) [ D K L ( q ( x t − 1 ∣ x t , x 0 ) ∥ p θ ( x t − 1 ∣ x t ) ) ] \mathbb{E}{q(x_t|x_0)}[D{KL}(q(x_{t-1}|x_t, x_0) \| p_{\theta}(x_{t-1}|x_t))] Eq(xt∣x0)[DKL(q(xt−1∣xt,x0)∥pθ(xt−1∣xt))]是一个去噪匹配项。我们学习期望的去噪转换步骤 p θ ( x t − 1 ∣ x t ) p_{\theta}(x_{t-1}|x_t) pθ(xt−1∣xt),使其作为可求解的真实去噪转换步骤 q ( x t − 1 ∣ x t , x 0 ) q(x_{t-1}|x_t, x_0) q(xt−1∣xt,x0)的近似。去噪步骤 q ( x t − 1 ∣ x t , x 0 ) q(x_{t-1}|x_t, x_0) q(xt−1∣xt,x0)可以作为一个真实信号,因为它定义了如何通过访问完全去噪的图像 x 0 x_0 x0,对噪声图像 x t x_t xt进行去噪。因此,当两个去噪步骤尽可能匹配时,该项的KL散度最小化。

需要补充注意的是,在两种ELBO推导(公式45和公式58)的过程中,只使用了马尔可夫假设;因此,这些公式对于任意的马尔可夫HVAE都适用。此外,当我们设置 T = 1 T=1 T=1时,两种对于VDM的ELBO解释都能准确重现普通VAE的ELBO公式,如公式19所示。
E q ϕ ( z ∣ x ) [ log ⁡ p ( x , z ) q ϕ ( z ∣ x ) ] = E q ϕ ( z ∣ x ) [ log ⁡ p θ ( x ∣ z ) p ( z ) q ϕ ( z ∣ x ) ] ( Chain Rule of Probability ) (17) = E q ϕ ( z ∣ x ) [ log ⁡ p θ ( x ∣ z ) ] + E q ϕ ( z ∣ x ) [ log ⁡ p ( z ) q ϕ ( z ∣ x ) ] ( Split the Expectation ) (18) = E q ϕ ( z ∣ x ) [ log ⁡ p θ ( x ∣ z ) ] ⏟ reconstruction term − D K L ( q ϕ ( z ∣ x ) ∥ p ( z ) ) ⏟ prior matching term ( Definition of KL Divergence ) (19) \begin{aligned} \mathbb{E}{q{\phi}(z|x)} \left[ \log \frac{p(x, z)}{q_{\phi}(z|x)} \right] &= \mathbb{E}{q{\phi}(z|x)} \left[ \log \frac{p_{\theta}(x|z) p(z)}{q_{\phi}(z|x)} \right] & \quad (\text{Chain Rule of Probability}) &\text{(17)} \\ &= \mathbb{E}{q{\phi}(z|x)} [\log p_{\theta}(x|z)] + \mathbb{E}{q{\phi}(z|x)} \left[ \log \frac{p(z)}{q_{\phi}(z|x)} \right] & \quad (\text{Split the Expectation}) &\text{(18)} \\ &= \underbrace{\mathbb{E}{q{\phi}(z|x)} [\log p_{\theta}(x|z)]}\text{reconstruction term} - \underbrace{D{KL}(q_{\phi}(z|x) \| p(z))}_\text{prior matching term} & \quad (\text{Definition of KL Divergence}) &\text{(19)} \end{aligned} Eqϕ(z∣x)[logqϕ(z∣x)p(x,z)]=Eqϕ(z∣x)[logqϕ(z∣x)pθ(x∣z)p(z)]=Eqϕ(z∣x)[logpθ(x∣z)]+Eqϕ(z∣x)[logqϕ(z∣x)p(z)]=reconstruction term Eqϕ(z∣x)[logpθ(x∣z)]−prior matching term DKL(qϕ(z∣x)∥p(z))(Chain Rule of Probability)(Split the Expectation)(Definition of KL Divergence)(17)(18)(19)

在此ELBO推导中,大部分优化成本再次集中在求和项上,这一部分主导了重构项。对于任意复杂的马尔可夫HVAE,由于需要同时学习编码器,每个KL散度项 D K L ( q ( x t − 1 ∣ x t , x 0 ) ∥ p θ ( x t − 1 ∣ x t ) ) D_{KL}(q(x_{t-1}|x_t, x_0) \| p_{\theta}(x_{t-1}|x_t)) DKL(q(xt−1∣xt,x0)∥pθ(xt−1∣xt))都很难最小化。然而,在VDM中,我们可以利用高斯转换假设使优化变得可解。根据贝叶斯公式,我们有:

q ( x t − 1 ∣ x t , x 0 ) = q ( x t ∣ x t − 1 , x 0 ) q ( x t − 1 ∣ x 0 ) q ( x t ∣ x 0 ) q(x_{t-1}|x_t, x_0) = \frac{q(x_t|x_{t-1}, x_0) q(x_{t-1}|x_0)}{q(x_t|x_0)} q(xt−1∣xt,x0)=q(xt∣x0)q(xt∣xt−1,x0)q(xt−1∣x0)

正如我们已经知道的, q ( x t ∣ x t − 1 , x 0 ) = q ( x t ∣ x t − 1 ) = N ( x t ; α t x t − 1 , ( 1 − α t ) I ) q(x_t|x_{t-1}, x_0) = q(x_t|x_{t-1}) = \mathcal{N}(x_t; \sqrt{\alpha_t}x_{t-1}, (1 - \alpha_t)\mathbf{I}) q(xt∣xt−1,x0)=q(xt∣xt−1)=N(xt;αt xt−1,(1−αt)I),这是基于我们关于编码器转换的假设(公式31: q ( x t ∣ x t − 1 ) = N ( x t ; α t x t − 1 , ( 1 − α t ) I ) q(x_t|x_{t-1}) = \mathcal{N}(x_t; \sqrt{\alpha_t}x_{t-1}, (1 - \alpha_t)\mathbf{I}) q(xt∣xt−1)=N(xt;αt xt−1,(1−αt)I))。接下来需要推导的是 q ( x t ∣ x 0 ) q(x_t|x_0) q(xt∣x0)和 q ( x t − 1 ∣ x 0 ) q(x_{t-1}|x_0) q(xt−1∣x0)的形式。

幸运的是,由于VDM的编码器转换是线性高斯模型,这些推导也变得可行。回想一下,在重参数化技巧下,从 q ( x t ∣ x t − 1 ) q(x_t|x_{t-1}) q(xt∣xt−1)中采样的样本 x t ∼ q ( x t ∣ x t − 1 ) x_t \sim q(x_t|x_{t-1}) xt∼q(xt∣xt−1)可以被重写为:

x t = α t x t − 1 + 1 − α t   ϵ with ϵ ∼ N ( ϵ ; 0 , I ) (59) x_t = \sqrt{\alpha_t} x_{t-1} + \sqrt{1 - \alpha_t} \, \epsilon \quad \text{with} \quad \epsilon \sim \mathcal{N}(\epsilon; 0, \mathbf{I}) \tag{59} xt=αt xt−1+1−αt ϵwithϵ∼N(ϵ;0,I)(59)

同样,从 q ( x t − 1 ∣ x t − 2 ) q(x_{t-1}|x_{t-2}) q(xt−1∣xt−2)中采样的样本 x t − 1 ∼ q ( x t − 1 ∣ x t − 2 ) x_{t-1} \sim q(x_{t-1}|x_{t-2}) xt−1∼q(xt−1∣xt−2)可以被重写为:

x t − 1 = α t − 1 x t − 2 + 1 − α t − 1   ϵ with ϵ ∼ N ( ϵ ; 0 , I ) (60) x_{t-1} = \sqrt{\alpha_{t-1}} x_{t-2} + \sqrt{1 - \alpha_{t-1}} \, \epsilon \quad \text{with} \quad \epsilon \sim \mathcal{N}(\epsilon; 0, \mathbf{I}) \tag{60} xt−1=αt−1 xt−2+1−αt−1 ϵwithϵ∼N(ϵ;0,I)(60)

然后, q ( x t ∣ x 0 ) q(x_t|x_0) q(xt∣x0)的形式可以通过多次应用重参数化技巧递归推导出来。假设我们可以访问 2 T 2T 2T个随机噪声变量 { ϵ t ∗ , ϵ t } t = 0 T \{\epsilon_t^*, \epsilon_t\}_{t=0}^T {ϵt∗,ϵt}t=0T,且这些变量独立同分布, ϵ ∼ N ( ϵ ; 0 , I ) \epsilon \sim \mathcal{N}(\epsilon; 0, \mathbf{I}) ϵ∼N(ϵ;0,I)。那么,对于任意样本 x t ∼ q ( x t ∣ x 0 ) x_t \sim q(x_t|x_0) xt∼q(xt∣x0),我们可以将其重写为:

x t = α t x t − 1 + 1 − α t ϵ t − 1 ∗ (61) = α t ( α t − 1 x t − 2 + 1 − α t − 1 ϵ t − 2 ∗ ) + 1 − α t ϵ t − 1 ∗ (62) = α t α t − 1 x t − 2 + α t − α t α t − 1 ϵ t − 2 ∗ + 1 − α t ϵ t − 1 ∗ (63) = α t α t − 1 x t − 2 + α t − α t α t − 1 2 + 1 − α t 2 ϵ t − 2 (64) = α t α t − 1 x t − 2 + α t − α t α t − 1 + 1 − α t ϵ t − 2 (65) = α t α t − 1 x t − 2 + 1 − α t α t − 1 ϵ t − 2 (66) = ⋯ (67) = ∏ i = 1 t α i x 0 + 1 − ∏ i = 1 t α i ϵ 0 (68) = α ˉ t x 0 + 1 − α ˉ t ϵ 0 (69) ∼ N ( x t ; α ˉ t x 0 , ( 1 − α ˉ t ) I ) (70) \begin{aligned} x_t &= \sqrt{\alpha_t} x_{t-1} + \sqrt{1 - \alpha_t} \epsilon_{t-1}^* &\text{(61)} \\ &= \sqrt{\alpha_t} \left( \sqrt{\alpha_{t-1}} x_{t-2} + \sqrt{1 - \alpha_{t-1}} \epsilon_{t-2}^* \right) + \sqrt{1 - \alpha_t} \epsilon_{t-1}^* &\text{(62)} \\ &= \sqrt{\alpha_t \alpha_{t-1}} x_{t-2} + \sqrt{\alpha_t - \alpha_t \alpha_{t-1}} \epsilon_{t-2}^* + \sqrt{1 - \alpha_t} \epsilon_{t-1}^* &\text{(63)} \\ &= \sqrt{\alpha_t \alpha_{t-1}} x_{t-2} + \sqrt{\sqrt{\alpha_t - \alpha_t \alpha_{t-1}}^2 + \sqrt{1 - \alpha_t}^2} \epsilon_{t-2} &\text{(64)} \\ &= \sqrt{\alpha_t \alpha_{t-1}} x_{t-2} + \sqrt{\alpha_t - \alpha_t \alpha_{t-1} + 1 - \alpha_t} \epsilon_{t-2} &\text{(65)} \\ &= \sqrt{\alpha_t \alpha_{t-1}} x_{t-2} + \sqrt{1 - \alpha_t \alpha_{t-1}} \epsilon_{t-2} &\text{(66)} \\ &= \cdots &\text{(67)} \\ &= \sqrt{\prod_{i=1}^t \alpha_i} x_0 + \sqrt{1 - \prod_{i=1}^t \alpha_i} \epsilon_0 &\text{(68)} \\ &= \sqrt{\bar{\alpha}_t} x_0 + \sqrt{1 - \bar{\alpha}_t} \epsilon_0 &\text{(69)} \\ &\sim \mathcal{N}(x_t; \sqrt{\bar{\alpha}_t} x_0, (1 - \bar{\alpha}_t) \mathbf{I}) &\text{(70)} \end{aligned} xt=αt xt−1+1−αt ϵt−1∗=αt (αt−1 xt−2+1−αt−1 ϵt−2∗)+1−αt ϵt−1∗=αtαt−1 xt−2+αt−αtαt−1 ϵt−2∗+1−αt ϵt−1∗=αtαt−1 xt−2+αt−αtαt−1 2+1−αt 2 ϵt−2=αtαt−1 xt−2+αt−αtαt−1+1−αt ϵt−2=αtαt−1 xt−2+1−αtαt−1 ϵt−2=⋯=i=1∏tαi x0+1−i=1∏tαi ϵ0=αˉt x0+1−αˉt ϵ0∼N(xt;αˉt x0,(1−αˉt)I)(61)(62)(63)(64)(65)(66)(67)(68)(69)(70)

在公式(64)中,我们利用了以下事实:两个独立高斯随机变量的和仍然是一个高斯分布,其均值为两个均值的和,方差为两个方差的和。将 1 − α t ϵ t − 1 ∗ \sqrt{1 - \alpha_t} \epsilon_{t-1}^* 1−αt ϵt−1∗解释为从高斯分布 N ( 0 , ( 1 − α t ) I ) \mathcal{N}(0, (1 - \alpha_t) \mathbf{I}) N(0,(1−αt)I)中采样的样本,将 α t − α t α t − 1 ϵ t − 2 ∗ \sqrt{\alpha_t - \alpha_t \alpha_{t-1}} \epsilon_{t-2}^* αt−αtαt−1 ϵt−2∗解释为从高斯分布 N ( 0 , ( α t − α t α t − 1 ) I ) \mathcal{N}(0, (\alpha_t - \alpha_t \alpha_{t-1}) \mathbf{I}) N(0,(αt−αtαt−1)I)中采样的样本,则它们的和可以看作是一个从高斯分布 N ( 0 , ( 1 − α t + α t − α t α t − 1 ) I ) = N ( 0 , ( 1 − α t α t − 1 ) I ) \mathcal{N}(0, (1 - \alpha_t + \alpha_t - \alpha_t \alpha_{t-1}) \mathbf{I}) = \mathcal{N}(0, (1 - \alpha_t \alpha_{t-1}) \mathbf{I}) N(0,(1−αt+αt−αtαt−1)I)=N(0,(1−αtαt−1)I)中采样的随机变量。根据重参数化技巧,这一分布的样本可以表示为 1 − α t α t − 1 ϵ t − 2 \sqrt{1 - \alpha_t \alpha_{t-1}} \epsilon_{t-2} 1−αtαt−1 ϵt−2,如公式(66)所示。

因此,我们已经推导出了 q ( x t ∣ x 0 ) q(x_t|x_0) q(xt∣x0)的高斯形式。此推导还可以被修改以得出描述 q ( x t − 1 ∣ x 0 ) q(x_{t-1}|x_0) q(xt−1∣x0)的高斯参数化形式。现在,知道 q ( x t ∣ x 0 ) q(x_t|x_0) q(xt∣x0)和 q ( x t − 1 ∣ x 0 ) q(x_{t-1}|x_0) q(xt−1∣x0)的形式后,我们可以通过代入贝叶斯公式展开来计算 q ( x t − 1 ∣ x t , x 0 ) q(x_{t-1}|x_t, x_0) q(xt−1∣xt,x0)的形式:

在公式(75)中, C ( x t , x 0 ) C(x_t, x_0) C(xt,x0)是一个与 x t − 1 x_{t-1} xt−1无关的常数项,由 x t x_t xt、 x 0 x_0 x0和 α \alpha α值的组合计算得出;该常数项在公式(84)中被隐式返回,以完成平方形式的推导。

因此,我们已经证明,在每一步中, x t − 1 ∼ q ( x t − 1 ∣ x t , x 0 ) x_{t-1} \sim q(x_{t-1}|x_t, x_0) xt−1∼q(xt−1∣xt,x0)是服从正态分布的,其均值 μ q ( x t , x 0 ) \mu_q(x_t, x_0) μq(xt,x0)是 x t x_t xt和 x 0 x_0 x0的函数,而方差 Σ q ( t ) \Sigma_q(t) Σq(t)是 α \alpha α系数的函数。这些 α \alpha α系数在每个时间步都是已知且固定的;它们要么在建模为超参数时被永久设置,要么被视为试图对其建模的网络的当前推断输出。根据公式(84),我们可以将方差方程重写为 Σ q ( t ) = σ q 2 ( t ) I \Sigma_q(t) = \sigma_q^2(t)\mathbf{I} Σq(t)=σq2(t)I,其中:

σ q 2 ( t ) = ( 1 − α t ) ( 1 − α ˉ t − 1 ) 1 − α ˉ t (85) \sigma_q^2(t) = \frac{(1 - \alpha_t)(1 - \bar{\alpha}_{t-1})}{1 - \bar{\alpha}_t} \tag{85} σq2(t)=1−αˉt(1−αt)(1−αˉt−1)(85)

为了使近似去噪转移步骤 p θ ( x t − 1 ∣ x t ) p_\theta(x_{t-1}|x_t) pθ(xt−1∣xt)尽可能接近真实去噪转移步骤 q ( x t − 1 ∣ x t , x 0 ) q(x_{t-1}|x_t, x_0) q(xt−1∣xt,x0),我们同样可以将其建模为一个高斯分布。此外,由于所有 α \alpha α项在每个时间步上都是已知且固定的,我们可以直接将近似去噪转移步骤的方差构造为 Σ q ( t ) = σ q 2 ( t ) I \Sigma_q(t) = \sigma_q^2(t)\mathbf{I} Σq(t)=σq2(t)I。然而,由于 p θ ( x t − 1 ∣ x t ) p_\theta(x_{t-1}|x_t) pθ(xt−1∣xt)不以 x 0 x_0 x0为条件,我们必须将其均值 μ θ ( x t , t ) \mu_\theta(x_t, t) μθ(xt,t)参数化为 x t x_t xt的函数。

回忆一下,两高斯分布之间的KL散度为:

D K L ( N ( x ; μ x , Σ x )   ∣ ∣   N ( y ; μ y , Σ y ) ) = 1 2 [ log ⁡ ∣ Σ y ∣ ∣ Σ x ∣ − d + tr ( Σ y − 1 Σ x ) + ( μ y − μ x ) T Σ y − 1 ( μ y − μ x ) ] (86) D_{KL}(\mathcal{N}(x; \mu_x, \Sigma_x) \,||\, \mathcal{N}(y; \mu_y, \Sigma_y)) = \frac{1}{2} \left[ \log \frac{|\Sigma_y|}{|\Sigma_x|} - d + \text{tr}(\Sigma_y^{-1} \Sigma_x) + (\mu_y - \mu_x)^T \Sigma_y^{-1} (\mu_y - \mu_x) \right] \tag{86} DKL(N(x;μx,Σx)∣∣N(y;μy,Σy))=21[log∣Σx∣∣Σy∣−d+tr(Σy−1Σx)+(μy−μx)TΣy−1(μy−μx)](86)

我们需要推导以下公式: D K L ( N ( x ; μ x , Σ x ) ∥ N ( y ; μ y , Σ y ) ) = 1 2 [ log ⁡ ∣ Σ y ∣ ∣ Σ x ∣ − d + tr ( Σ y − 1 Σ x ) + ( μ y − μ x ) T Σ y − 1 ( μ y − μ x ) ] . D_{KL}(\mathcal{N}(x; \mu_x, \Sigma_x) \| \mathcal{N}(y; \mu_y, \Sigma_y)) = \frac{1}{2} \left[ \log \frac{|\Sigma_y|}{|\Sigma_x|} - d + \text{tr}(\Sigma_y^{-1} \Sigma_x) + (\mu_y - \mu_x)^T \Sigma_y^{-1} (\mu_y - \mu_x) \right]. DKL(N(x;μx,Σx)∥N(y;μy,Σy))=21[log∣Σx∣∣Σy∣−d+tr(Σy−1Σx)+(μy−μx)TΣy−1(μy−μx)].


1. KL 散度的定义

KL 散度定义为: D K L ( N ( x ; μ x , Σ x ) ∥ N ( y ; μ y , Σ y ) ) = ∫ N ( x ; μ x , Σ x ) log ⁡ N ( x ; μ x , Σ x ) N ( x ; μ y , Σ y ) d x . D_{KL}(\mathcal{N}(x; \mu_x, \Sigma_x) \| \mathcal{N}(y; \mu_y, \Sigma_y)) = \int \mathcal{N}(x; \mu_x, \Sigma_x) \log \frac{\mathcal{N}(x; \mu_x, \Sigma_x)}{\mathcal{N}(x; \mu_y, \Sigma_y)} dx. DKL(N(x;μx,Σx)∥N(y;μy,Σy))=∫N(x;μx,Σx)logN(x;μy,Σy)N(x;μx,Σx)dx.

  • N ( x ; μ x , Σ x ) \mathcal{N}(x; \mu_x, \Sigma_x) N(x;μx,Σx):分布 1 的概率密度函数。
  • N ( x ; μ y , Σ y ) \mathcal{N}(x; \mu_y, \Sigma_y) N(x;μy,Σy):分布 2 的概率密度函数。

2. 多元高斯分布的概率密度函数

多元高斯分布的概率密度函数为: N ( x ; μ , Σ ) = 1 ( 2 π ) d ∣ Σ ∣ exp ⁡ ( − 1 2 ( x − μ ) T Σ − 1 ( x − μ ) ) . \mathcal{N}(x; \mu, \Sigma) = \frac{1}{\sqrt{(2\pi)^d |\Sigma|}} \exp\left( -\frac{1}{2} (x - \mu)^T \Sigma^{-1} (x - \mu) \right). N(x;μ,Σ)=(2π)d∣Σ∣ 1exp(−21(x−μ)TΣ−1(x−μ)).

  • d d d:变量 x x x 的维度。
  • ∣ Σ ∣ |\Sigma| ∣Σ∣:协方差矩阵的行列式,表示分布的范围大小。
  • Σ − 1 \Sigma^{-1} Σ−1:协方差矩阵的逆,表示分布的形状。

3. KL 散度公式展开

将高斯分布的公式代入 KL 散度定义: D K L ( N ( x ; μ x , Σ x ) ∥ N ( x ; μ y , Σ y ) ) = ∫ N ( x ; μ x , Σ x ) log ⁡ N ( x ; μ x , Σ x ) N ( x ; μ y , Σ y ) d x . D_{KL}(\mathcal{N}(x; \mu_x, \Sigma_x) \| \mathcal{N}(x; \mu_y, \Sigma_y)) = \int \mathcal{N}(x; \mu_x, \Sigma_x) \log \frac{\mathcal{N}(x; \mu_x, \Sigma_x)}{\mathcal{N}(x; \mu_y, \Sigma_y)} dx. DKL(N(x;μx,Σx)∥N(x;μy,Σy))=∫N(x;μx,Σx)logN(x;μy,Σy)N(x;μx,Σx)dx.

分子和分母的概率密度函数分别为: N ( x ; μ x , Σ x ) = 1 ( 2 π ) d ∣ Σ x ∣ exp ⁡ ( − 1 2 ( x − μ x ) T Σ x − 1 ( x − μ x ) ) , \mathcal{N}(x; \mu_x, \Sigma_x) = \frac{1}{\sqrt{(2\pi)^d |\Sigma_x|}} \exp\left( -\frac{1}{2} (x - \mu_x)^T \Sigma_x^{-1} (x - \mu_x) \right), N(x;μx,Σx)=(2π)d∣Σx∣ 1exp(−21(x−μx)TΣx−1(x−μx)), N ( x ; μ y , Σ y ) = 1 ( 2 π ) d ∣ Σ y ∣ exp ⁡ ( − 1 2 ( x − μ y ) T Σ y − 1 ( x − μ y ) ) . \mathcal{N}(x; \mu_y, \Sigma_y) = \frac{1}{\sqrt{(2\pi)^d |\Sigma_y|}} \exp\left( -\frac{1}{2} (x - \mu_y)^T \Sigma_y^{-1} (x - \mu_y) \right). N(x;μy,Σy)=(2π)d∣Σy∣ 1exp(−21(x−μy)TΣy−1(x−μy)).

因此,KL散度的积分为: D K L = ∫ N ( x ; μ x , Σ x ) log ⁡ 1 ( 2 π ) d ∣ Σ x ∣ exp ⁡ ( − 1 2 ( x − μ x ) T Σ x − 1 ( x − μ x ) ) 1 ( 2 π ) d ∣ Σ y ∣ exp ⁡ ( − 1 2 ( x − μ y ) T Σ y − 1 ( x − μ y ) ) d x . D_{KL} = \int \mathcal{N}(x; \mu_x, \Sigma_x) \log \frac{\frac{1}{\sqrt{(2\pi)^d |\Sigma_x|}} \exp\left( -\frac{1}{2} (x - \mu_x)^T \Sigma_x^{-1} (x - \mu_x) \right)}{\frac{1}{\sqrt{(2\pi)^d |\Sigma_y|}} \exp\left( -\frac{1}{2} (x - \mu_y)^T \Sigma_y^{-1} (x - \mu_y) \right)} dx. DKL=∫N(x;μx,Σx)log(2π)d∣Σy∣ 1exp(−21(x−μy)TΣy−1(x−μy))(2π)d∣Σx∣ 1exp(−21(x−μx)TΣx−1(x−μx))dx.


4. 对数部分展开

分解对数部分的分子和分母: log ⁡ N ( x ; μ x , Σ x ) N ( x ; μ y , Σ y ) = log ⁡ 1 ( 2 π ) d ∣ Σ x ∣ 1 ( 2 π ) d ∣ Σ y ∣ + log ⁡ exp ⁡ ( − 1 2 ( x − μ x ) T Σ x − 1 ( x − μ x ) ) exp ⁡ ( − 1 2 ( x − μ y ) T Σ y − 1 ( x − μ y ) ) . \log \frac{\mathcal{N}(x; \mu_x, \Sigma_x)}{\mathcal{N}(x; \mu_y, \Sigma_y)} = \log \frac{\frac{1}{\sqrt{(2\pi)^d |\Sigma_x|}}}{\frac{1}{\sqrt{(2\pi)^d |\Sigma_y|}}} + \log \frac{\exp\left( -\frac{1}{2} (x - \mu_x)^T \Sigma_x^{-1} (x - \mu_x) \right)}{\exp\left( -\frac{1}{2} (x - \mu_y)^T \Sigma_y^{-1} (x - \mu_y) \right)}. logN(x;μy,Σy)N(x;μx,Σx)=log(2π)d∣Σy∣ 1(2π)d∣Σx∣ 1+logexp(−21(x−μy)TΣy−1(x−μy))exp(−21(x−μx)TΣx−1(x−μx)).

第一部分:常数项 log ⁡ 1 ( 2 π ) d ∣ Σ x ∣ 1 ( 2 π ) d ∣ Σ y ∣ = log ⁡ ∣ Σ y ∣ ∣ Σ x ∣ = 1 2 log ⁡ ∣ Σ y ∣ ∣ Σ x ∣ . \log \frac{\frac{1}{\sqrt{(2\pi)^d |\Sigma_x|}}}{\frac{1}{\sqrt{(2\pi)^d |\Sigma_y|}}} = \log \sqrt{\frac{|\Sigma_y|}{|\Sigma_x|}} = \frac{1}{2} \log \frac{|\Sigma_y|}{|\Sigma_x|}. log(2π)d∣Σy∣ 1(2π)d∣Σx∣ 1=log∣Σx∣∣Σy∣ =21log∣Σx∣∣Σy∣.

第二部分:指数项 log ⁡ exp ⁡ ( − 1 2 ( x − μ x ) T Σ x − 1 ( x − μ x ) ) exp ⁡ ( − 1 2 ( x − μ y ) T Σ y − 1 ( x − μ y ) ) = − 1 2 ( x − μ x ) T Σ x − 1 ( x − μ x ) + 1 2 ( x − μ y ) T Σ y − 1 ( x − μ y ) . \log \frac{\exp\left( -\frac{1}{2} (x - \mu_x)^T \Sigma_x^{-1} (x - \mu_x) \right)}{\exp\left( -\frac{1}{2} (x - \mu_y)^T \Sigma_y^{-1} (x - \mu_y) \right)} = -\frac{1}{2} (x - \mu_x)^T \Sigma_x^{-1} (x - \mu_x) + \frac{1}{2} (x - \mu_y)^T \Sigma_y^{-1} (x - \mu_y). logexp(−21(x−μy)TΣy−1(x−μy))exp(−21(x−μx)TΣx−1(x−μx))=−21(x−μx)TΣx−1(x−μx)+21(x−μy)TΣy−1(x−μy).


5. 将对数展开代入 KL 散度公式

KL 散度公式现在可以写为: D K L = ∫ N ( x ; μ x , Σ x ) [ 1 2 log ⁡ ∣ Σ y ∣ ∣ Σ x ∣ − 1 2 ( x − μ x ) T Σ x − 1 ( x − μ x ) + 1 2 ( x − μ y ) T Σ y − 1 ( x − μ y ) ] d x . D_{KL} = \int \mathcal{N}(x; \mu_x, \Sigma_x) \left[ \frac{1}{2} \log \frac{|\Sigma_y|}{|\Sigma_x|} -\frac{1}{2} (x - \mu_x)^T \Sigma_x^{-1} (x - \mu_x) + \frac{1}{2} (x - \mu_y)^T \Sigma_y^{-1} (x - \mu_y) \right] dx. DKL=∫N(x;μx,Σx)[21log∣Σx∣∣Σy∣−21(x−μx)TΣx−1(x−μx)+21(x−μy)TΣy−1(x−μy)]dx.


6. 分项计算 KL 散度

第一项:常数项 ∫ N ( x ; μ x , Σ x ) 1 2 log ⁡ ∣ Σ y ∣ ∣ Σ x ∣ d x = 1 2 log ⁡ ∣ Σ y ∣ ∣ Σ x ∣ . \int \mathcal{N}(x; \mu_x, \Sigma_x) \frac{1}{2} \log \frac{|\Sigma_y|}{|\Sigma_x|} dx = \frac{1}{2} \log \frac{|\Sigma_y|}{|\Sigma_x|}. ∫N(x;μx,Σx)21log∣Σx∣∣Σy∣dx=21log∣Σx∣∣Σy∣.

第二项: ( x − μ x ) T Σ x − 1 ( x − μ x ) (x - \mu_x)^T \Sigma_x^{-1} (x - \mu_x) (x−μx)TΣx−1(x−μx) 的期望 在高斯分布 N ( x ; μ x , Σ x ) \mathcal{N}(x; \mu_x, \Sigma_x) N(x;μx,Σx) 中: E [ ( x − μ x ) T Σ x − 1 ( x − μ x ) ] = d , \mathbb{E}[(x - \mu_x)^T \Sigma_x^{-1} (x - \mu_x)] = d, E[(x−μx)TΣx−1(x−μx)]=d, 其中 d d d 是高斯分布的维度。因此: ∫ N ( x ; μ x , Σ x ) [ − 1 2 ( x − μ x ) T Σ x − 1 ( x − μ x ) ] d x = − 1 2 d . \int \mathcal{N}(x; \mu_x, \Sigma_x) \left[ -\frac{1}{2} (x - \mu_x)^T \Sigma_x^{-1} (x - \mu_x) \right] dx = -\frac{1}{2} d. ∫N(x;μx,Σx)[−21(x−μx)TΣx−1(x−μx)]dx=−21d.

第三项: ( x − μ y ) T Σ y − 1 ( x − μ y ) (x - \mu_y)^T \Sigma_y^{-1} (x - \mu_y) (x−μy)TΣy−1(x−μy) 的期望 我们将 ( x − μ y ) T Σ y − 1 ( x − μ y ) (x - \mu_y)^T \Sigma_y^{-1} (x - \mu_y) (x−μy)TΣy−1(x−μy) 展开: ( x − μ y ) T Σ y − 1 ( x − μ y ) = ( x − μ x + μ x − μ y ) T Σ y − 1 ( x − μ x + μ x − μ y ) . (x - \mu_y)^T \Sigma_y^{-1} (x - \mu_y) = (x - \mu_x + \mu_x - \mu_y)^T \Sigma_y^{-1} (x - \mu_x + \mu_x - \mu_y). (x−μy)TΣy−1(x−μy)=(x−μx+μx−μy)TΣy−1(x−μx+μx−μy).

展开后包含三项:

  1. E [ ( x − μ x ) T Σ y − 1 ( x − μ x ) ] = tr ( Σ y − 1 Σ x ) \mathbb{E}[(x - \mu_x)^T \Sigma_y^{-1} (x - \mu_x)] = \text{tr}(\Sigma_y^{-1} \Sigma_x) E[(x−μx)TΣy−1(x−μx)]=tr(Σy−1Σx)。
  2. 均值差项 ( μ x − μ y ) T Σ y − 1 ( μ x − μ y ) (\mu_x - \mu_y)^T \Sigma_y^{-1} (\mu_x - \mu_y) (μx−μy)TΣy−1(μx−μy)。
  3. 交叉项的期望为 0。

综合起来: ∫ N ( x ; μ x , Σ x ) 1 2 ( x − μ y ) T Σ y − 1 ( x − μ y ) d x = 1 2 [ tr ( Σ y − 1 Σ x ) + ( μ x − μ y ) T Σ y − 1 ( μ x − μ y ) ] . \int \mathcal{N}(x; \mu_x, \Sigma_x) \frac{1}{2} (x - \mu_y)^T \Sigma_y^{-1} (x - \mu_y) dx = \frac{1}{2} \left[ \text{tr}(\Sigma_y^{-1} \Sigma_x) + (\mu_x - \mu_y)^T \Sigma_y^{-1} (\mu_x - \mu_y) \right]. ∫N(x;μx,Σx)21(x−μy)TΣy−1(x−μy)dx=21[tr(Σy−1Σx)+(μx−μy)TΣy−1(μx−μy)].

1. 积分和期望的关系

概率分布的期望定义是: E q ( x ) [ f ( x ) ] = ∫ f ( x ) q ( x ) d x . \mathbb{E}_{q(x)}[f(x)] = \int f(x) q(x) dx. Eq(x)[f(x)]=∫f(x)q(x)dx.

  • f ( x ) f(x) f(x):对随机变量 x x x 的某个函数。
  • q ( x ) q(x) q(x):概率密度函数,表示随机变量 x x x 的分布。

这说明,对于任意函数 f ( x ) f(x) f(x),其加权积分可以写成期望的形式。如果我们知道 q ( x ) q(x) q(x) 是一个高斯分布,那么积分可以简化为高斯分布的性质。

应用到 KL 散度公式中 KL 散度公式包含积分: D K L = ∫ q ( x ) log ⁡ q ( x ) p ( x ) d x . D_{KL} = \int q(x) \log \frac{q(x)}{p(x)} dx. DKL=∫q(x)logp(x)q(x)dx. 其中, q ( x ) q(x) q(x) 是一个高斯分布: q ( x ) = N ( x ; μ x , Σ x ) . q(x) = \mathcal{N}(x; \mu_x, \Sigma_x). q(x)=N(x;μx,Σx).

任何积分项,例如: ∫ q ( x ) ( x − μ x ) T Σ x − 1 ( x − μ x ) d x , \int q(x) (x - \mu_x)^T \Sigma_x^{-1} (x - \mu_x) dx, ∫q(x)(x−μx)TΣx−1(x−μx)dx, 都可以转换为期望: E q ( x ) [ ( x − μ x ) T Σ x − 1 ( x − μ x ) ] . \mathbb{E}_{q(x)} \left[(x - \mu_x)^T \Sigma_x^{-1} (x - \mu_x)\right]. Eq(x)[(x−μx)TΣx−1(x−μx)].


2. 积分到期望的具体例子

我们来看 KL 散度中第二项: ∫ q ( x ) [ − 1 2 ( x − μ x ) T Σ x − 1 ( x − μ x ) ] d x . \int q(x) \left[ -\frac{1}{2} (x - \mu_x)^T \Sigma_x^{-1} (x - \mu_x) \right] dx. ∫q(x)[−21(x−μx)TΣx−1(x−μx)]dx.

这可以转化为: − 1 2 E q ( x ) [ ( x − μ x ) T Σ x − 1 ( x − μ x ) ] . -\frac{1}{2} \mathbb{E}_{q(x)} \left[ (x - \mu_x)^T \Sigma_x^{-1} (x - \mu_x) \right]. −21Eq(x)[(x−μx)TΣx−1(x−μx)].


3. 高斯分布的性质:二次型的期望值

在高斯分布 q ( x ) = N ( x ; μ x , Σ x ) q(x) = \mathcal{N}(x; \mu_x, \Sigma_x) q(x)=N(x;μx,Σx) 中,关于均值 μ x \mu_x μx 的二次型 ( x − μ x ) T A ( x − μ x ) (x - \mu_x)^T A (x - \mu_x) (x−μx)TA(x−μx) 的期望值有以下性质: E [ ( x − μ x ) T A ( x − μ x ) ] = tr ( A Σ x ) , \mathbb{E}[(x - \mu_x)^T A (x - \mu_x)] = \text{tr}(A \Sigma_x), E[(x−μx)TA(x−μx)]=tr(AΣx), 其中 A A A 是一个对称矩阵。

具体计算 对于 A = Σ x − 1 A = \Sigma_x^{-1} A=Σx−1,可以得出: E [ ( x − μ x ) T Σ x − 1 ( x − μ x ) ] = tr ( Σ x − 1 Σ x ) = tr ( I ) = d . \mathbb{E}[(x - \mu_x)^T \Sigma_x^{-1} (x - \mu_x)] = \text{tr}(\Sigma_x^{-1} \Sigma_x) = \text{tr}(I) = d. E[(x−μx)TΣx−1(x−μx)]=tr(Σx−1Σx)=tr(I)=d.

  • d d d 是高斯分布的维度。

因此,积分结果为: ∫ q ( x ) ( x − μ x ) T Σ x − 1 ( x − μ x ) d x = d . \int q(x) (x - \mu_x)^T \Sigma_x^{-1} (x - \mu_x) dx = d. ∫q(x)(x−μx)TΣx−1(x−μx)dx=d.


4. 结果代入 KL 散度公式

将以上结果代入 KL 散度公式的第二项: − 1 2 ∫ q ( x ) ( x − μ x ) T Σ x − 1 ( x − μ x ) d x = − 1 2 d . -\frac{1}{2} \int q(x) (x - \mu_x)^T \Sigma_x^{-1} (x - \mu_x) dx = -\frac{1}{2} d. −21∫q(x)(x−μx)TΣx−1(x−μx)dx=−21d.


5. 总结

为什么积分可以转化为期望? 因为积分公式: ∫ f ( x ) q ( x ) d x = E q ( x ) [ f ( x ) ] , \int f(x) q(x) dx = \mathbb{E}_{q(x)}[f(x)], ∫f(x)q(x)dx=Eq(x)[f(x)], 本质上就是期望的定义,积分是以 q ( x ) q(x) q(x) 为权重的加权和。

高斯分布的二次型积分 对于高斯分布 q ( x ) = N ( x ; μ x , Σ x ) q(x) = \mathcal{N}(x; \mu_x, \Sigma_x) q(x)=N(x;μx,Σx),积分: ∫ q ( x ) ( x − μ x ) T A ( x − μ x ) d x , \int q(x) (x - \mu_x)^T A (x - \mu_x) dx, ∫q(x)(x−μx)TA(x−μx)dx, 等价于: E [ ( x − μ x ) T A ( x − μ x ) ] = tr ( A Σ x ) . \mathbb{E}[(x - \mu_x)^T A (x - \mu_x)] = \text{tr}(A \Sigma_x). E[(x−μx)TA(x−μx)]=tr(AΣx).


7. 合并结果

将所有项合并: D K L = 1 2 [ log ⁡ ∣ Σ y ∣ ∣ Σ x ∣ − d + tr ( Σ y − 1 Σ x ) + ( μ y − μ x ) T Σ y − 1 ( μ y − μ x ) ] . D_{KL} = \frac{1}{2} \left[ \log \frac{|\Sigma_y|}{|\Sigma_x|} - d + \text{tr}(\Sigma_y^{-1} \Sigma_x) + (\mu_y - \mu_x)^T \Sigma_y^{-1} (\mu_y - \mu_x) \right]. DKL=21[log∣Σx∣∣Σy∣−d+tr(Σy−1Σx)+(μy−μx)TΣy−1(μy−μx)].


总结

每一步都基于 KL 散度定义、密度函数展开和高斯分布的积分性质:

  1. 常数项: 对数项直接得出。
  2. 二次型期望: 高斯分布的性质提供简化。
  3. 均值差异: 展开二次型并结合积分性质。

在我们的情况下,如果我们可以使两个高斯分布的方差完全相等,那么优化KL散度项就简化为最小化两个分布均值之间的差异:

arg ⁡ min ⁡ θ   D K L ( q ( x t − 1 ∣ x t , x 0 )   ∣ ∣   p θ ( x t − 1 ∣ x t ) ) = arg ⁡ min ⁡ θ   D K L ( N ( x t − 1 ; μ q , Σ q ( t ) )   ∣ ∣   N ( x t − 1 ; μ θ , Σ q ( t ) ) ) (87) = arg ⁡ min ⁡ θ   1 2 [ log ⁡ ∣ Σ q ( t ) ∣ ∣ Σ q ( t ) ∣ − d + tr ( Σ q ( t ) − 1 Σ q ( t ) ) + ( μ θ − μ q ) T Σ q ( t ) − 1 ( μ θ − μ q ) ] (88) = arg ⁡ min ⁡ θ   1 2 [ log ⁡ 1 − d + d + ( μ θ − μ q ) T Σ q ( t ) − 1 ( μ θ − μ q ) ] (89) = arg ⁡ min ⁡ θ   1 2 [ ( μ θ − μ q ) T Σ q ( t ) − 1 ( μ θ − μ q ) ] (90) = arg ⁡ min ⁡ θ   1 2 [ ( μ θ − μ q ) T ( σ q 2 ( t ) I ) − 1 ( μ θ − μ q ) ] (91) = arg ⁡ min ⁡ θ   1 2 σ q 2 ( t ) ∥ μ θ − μ q ∥ 2 2 (92) \begin{aligned} \arg \min_\theta \, & D_{KL}(q(x_{t-1}|x_t, x_0) \,||\, p_\theta(x_{t-1}|x_t)) \\ &= \arg \min_\theta \, D_{KL}(\mathcal{N}(x_{t-1}; \mu_q, \Sigma_q(t)) \,||\, \mathcal{N}(x_{t-1}; \mu_\theta, \Sigma_q(t))) &\text{(87)} \\ &= \arg \min_\theta \, \frac{1}{2} \left[ \log \frac{|\Sigma_q(t)|}{|\Sigma_q(t)|} - d + \text{tr}(\Sigma_q(t)^{-1} \Sigma_q(t)) + (\mu_\theta - \mu_q)^T \Sigma_q(t)^{-1} (\mu_\theta - \mu_q) \right] &\text{(88)} \\ &= \arg \min_\theta \, \frac{1}{2} \left[ \log 1 - d + d + (\mu_\theta - \mu_q)^T \Sigma_q(t)^{-1} (\mu_\theta - \mu_q) \right] &\text{(89)} \\ &= \arg \min_\theta \, \frac{1}{2} \left[ (\mu_\theta - \mu_q)^T \Sigma_q(t)^{-1} (\mu_\theta - \mu_q) \right] &\text{(90)} \\ &= \arg \min_\theta \, \frac{1}{2} \left[ (\mu_\theta - \mu_q)^T (\sigma_q^2(t)\mathbf{I})^{-1} (\mu_\theta - \mu_q) \right] &\text{(91)} \\ &= \arg \min_\theta \, \frac{1}{2\sigma_q^2(t)} \left\| \mu_\theta - \mu_q \right\|_2^2 &\text{(92)} \end{aligned} argθminDKL(q(xt−1∣xt,x0)∣∣pθ(xt−1∣xt))=argθminDKL(N(xt−1;μq,Σq(t))∣∣N(xt−1;μθ,Σq(t)))=argθmin21[log∣Σq(t)∣∣Σq(t)∣−d+tr(Σq(t)−1Σq(t))+(μθ−μq)TΣq(t)−1(μθ−μq)]=argθmin21[log1−d+d+(μθ−μq)TΣq(t)−1(μθ−μq)]=argθmin21[(μθ−μq)TΣq(t)−1(μθ−μq)]=argθmin21[(μθ−μq)T(σq2(t)I)−1(μθ−μq)]=argθmin2σq2(t)1∥μθ−μq∥22(87)(88)(89)(90)(91)(92)

tr ( Σ q ( t ) − 1 Σ q ( t ) ) = tr ( I ) = d . \text{tr}(\Sigma_q(t)^{-1} \Sigma_q(t)) = \text{tr}(I) = d. tr(Σq(t)−1Σq(t))=tr(I)=d.

tr ( ⋅ ) \text{tr}(\cdot) tr(⋅) 是 矩阵的迹(trace)的符号。

1. 什么是迹?

一个方阵 A A A 的迹定义为其主对角线元素的和。数学上表示为: tr ( A ) = ∑ i = 1 n A i i , \text{tr}(A) = \sum_{i=1}^n A_{ii}, tr(A)=i=1∑nAii, 其中:

  • A i i A_{ii} Aii 是矩阵 A A A 的第 i i i 行第 i i i 列元素。

  • n n n 是矩阵 A A A 的维度。

    例子: 若矩阵 A A A 为: A = [ 2 1 3 0 4 5 6 7 8 ] , A = \begin{bmatrix} 2 & 1 & 3 \\ 0 & 4 & 5 \\ 6 & 7 & 8 \end{bmatrix}, A= 206147358 , 则 tr ( A ) \text{tr}(A) tr(A) 为主对角线元素之和: tr ( A ) = 2 + 4 + 8 = 14. \text{tr}(A) = 2 + 4 + 8 = 14. tr(A)=2+4+8=14.


2. 迹的性质

  1. 可加性: tr ( A + B ) = tr ( A ) + tr ( B ) . \text{tr}(A + B) = \text{tr}(A) + \text{tr}(B). tr(A+B)=tr(A)+tr(B).

  2. 标量因子: tr ( c A ) = c   tr ( A ) , \text{tr}(cA) = c \, \text{tr}(A), tr(cA)=ctr(A), 其中 c c c 是一个常数。

  3. 迹的循环性质: 对于两个矩阵 A A A 和 B B B,如果 A B AB AB 和 B A BA BA 都定义良好(即矩阵的维度兼容),则: tr ( A B ) = tr ( B A ) . \text{tr}(AB) = \text{tr}(BA). tr(AB)=tr(BA).

    这在推导高斯分布的 KL 散度时非常重要。

  4. 迹与矩阵的特征值: tr ( A ) \text{tr}(A) tr(A) 等于矩阵 A A A 所有特征值的和。


3. 迹在 KL 散度中的作用

在高斯分布的 KL 散度公式中,迹用于衡量两个分布在协方差矩阵上的差异: D K L ( N ( x ; μ q , Σ q ) ∥ N ( x ; μ p , Σ p ) ) = 1 2 [ log ⁡ ∣ Σ p ∣ ∣ Σ q ∣ − d + tr ( Σ p − 1 Σ q ) + ( μ p − μ q ) T Σ p − 1 ( μ p − μ q ) ] . D_{KL}(\mathcal{N}(x; \mu_q, \Sigma_q) \| \mathcal{N}(x; \mu_p, \Sigma_p)) = \frac{1}{2} \left[ \log \frac{|\Sigma_p|}{|\Sigma_q|} - d + \text{tr}(\Sigma_p^{-1} \Sigma_q) + (\mu_p - \mu_q)^T \Sigma_p^{-1} (\mu_p - \mu_q) \right]. DKL(N(x;μq,Σq)∥N(x;μp,Σp))=21[log∣Σq∣∣Σp∣−d+tr(Σp−1Σq)+(μp−μq)TΣp−1(μp−μq)].

  • tr ( Σ p − 1 Σ q ) \text{tr}(\Sigma_p^{-1} \Sigma_q) tr(Σp−1Σq):表示协方差矩阵 Σ q \Sigma_q Σq 和 Σ p \Sigma_p Σp 在空间变换上的关系。
  • 如果 Σ p = Σ q \Sigma_p = \Sigma_q Σp=Σq,则 tr ( Σ p − 1 Σ q ) = tr ( I ) = d \text{tr}(\Sigma_p^{-1} \Sigma_q) = \text{tr}(I) = d tr(Σp−1Σq)=tr(I)=d。

4. 直观理解迹的作用

  1. 空间几何解释:

    • 矩阵的迹反映了该矩阵在空间中拉伸变换的规模。
    • 在 KL 散度中, tr ( Σ p − 1 Σ q ) \text{tr}(\Sigma_p^{-1} \Sigma_q) tr(Σp−1Σq) 衡量了从 Σ p \Sigma_p Σp 到 Σ q \Sigma_q Σq 的变换是否一致。
  2. 在优化中的意义:

    • 当 Σ q ≈ Σ p \Sigma_q \approx \Sigma_p Σq≈Σp 时,迹项会趋近于 d d d,表示两个分布的协方差矩阵非常接近。

这里我们将 μ q \mu_q μq简写为 μ q ( x t , x 0 ) \mu_q(x_t, x_0) μq(xt,x0),将 μ θ \mu_\theta μθ简写为 μ θ ( x t , t ) \mu_\theta(x_t, t) μθ(xt,t)以简化表达。换句话说,我们希望优化一个 μ θ ( x t , t ) \mu_\theta(x_t, t) μθ(xt,t),使其匹配 μ q ( x t , x 0 ) \mu_q(x_t, x_0) μq(xt,x0),而根据我们推导的公式(84), μ q ( x t , x 0 ) \mu_q(x_t, x_0) μq(xt,x0)的形式为:

μ q ( x t , x 0 ) = α t ( 1 − α ˉ t − 1 ) x t + α ˉ t − 1 ( 1 − α t ) x 0 1 − α ˉ t (93) \mu_q(x_t, x_0) = \frac{\sqrt{\alpha_t} (1 - \bar{\alpha}{t-1}) x_t + \sqrt{\bar{\alpha}{t-1}} (1 - \alpha_t) x_0}{1 - \bar{\alpha}_t} \tag{93} μq(xt,x0)=1−αˉtαt (1−αˉt−1)xt+αˉt−1 (1−αt)x0(93)

由于 μ θ ( x t , t ) \mu_\theta(x_t, t) μθ(xt,t)同样以 x t x_t xt为条件,我们可以通过将其设置为以下形式,使其与 μ q ( x t , x 0 ) \mu_q(x_t, x_0) μq(xt,x0)尽可能接近:

μ θ ( x t , t ) = α t ( 1 − α ˉ t − 1 ) x t + α ˉ t − 1 ( 1 − α t ) x ^ θ ( x t , t ) 1 − α ˉ t (94) \mu_\theta(x_t, t) = \frac{\sqrt{\alpha_t} (1 - \bar{\alpha}{t-1}) x_t + \sqrt{\bar{\alpha}{t-1} }(1 - \alpha_t) \hat{x}_\theta(x_t, t)}{1 - \bar{\alpha}_t} \tag{94} μθ(xt,t)=1−αˉtαt (1−αˉt−1)xt+αˉt−1 (1−αt)x^θ(xt,t)(94)

其中, x ^ θ ( x t , t ) \hat{x}_\theta(x_t, t) x^θ(xt,t)由一个神经网络参数化,该神经网络试图从噪声图像 x t x_t xt和时间索引 t t t中预测 x 0 x_0 x0。然后,优化问题简化为:

arg ⁡ min ⁡ θ   D K L ( q ( x t − 1 ∣ x t , x 0 )   ∣ ∣   p θ ( x t − 1 ∣ x t ) ) = arg ⁡ min ⁡ θ   D K L ( N ( x t − 1 ; μ q , Σ q ( t ) )   ∣ ∣   N ( x t − 1 ; μ θ , Σ q ( t ) ) ) (95) = arg ⁡ min ⁡ θ   1 2 σ q 2 ( t ) [ ∥ α t ( 1 − α ˉ t − 1 ) x t + α ˉ t − 1 ( 1 − α t ) x ^ θ ( x t , t ) 1 − α ˉ t − α t ( 1 − α ˉ t − 1 ) x t + α ˉ t − 1 ( 1 − α t ) x 0 1 − α ˉ t ∥ 2 2 ] (96) = arg ⁡ min ⁡ θ   1 2 σ q 2 ( t ) [ ∥ α ˉ t − 1 ( 1 − α t ) x ^ θ ( x t , t ) 1 − α ˉ t − α ˉ t − 1 ( 1 − α t ) x 0 1 − α ˉ t ∥ 2 2 ] (97) = arg ⁡ min ⁡ θ   1 2 σ q 2 ( t ) [ ∥ α ˉ t − 1 ( 1 − α t ) 1 − α ˉ t ( x ^ θ ( x t , t ) − x 0 ) ∥ 2 2 ] (98) = arg ⁡ min ⁡ θ   1 2 σ q 2 ( t ) α ˉ t − 1 ( 1 − α t ) 2 ( 1 − α ˉ t ) 2 [ ∥ x ^ θ ( x t , t ) − x 0 ∥ 2 2 ] (99) \begin{aligned} \arg \min_\theta \, & D_{KL}(q(x_{t-1}|x_t, x_0) \,||\, p_\theta(x_{t-1}|x_t)) \\ &= \arg \min_\theta \, D_{KL}(\mathcal{N}(x_{t-1}; \mu_q, \Sigma_q(t)) \,||\, \mathcal{N}(x_{t-1}; \mu_\theta, \Sigma_q(t))) &\text{(95)} \\ &= \arg \min_\theta \, \frac{1}{2\sigma_q^2(t)} \Bigg[\left\| \frac{\sqrt{\alpha_t}(1 - \bar{\alpha}{t-1}) x_t + \sqrt{\bar{\alpha}{t-1}}(1 - \alpha_t) \hat{x}\theta(x_t, t)}{1 - \bar{\alpha}t} - \frac{\sqrt{\alpha_t}(1 - \bar{\alpha}{t-1}) x_t + \sqrt{\bar{\alpha}{t-1}}(1 - \alpha_t) x_0}{1 - \bar{\alpha}t} \right\|2^2 \Bigg] &\text{(96)} \\ &= \arg \min\theta \, \frac{1}{2\sigma_q^2(t)} \Bigg[ \left\| \frac{\sqrt{\bar{\alpha}{t-1}}(1 - \alpha_t)\hat{x}\theta(x_t, t)}{1 - \bar{\alpha}t}- \frac{\sqrt{\bar{\alpha}{t-1}}(1 - \alpha_t)x_0}{1 - \bar{\alpha}t} \right\|2^2 \Bigg] &\text{(97)} \\ &= \arg \min\theta \, \frac{1}{2\sigma_q^2(t)} \Bigg[ \left\| \frac{\sqrt{\bar{\alpha}{t-1}}(1 - \alpha_t)}{1 - \bar{\alpha}t} \left( \hat{x}\theta(x_t, t) - x_0 \right) \right\|2^2 \Bigg] &\text{(98)} \\ &= \arg \min\theta \, \frac{1}{2\sigma_q^2(t)} \frac{\bar{\alpha}{t-1}(1 - \alpha_t)^2}{(1 - \bar{\alpha}t)^2 } \Big[ \left\| \hat{x}\theta(x_t, t) - x_0 \right\|_2^2 \Big]&\text{(99)} \end{aligned} argθminDKL(q(xt−1∣xt,x0)∣∣pθ(xt−1∣xt))=argθminDKL(N(xt−1;μq,Σq(t))∣∣N(xt−1;μθ,Σq(t)))=argθmin2σq2(t)1[ 1−αˉtαt (1−αˉt−1)xt+αˉt−1 (1−αt)x^θ(xt,t)−1−αˉtαt (1−αˉt−1)xt+αˉt−1 (1−αt)x0 22]=argθmin2σq2(t)1[ 1−αˉtαˉt−1 (1−αt)x^θ(xt,t)−1−αˉtαˉt−1 (1−αt)x0 22]=argθmin2σq2(t)1[ 1−αˉtαˉt−1 (1−αt)(x^θ(xt,t)−x0) 22]=argθmin2σq2(t)1(1−αˉt)2αˉt−1(1−αt)2[∥x^θ(xt,t)−x0∥22](95)(96)(97)(98)(99)

∥ ⋅ ∥ 2 2 是什么? \left\|\cdot\right\|^2_2是什么? ∥⋅∥22是什么?

因此,优化VDM归结为学习一个神经网络,从任意加噪的图像版本中预测原始的真实图像 [5]。此外,最小化我们推导出的ELBO目标(公式58)中关于所有噪声水平的求和项,可以通过最小化关于所有时间步的期望来近似实现:

arg ⁡ min ⁡ θ   E t ∼ U { 2 , T } [ E q ( x t ∣ x 0 ) [ D K L ( q ( x t − 1 ∣ x t , x 0 )   ∣ ∣   p θ ( x t − 1 ∣ x t ) ) ] ] (100) \arg \min_\theta \, \mathbb{E}{t \sim \mathcal{U}\{2, T\}} \left[ \mathbb{E}{q(x_t|x_0)} \left[ D_{KL}(q(x_{t-1}|x_t, x_0) \,||\, p_\theta(x_{t-1}|x_t)) \right] \right] \tag{100} argθminEt∼U{2,T}[Eq(xt∣x0)[DKL(q(xt−1∣xt,x0)∣∣pθ(xt−1∣xt))]](100)

这可以通过对时间步的随机采样进行优化。

相关推荐
清风吹过1 天前
LSTM新架构论文分享6:LSTM+Transformer融合
论文阅读·人工智能·深度学习·神经网络·lstm·transformer
DuHz1 天前
汽车角雷达波形设计与速度模糊解决方法研究——论文阅读
论文阅读·物联网·算法·汽车·信息与通信·信号处理
有点不太正常1 天前
Differentially Private Synthetic Text Generation for RAG——论文阅读
论文阅读·大模型·llm·rag
DuHz1 天前
基于多普勒频率和距离变化率联合测量的增强型速度估计方法——论文阅读
论文阅读·目标检测·汽车·信息与通信·信号处理
墨绿色的摆渡人1 天前
论文笔记(九十三)ManipulationNet: Benchmarking
论文阅读
bylander1 天前
【论文阅读】REACT: SYNERGIZING REASONING AND ACTING IN LANGUAGE MODELS
论文阅读·语言模型·智能体
吃吃今天努力学习了吗2 天前
【论文阅读】Segment Any 3D Gaussians
论文阅读·3d·3dgs·三维分割
MoyiTech2 天前
【论文阅读】LANGUAGE MODELS CAN LEARN FROM VERBAL FEEDBACK WITHOUT SCALAR REWARDS
论文阅读·人工智能·语言模型
红苕稀饭6663 天前
LLaVA-OneVision论文阅读
论文阅读
CV-杨帆3 天前
论文阅读:arxiv 2025 Scaling Laws for Differentially Private Language Models
论文阅读·人工智能·语言模型