【扩散模型】潜扩散模型LDMv2原理

Stable Diffusion v1

2022年8月,Stable Diffusion v1公开版正式发布,此模型以LDM架构为基础,在最新的公开训练集LAION-5B的子集上完成训练,最终的模型可以生成512*512分辨率的图像。并且,模型使用了冻结的 CLIP ViT-L 作为文本编码器,参数量达到了1.23亿。重要的一点是,此模型可以在10GB显存的GPU设备上运行。

在这里插入图片描述

在这里插入图片描述

后面围绕SD迅速出现了各种图像使用界面GUI、多种模型微调方法finetune方法,以及众多控制模型。

有了LAION-5B数据集,LDM也进行了改进,提出了LDMv2

LDM v2

High-Resolution Image Synthesis with Latent Diffusion Models

2022.04 CVPR

https://arxiv.org/abs/2112.10752

https://github.com/CompVis/latent-diffusion

摘要

通过将图像形成过程分解为去噪自编码器的顺序应用,扩散模型(DMs)在图像数据和其他数据上实现了最先进的合成结果。此外,它们的配方允许一个指导机制来控制图像生成过程,而无需再训练。然而,由于这些模型通常直接在像素空间中操作,因此优化功能强大的dm通常会消耗数百个GPU天,并且由于顺序评估而导致推理成本高昂。为了使DM训练在有限的计算资源上同时保持其质量和灵活性,我们将它们应用于强大的预训练自编码器的潜在空间。与之前的工作相比,在这种表示上训练扩散模型可以首次在复杂性降低和细节保存之间达到近乎最佳的点,极大地提高了视觉保真度。

通过在模型架构中**引入交叉注意层,我们将扩散模型转变为强大而灵活的生成器,用于一般条件输入(如文本或边界框),并以卷积方式实现高分辨率合成**。我们的潜在扩散模型(ldm)在图像绘制和类别条件图像合成方面取得了新的最先进的分数,并在各种任务上表现出极具竞争力的性能,包括文本到图像合成、无条件图像生成和超分辨率,同时与基于像素的DMs相比,显著降低了计算需求。

引言

使高分辨率图像合成大众化

虽然重加权变分目标旨在通过对初始去噪步骤进行欠采样来解决这个问题,但dm仍然需要计算量,因为训练和评估这样的模型需要在RGB图像的高维空间中重复进行函数评估(和梯度计算)。在单个A100 GPU上产生50k个样本大约需要5天,这对训练和评估都是很大的计算消耗

为了提高这种强大的模型类的可访问性,同时减少其显著的资源消耗,需要一种方法来降低训练和采样的计算复杂度。因此,在不损害其性能的情况下减少dm的计算需求是增强其可访问性accessibility的关键。

向潜空间出发

目标是首先找到一个感知上等效的,但计算上更合适的空间,在这个空间中,将训练用于高分辨率图像合成的扩散模型。

图2显示了训练模型的速率失真权衡。与任何基于似然的模型一样,学习可以大致分为两个阶段:首先是感知压缩阶段,该阶段去除高频细节,但仍然学习很少的语义变化。在第二阶段,实际生成模型学习数据的语义和概念组成(语义压缩)。因此,文章的目标是首先找到一个感知上等效的,但计算上更合适的空间,在这个空间中,我们将训练用于高分辨率图像合成的扩散模型。

在这里插入图片描述

("bits/dim"通常指的是比特每维度(Bits per Dimension, bpd)或比特率(bit rate),它是一个度量模型效率和信息压缩能力的指标。在上下文中,它用来衡量模型生成的随机变量(如概率分布)所占用的平均比特数,每个维度代表数据的一个特征或者模型参数的大小。当这个值越低,意味着模型对数据的表示更加高效,能够用更少的比特来编码相同的信息量。)

LDM优点:

只需要训练通用自编码阶段一次,因此可以将其重用于多个DM训练或探索可能完全不同的任务。这使得能够有效地探索各种图像到图像和文本到图像任务的大量扩散模型。对于后者,设计了一种架构,将Transformer连接到DM的U-Net主干,并启用任意类型的token-base的条件调节机制。

