Diffusion模型详解

1 引言

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

  • 优点: 扩散模型既易于分析又很灵活。要知道易处理性和灵活性是生成建模中两个相互冲突的目标。易于处理的模型可以进行分析评估和拟合数据,但它们不能轻易地描述丰富数据集中的结构。灵活的模型可以拟合数据中的任意结构,但是从这些模型中评估、训练或采样的成本会很高。
  • 缺点: 扩散模型依赖于长马尔可夫扩散步骤链来生成样本,因此在时间和计算方面成本会很高。目前已经提出了新的方法来使该过程更快,但采样的整体过程仍然比GAN慢。
    Diffusion模型详解

2 前向扩散过程

给定从真实数据分布Diffusion模型详解中采样的数据点,在一个前向扩散过程,在Diffusion模型详解步里逐步向样本中添加少量高斯噪声,从而产生一系列噪声样本Diffusion模型详解,其步长由方差计划Diffusion模型详解来控制,则有Diffusion模型详解在扩散过程进行的时候,随着时长步长Diffusion模型详解的增大,数据样本Diffusion模型详解逐渐失去其可区分的特征。最终,当Diffusion模型详解, Diffusion模型详解等价于各向同性高斯分布(各向同性的高斯分布即球形高斯分布,特指的是各个方向方差都一样的多维高斯分布,协方差为正实数与单位矩阵相乘)。
Diffusion模型详解

3 更新过程

Langevin动力学是物理学中的一个概念,用于对分子系统进行统计建模。结合随机梯度下降,随机梯度朗之万动力学可以仅使用马尔可夫更新链中的梯度Diffusion模型详解从概率密度Diffusion模型详解生成样本:Diffusion模型详解其中Diffusion模型详解为步长。当Diffusion模型详解时,Diffusion模型详解,Diffusion模型详解_T则等于真实概率密度Diffusion模型详解。与标准SGD相比,随机梯度Langevin动力学将高斯噪声注入到参数更新中,以避免陷入到局部最小值中。

4 反向扩散过程

如果将上述过程进行反转并从概率分布Diffusion模型详解中进行采样,则能够从高斯噪声输入Diffusion模型详解中重新构造真实样本。需要注意的是如果Diffusion模型详解足够小,Diffusion模型详解也将是高斯分布。但这需要使用整个数据集进行估计,因此需要学习一个模型Diffusion模型详解来近似这些条件概率,以便进行反向扩散过程Diffusion模型详解当条件为Diffusion模型详解时,反向条件概率是容易估计处理的:Diffusion模型详解使用贝叶斯法则可以得到Diffusion模型详解其中Diffusion模型详解函数与Diffusion模型详解无关。按照标准高斯密度函数,均值和方差可以参数化如下Diffusion模型详解Diffusion模型详解带入到以上公式中则有Diffusion模型详解这种设置与VAE非常相似,因此可以使用变分下限来优化负对数似然,进而则有Diffusion模型详解使用Jensen不等式也很容易得到相同的结果。假设要最小化交叉熵作为学习目标,则有Diffusion模型详解为了将方程中的每个项转换为可解析计算的,可以将目标进一步重写为几个KL散度和熵项的组合Diffusion模型详解分别标记变分下界损失中的每个分量为Diffusion模型详解Diffusion模型详解中的每个KL项(除了Diffusion模型详解)都测量两个高斯分布之间的距离,因此可以以闭式解来计算它们。Diffusion模型详解是常数,在训练过程中可以被忽略,其原因在于Diffusion模型详解没有可学习的参数并且Diffusion模型详解是高斯噪声,Diffusion模型详解可以从Diffusion模型详解中推导出来。

5 训练损失的参数化

当需要学习一个神经网络来逼近反向扩散过程中的条件概率分布Diffusion模型详解时,即想训练Diffusion模型详解预测Diffusion模型详解。 因为Diffusion模型详解在训练时可用作输入,可以重新参数化高斯噪声项,以使其从时间步长Diffusion模型详解的输入Diffusion模型详解中预测Diffusion模型详解
Diffusion模型详解损失项Diffusion模型详解是被参数化目的是最小化来自Diffusion模型详解的差异Diffusion模型详解根据经验Ho等人的经验,发现在忽略加权项的简化目标下,训练扩散模型效果更好:Diffusion模型详解所以最终简化后的目标函数是:Diffusion模型详解其中Diffusion模型详解是不取决于Diffusion模型详解的常数。

6 噪声评分条件网络(NCSN)

Song和Ermon等人提出了一种基于分数的生成建模方法,其中样本是通过Langevin动力学使用分数匹配估计的数据分布梯度生成的。每个样本Diffusion模型详解的密度概率得分定义为其梯度Diffusion模型详解。训练一个分数网络Diffusion模型详解来估计它。为了在深度学习设置中使用高维数据使其可扩展,有研究建议使用去噪分数匹配(向数据添加预先指定的小噪声)或切片分数匹配。Langevin动力学可以仅使用迭代过程中的分数从概率密度分布中采样数据点Diffusion模型详解。然而,根据流形假设,大多数数据预计集中在低维流形中,即使观察到的数据可能看起来只是任意高维。由于数据点无法覆盖整个空间Diffusion模型详解,因此对分数估计产生了负面影响。在数据密度低的区域,分数估计不太可靠。添加一个小的高斯噪声使扰动的数据分布覆盖整个空间后,分数评估网络的训练变得更加稳定。 Song和Ermon等人通过用不同级别的噪声扰动数据来改进它,并训练一个噪声条件评分网络来共同估计所有扰动数据在不同噪声级别下的分数。

