资讯详情

Diffusion模型详解

1 引言

?在最后一篇文章《基于流的深度生成模型》中,介绍了关于流的生成模型的理论和方法。到目前为止,基于GAN基于生成模型VAE基于生成模型的生成模型flow它们都能生成高质量的样本,但每种方法都有其局限性。GAN模式崩溃和训练不稳定会出现在对抗训练过程中;VAE严重依赖于目标损失函数;流动模型必须使用特殊框架来构建可逆变换。本文主要介绍了非平衡热力学的扩散模型。它们定义了扩散步骤的马尔可夫链,慢慢地将随机噪声添加到数据中,然后学习从噪声中构建所需的数据样本。 与VAE或者流模型不同,扩散模型是通过固定过程学习的,中间的隐变量与原始数据具有高维度。

  • 扩散模型易于分析和灵活。我们应该知道,易于处理和灵活性是建模中两个相互冲突的目标。易于处理的模型可以分析、评估和拟合数据,但不能轻易描述丰富数据集中的结构。灵活的模型可以拟合数据中的任何结构,但评估、训练或采样的成本将非常高。
  • 扩散模型依赖于长马尔可夫扩散步骤链来生成样本,因此在时间和计算方面的成本将非常高。提出了一种新的方法来使过程更快,但采样的整体过程仍然比GAN慢。

2 向前扩散过程

?给定从真实数据分布 x 0 ~ q ( x ) {\bf{x}}_0\sim q({\bf{x}}) x0~q(x)在前向扩散过程中,采样数据点 T T T逐渐向样本中添加少量高斯噪声,从而产生一系列噪声样本 x 1 , ? ? , x T {\bf{x}}_1,\cdots,{\bf{x}}_T x1,?,xT,步长由方差计划 { β t ∈ ( 0 , 1 ) } t = 1 T \{\beta_t\in(0,1)\}_{t=1}^T { βt​∈(0,1)}t=1T​来控制,则有 q ( x t ∣ x t − 1 ) = N ( x t ; 1 − β x t − 1 , β t I ) q ( x 1 : T ∣ x 0 ) = ∏ t = 1 T q ( x t ∣ x t − 1 ) q({\bf{x}}_t|{\bf{x}}_{t-1})=\mathcal{N}({\bf{x}}_t;\sqrt{1-\beta}{\bf{x}}_{t-1},\beta_t {\bf{I}})\quad q({\bf{x}}_{1:T}|{\bf{x}}_0)=\prod_{t=1}^Tq({\bf{x}}_t|{\bf{x}}_{t-1}) q(xt​∣xt−1​)=N(xt​;1−β ​xt−1​,βt​I)q(x1:T​∣x0​)=t=1∏T​q(xt​∣xt−1​)在扩散过程进行的时候,随着时长步长 t t t的增大,数据样本 x 0 {\bf{x}}_0 x0​逐渐失去其可区分的特征。最终,当 T → ∞ T\rightarrow \infty T→∞, x T {\bf{x}}_T xT​等价于各向同性高斯分布(各向同性的高斯分布即球形高斯分布,特指的是各个方向方差都一样的多维高斯分布,协方差为正实数与单位矩阵相乘)。 上述过程的一个很好的特性是可以使用重新参数化技巧以封闭形式在任意时间步长 t t t对 x t {\bf{x}}_t xt​进行采样。 令 α t = 1 − β t \alpha_t=1-\beta_t αt​=1−βt​和 α ˉ t = ∏ i = 1 T α i \bar{\alpha}_t=\prod_{i=1}^T \alpha_i αˉt​=∏i=1T​αi​,进而则有: x t = α t x t − 1 + 1 − α t z t − 1 = α t α t − 1 x t − 2 + 1 − α t α t − 1 z ˉ t − 2 = ⋯ = α ˉ t x 0 + 1 − α ˉ t z q ( x t ∣ x 0 ) = N ( x t ; α ˉ t x 0 , ( 1 − α ˉ t ) I ) \begin{aligned}{\bf{x}}_t&=\sqrt{\alpha_t}{\bf{x}}_{t-1}+\sqrt{1-\alpha_t}{\bf{z}}_{t-1}\\&=\sqrt{\alpha_t\alpha_{t-1}}{\bf{x}}_{t-2}+\sqrt{1-\alpha_t\alpha_{t-1}}{\bf{\bar{z}}}_{t-2}\\&=\cdots\\&=\sqrt{\bar{\alpha}_t}{\bf{x}}_0+\sqrt{1-\bar{\alpha}_t}{\bf{z}}\\q({\bf{x}}_t|{\bf{x}}_0)&=\mathcal{N}({\bf{x}}_t;\sqrt{\bar{\alpha}_t}{\bf{x}}_0,(1-\bar{\alpha}_t){\bf{I}})\end{aligned} xt​q(xt​∣x0​)​=αt​ ​xt−1​+1−αt​ ​zt−1​=αt​αt−1​ ​xt−2​+1−αt​αt−1​ ​zˉt−2​=⋯=αˉt​ ​x0​+1−αˉt​ ​z=N(xt​;αˉt​ ​x0​,(1−αˉt​)I)​其中 z t − 1 , z t − 2 , ⋯ ∼ N ( 0 , I ) {\bf{z}}_{t-1},{\bf{z}}_{t-2},\cdots \sim\mathcal{N}({\bf{0}},{\bf{I}}) zt−1​,zt−2​,⋯∼N(0,I), z ˉ t − 2 {\bar{\bf{z}}}_{t-2} zˉt−2​融合两个高斯分布。当合并两个具有不同方差 N ( 0 , σ 1 2 I ) \mathcal{N}({\bf{0}},\sigma^2_1{\bf{I}}) N(0,σ12​I)和 N ( 0 , σ 2 2 I ) \mathcal{N}({\bf{0}},\sigma^2_2{\bf{I}}) N(0,σ 标签: tvb25sl传感器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台