可以自由选择在学习强大的第一阶段之间进行最佳调解的压缩水平,而不会将太多的感知压缩留给生成扩散模型,同时保证高保真重建。

贡献:

  • 与纯粹基于Transformer的方法相比,本文的方法更适合高维数据,因此可以

    (a) 在压缩级别上工作,提供比以前的工作更忠实和详细的重建(见图1)

    在这里插入图片描述

    (b) 可以有效的应用于百万像素图像的高分辨率合成。

  • 在多个任务(无条件图像合成、图像绘制、随机超分辨率)和数据集上实现了具有竞争力的性能,同时显著降低了计算成本。与基于像素的扩散方法相比,还显著降低了推理成本。

  • 可以同时学习编码器/解码器架构和基于分数的先验,不需要精细的重构和生成能力加权。这确保了极其忠实的重建,并且只需要很少的潜在空间正则化。

  • 对于超分辨率、图像绘制和语义合成等密集条件任务,我们的模型可以以卷积方式应用,并呈现出~ 10242像素的大而一致的图像。

  • 此外,我们设计了一种基于交叉注意的通用条件反射机制,实现了多模态训练。我们用它来训练类条件、文本到图像和布局到图像模型。

方法

Perceptual Image Compression

VAE为全卷积结构(基于ResnetBlock,中间存在两个self attention层)。

为了避免任意高方差的潜在空间,实验了两种不同的正则化。

KL-reg对学习潜信号的标准常态施加轻微的kl惩罚,类似于VAE。而VQ-reg在解码器中使用矢量量化层

Latent Diffusion Models

在这里插入图片描述
L D M = E x , ϵ ∼ N ( 0 , 1 ) , t [ ∥ ϵ − ϵ θ ( x t , t ) ∥ 2 2 ] L_{DM}=\mathbb{E}_{x,\epsilon\sim\mathcal{N}(0,1),t}\Big[\|\epsilon-\epsilon_{\theta}(x_{t},t)\|_{2}^{2}\Big] LDM=Ex,ϵN(0,1),t[ϵϵθ(xt,t)22]

有了训练过的由E和D组成的感知压缩模型,我们现在可以访问一个有效的、低维的潜在空间,在这个空间中,高频的、不可察觉的细节被抽象掉了。与高维像素空间相比,这个空间更适合基于似然的生成模型,因为它们现在可以(i)专注于数据的重要语义位,(ii)在较低维,计算效率更高的空间中进行训练。

L L D M : = E E ( x ) , ϵ ∼ N ( 0 , 1 ) , t [ ∥ ϵ − ϵ θ ( z t , t ) ∥ 2 2 ] L_{LDM}:=\mathbb{E}_{\mathcal{E}(x),\epsilon\sim\mathcal{N}(0,1),t}\Big[\|\epsilon-\epsilon_{\theta}(z_{t},t)\|_{2}^{2}\Big] LLDM:=EE(x),ϵN(0,1),t[ϵϵθ(zt,t)22]

模型的神经主干 ϵ θ ( ∘ , t ) \epsilon_{\theta}(\circ,t) ϵθ(,t)被实现为一个时间条件U-Net。由于前向过程是固定的,所以在训练过程中可以有效地从 ϵ \epsilon ϵ中获得zt,并且p(z)的样本可以通过D一次解码到图像空间。

Conditioning Mechanisms

为了从各种模式(如语言提示)预处理y,引入了一个特定领域的编码器 τ θ \tau_{\theta} τθ,它将y投影到中间表示 τ θ ( y ) ∈ R M × d ^ τ \tau_{\theta}(y)\in\mathbb{R}^{M\times\hat{d}_{\tau}} τθ(y)RM×d^τ,然后通过跨注意层将其映射到U-Net的中间层,实现 A t t e n t i o n ( Q , K , V ) = s o f t m a x ( Q K T d ) ⋅ V \mathrm{Attention}(Q,K,V)=\mathrm{softmax}\left(\frac{QK^{T}}{\sqrt{d}}\right)\cdot V Attention(Q,K,V)=softmax(d QKT)V