7 Diffusion模型详解Diffusion模型详解的参数化

参数化Diffusion模型详解的过程中,Ho等人将前向方差被设置为一系列线性增加的常数,从Diffusion模型详解Diffusion模型详解。与Diffusion模型详解之间的归一化图像像素值相比,它们相对较小。在此设置下实验中的扩散模型生成了高质量的样本,但仍然无法像其他生成模型那样实现具有竞争力。Nichol和Dhariwal等人提出了几种改进技术来帮助扩散模型获得更低的NLL。 其中一项改进是使用基于余弦的方差计划。调度函数的选择可以是任意的,只要它在训练过程的中间提供一个近线性的下降和围绕Diffusion模型详解Diffusion模型详解的细微变化Diffusion模型详解其中当Diffusion模型详解时小偏移量Diffusion模型详解是为了防止Diffusion模型详解接近时太小。
参数化Diffusion模型详解的过程中,Ho等人选择固定Diffusion模型详解为常量,而不是使它们可学习并设置Diffusion模型详解, 其中Diffusion模型详解是不可学习的。实验发现学习对角方差Diffusion模型详解会导致训练不稳定和样本质量下降。Nichol和Dhariwal等人提出将学习Diffusion模型详解作为Diffusion模型详解Diffusion模型详解之间的插值,通过模型预测混合向量Diffusion模型详解,则有:Diffusion模型详解简单的目标Diffusion模型详解并不依赖于Diffusion模型详解。为了增加依赖性,他们构建了一个混合目标Diffusion模型详解,其中Diffusion模型详解很小并且停止在Diffusion模型详解的梯度,以便Diffusion模型详解仅指导Diffusion模型详解的学习。可以观察到,由于梯度噪声,优化Diffusion模型详解是非常困难的,因此他们建议使用具有重要性采样的时间平均平滑版本。

8 加速扩散模型采样

通过遵循反向扩散过程的马尔可夫链从DDPM生成样本非常慢,可能长达一个或几千个步骤。从DDPM中采样Diffusion模型详解个大小为Diffusion模型详解的图像大约需要Diffusion模型详解小时,但从Nvidia 2080 Ti GPU上的GAN中采样不到一分钟。一种简单的方法是运行跨步抽样计划,每一步都进行抽样更新,以减少中间的采样过程。对于另一种方法,需要重写Diffusion模型详解以通过所需的标准偏差Diffusion模型详解进行参数化:Diffusion模型详解因为Diffusion模型详解,因此则有Diffusion模型详解Diffusion模型详解,进而可以通过调整为超参数Diffusion模型详解来控制采样随机性。Diffusion模型详解的特殊情况使采样过程具有确定性,这样的模型被命名为去噪扩散隐式模型(DDIM)。DDIM具有相同的边际噪声分布,但确定性地将噪声映射回原始数据样本。在生成过程中,只对扩散步骤的一个子集Diffusion模型详解进行采样为Diffusion模型详解,推理过程变为:Diffusion模型详解可以观察到DDIM在较小采样数的情况下可以产生最佳质量的样本,而DDPM在较小采样数的情况下表现要差得多。使用 DDIM可以将扩散模型训练到任意数量的前向步骤,但只能从生成过程中的步骤子集进行采样。总结来说,与DDPM相比,DDIM优点如下:

  • 使用更少的步骤生成更高质量的样本。
  • 由于生成过程是确定性的,因此具有“一致性”属性,这意味着以相同隐变量为条件的多个样本应该具有相似的高级特征。
  • 由于一致性,DDIM可以在隐变量中进行语义上有意义的插值。

9 条件生成

在ImageNet数据上训练生成模型时,通常会生成以类标签为条件的样本。为了明确地将类别信息纳入扩散过程,Dhariwal和Nichol对噪声图像Diffusion模型详解训练了一个分类器Diffusion模型详解,并使用梯度Diffusion模型详解来引导扩散采样过程朝向目标类别标签Diffusion模型详解。消融扩散模型 (ADM) 和带有附加分类器引导的模型 (ADM-G) 能够获得比当前最好生成模型(BigGAN)更好的结果。此外,Dhariwal和Nichol等人通过对UNet架构进行一些修改,显示出比具有扩散模型的GAN更好的性能。模型架构修改包括更大的模型深度/宽度、更多注意力头、多分辨率注意力、用于上/下采样的BigGAN残差块、残差连接重新缩放和自适应组归一化 (AdaGN)。

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
心中带点小风骚的头像心中带点小风骚普通用户
上一篇 2023年2月26日 上午10:37
下一篇 2023年2月26日 上午10:38

相关推荐