Q = W Q ( i ) ⋅ φ i ( z t ) , K = W K ( i ) ⋅ τ θ ( y ) , V = W V ( i ) ⋅ τ θ ( y ) . Q=W_Q^{(i)}\cdot\varphi_i(z_t), K=W_K^{(i)}\cdot\tau_\theta(y), V=W_V^{(i)}\cdot\tau_\theta(y). Q=WQ(i)φi(zt),K=WK(i)τθ(y),V=WV(i)τθ(y).

这里, φ i ( z t ) ∈ R N × d ϵ i \varphi_i(z_t) \in \mathbb{R}^{N\times d_\epsilon^i} φi(zt)RN×dϵi表示实现 ϵ θ \epsilon_{\theta} ϵθ的U-Net的(扁平)中间表示,W是可学习的投影矩阵。

L L D M : = E E ( x ) , y , ϵ ∼ N ( 0 , 1 ) , t [ ∥ ϵ − ϵ θ ( z t , t , τ θ ( y ) ) ∥ 2 2 ] L_{LDM}:=\mathbb{E}_{\mathcal{E}(x),y,\epsilon\sim\mathcal{N}(0,1),t}\Big[\|\epsilon-\epsilon_{\theta}(z_{t},t,\tau_{\theta}(y))\|_{2}^{2}\Big] LLDM:=EE(x),y,ϵN(0,1),t[ϵϵθ(zt,t,τθ(y))22]

其中 τ θ \tau_\theta τθ ϵ θ \epsilon_\theta ϵθ通过上述公式联合优化。这种调节机制是灵活的,因为 τ θ \tau_\theta τθ可以用特定领域的专家参数化。

实验

关于感知压缩的权衡

分析具有不同下采样因子f∈{1,2,4,8,16,32}(缩写为LDM-f,其中LDM-1对应基于像素的dm)的dm的行为。

在这里插入图片描述

图6显示了在ImageNet数据集上,类条件模型训练2M步的样本质量与训练进度的关系。① LDM-{1,2}较小的下采样因子导致训练进度缓慢,而②过大的f值导致在相对较少的训练步骤后保真度停滞。

回顾上面的分析(图1和图2),我们将其归因于①将大部分感知压缩留给扩散模型,②过于强大的第一阶段压缩导致信息丢失,从而限制了可实现的质量。LDM-{4-16}在效率和感知忠实度之间取得了很好的平衡,这体现在经过2M训练步骤后,基于像素的扩散(LDM-1)和LDM-8之间存在38的显著FID差距。所有模型都在具有相同计算预算的单个NVIDIA A100上进行训练。100步DDIM得到的结果。

基于潜在扩散的图像生成

在这里插入图片描述

在这里插入图片描述

条件潜伏扩散

Transformer Encoders for LDMs

通过将基于交叉注意的条件作用引入LDM,为扩散模型中以前未探索的各种条件作用模式打开了大门。对于文本到图像的图像建模,在LAION-400M上训练了一个1.45B参数的kl正则化LDM,该LDM以语言提示为条件,使用bert标记器并实现 τ θ \tau_\theta τθ作为转换器来推断通过(多头)交叉注意映射到UNet的潜在代码。

在这里插入图片描述

布局-图像生成coco数据集

在这里插入图片描述

Convolutional Sampling Beyond 2562

更高的分辨率

在这里插入图片描述

以及其他应用

相关论文和代码下载

有时候论文网站arXiv.org打开比较慢,已经将相关论文和代码上传到网盘,需要的可以自取

链接: https://pan.baidu.com/s/1J1h8R4KyY7k6NgS2t7YOZg?pwd=3ss8

可以关注公众号:

搜索:福尔马林灌汤包
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值