图像生成论文阅读:GLIDE算法笔记

news2024/11/13 10:19:04

标题:GLIDE: Towards Photorealistic Image Generation and Editing with Text-Guided Diffusion Models
会议:ICML2022
论文地址:https://proceedings.mlr.press/v162/nichol22a.html
官方代码:https://github.com/openai/glide-text2im
作者单位:OpenAI

文章目录

  • Abstract
  • 1. Introduction
  • 2. Background
    • 2.1. Diffusion Models
    • 2.2. Guided Diffusion
    • 2.3. Classifier-free guidance
    • 2.4. CLIP Guidance
  • 3. Related Work
  • 4. Training
    • 4.1. Text-Conditional Diffusion Models
    • 4.2. Fine-tuning for classifier-free guidance
    • 4.3. Image Inpainting
    • 4.4. Noised CLIP models
  • 5. Results
    • 5.1. Qualitative Results
    • 5.2. Quantitative Results
  • 6. Conclusion and Future work

Abstract

扩散模型最近已被证明可以生成高质量的合成图像,特别是在与引导技术结合起来时,可以实现多样性和保真度的折衷。我们探索了文本条件的图像合成问题的扩散模型,并比较了两种不同的引导策略:CLIP引导和无分类器(classifier-free)引导。我们发现,人类评估者更喜欢后者,因为后者更逼真(photorealism)和符合描述(caption similarity),并且经常产生具有照片真实感(photorealistic)的样本。与DALL-E相比,使用无分类器引导的具有35亿参数的文本条件扩散模型的样本更受人类评估者的青睐,即使后者使用了昂贵的CLIP重排序。此外,我们发现我们的模型可以微调以执行图像修补,从而实现强大的文本驱动的图像编辑。

1. Introduction

图像,如插图、绘画和照片,往往可以很容易地用文本描述,但需要专门的技能和劳动时间来创造。因此,一个能够从自然语言生成逼真图像的工具,可以使人类以前所未有的轻松创造丰富多样的视觉内容。使用自然语言编辑图像的能力进一步允许了迭代地细化和细粒度控制,这两者对于现实世界的应用都是至关重要的。最近的文本条件图像模型能够从自由形式的文本提示合成图像,并且可以以语义合理的方式构图不相关的物体。然而,他们还不能够生成体现了其对应文本提示各个方面的真实感图像。
另一方面,无条件图像模型可以合成真实感图像,有时具有足够的保真度,以至于人类都无法将其与真实图像区分开来。在这一研究路线中,扩散模型已经成为一个有前途的生成模型家族,在许多图像生成基准上达到了SOTA的样本质量。
为了实现类别条件场景下的照相写实主义(photorealism),Dhariwal和Nichol使用分类器引导(classifier guidance)来增强扩散模型,这是一种允许扩散模型以分类器的标签为条件的技术。分类器先在噪声图像上进行训练,在扩散采样过程中,来自分类器的梯度被用来引导样本趋向标签。Ho和Salimans通过使用classifier-free引导,在没有单独训练的分类器的情况下获得了类似的结果,这种引导形式在有标签和无标签的扩散模型的预测之间进行了插值。
受引导扩散模型生成真实感样本的能力和文本到图像(text-to-image)模型处理自由形式提示的能力的启发,我们将引导扩散应用到文本条件图像合成问题。首先,我们训练了一个35亿参数的扩散模型,其使用文本编码器来以自然语言描述为条件。接下来,我们比较了两种面向文本提示的引导扩散模型技术:CLIP引导和classifier-free引导。通过人工和自动化评估,我们发现classifier-free引导会生成更高质量的图像。我们发现,在classifier-free引导下模型生成的样本既具有真实感,又反映了广泛的世界知识。当由人类评委进行评估时,我们的样本在87%的时间(当评估照片逼真度时)和69%的时间(当评估符合描述时)优于来自DALL-E的样本。
虽然我们的模型可以零样本(zero-shot)绘制各种各样的文本提示,但是对于复杂的提示很难生成逼真的图像。因此,我们为我们的模型提供了除零样本生成之外的编辑功能,这使得人们可以迭代地改进模型样本,直到它们匹配了更复杂的提示。具体来说,我们微调我们的模型来进行图像修补,发现它能够使用自然语言提示对现有图像进行逼真的编辑。模型产生的编辑与周围上下文的风格和灯光相匹配,包括有说服力的阴影和反射。这些模型的未来应用可能会帮助人类以前所未有的速度和容易创造出引人注目的自定义图像。
我们观察到,我们得到的模型可以显著减少产生有说服力的虚假信息或Deepfakes所需的工作量。为了在帮助未来研究的同时防范这些情况,我们发布了一组在过滤后的数据集上训练的较小模型。
我们称我们的系统为GLIDE,它代表着Guided Language to Image Diffusion for Generation and Editing。我们将我们小的过滤后的模型称为GLIDE(filtered)。

2. Background

在接下来的几个小节,我们概述了我们将要评估的最终模型的组成部分:扩散、classifier-free引导和CLIP引导。

2.1. Diffusion Models

我们考虑由Sohl-Dickstein等人引入并由Song和Ermon、Ho等人改进的高斯扩散模型。给定一个来自数据分布的样本 x 0 ∼ q ( x 0 ) x_0\sim q(x_0) x0q(x0),我们通过逐步向样本中添加高斯噪声来产生一个由潜变量 x 1 , . . . , x T x_1,...,x_T x1,...,xT组成的马尔科夫链:
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)\mathcal{I}) q(xtxt1):=N(xt;αt xt1,(1αt)I)如果每一步加入的噪声幅度 1 − α t 1-\alpha_t 1αt足够小,那么后验 q ( x t − 1 ∣ x t ) q(x_{t-1}|x_t) q(xt1xt)可以被对角高斯(diagonal Gaussian)很好地近似。进一步地,如果在整个链中添加的全部的噪声幅度 1 − α 1 . . . α T 1-\alpha_1...\alpha_T 1α1...αT足够大,那么 x T x_T xT可以被 N ( 0 , I ) \mathcal{N}(0,\mathcal{I}) N(0,I)很好地近似。这些性质表明可以学习一个模型 p θ ( x t − 1 ∣ x t ) p_\theta(x_{t-1}|x_t) pθ(xt1xt)来逼近真实后验:
p θ ( x t − 1 ∣ x t ) : = N ( μ θ ( x t ) , ∑ θ ( x t ) ) p_\theta(x_{t-1}|x_t):=\mathcal{N}(\mu_\theta(x_t),\sum_\theta(x_t)) pθ(xt1xt):=N(μθ(xt),θ(xt))其可以被用来产生样本 x 0 ∼ p θ ( x 0 ) x_0\sim p_\theta(x_0) x0pθ(x0),通过从高斯噪声 x T ∼ N ( 0 , I ) x_T\sim\mathcal{N}(0,\mathcal{I}) xTN(0,I)开始并以一系列步骤 x T − 1 , x T − 2 , . . , x 0 x_{T-1},x_{T-2},..,x_0 xT1,xT2,..,x0逐渐减少噪声。
虽然 l o g p θ ( x 0 ) \mathrm{log}p_\theta(x_0) logpθ(x0)存在一个易处理的变分下界(variational lower-bound,VLB),但通过优化一个重新加权VLB项的代理目标可以得到更好的结果。为了计算这个代理目标,我们通过对 x 0 x_0 x0施加高斯噪声 ϵ \epsilon ϵ来生成样本 x t ∼ q ( x t ∣ x 0 ) x_t\sim q(x_t|x_0) xtq(xtx0),然后使用标准均方误差损失训练一个模型 ϵ θ \epsilon_\theta ϵθ来预测添加的噪声:
L s i m p l e : = E t ∼ [ 1 , T ] , x 0 ∼ q ( x 0 ) , ϵ ∼ N ( 0 , I ) [ ∣ ∣ ϵ − ϵ θ ( x t , t ) ∣ ∣ 2 ] L_{\mathrm{simple}}:=E_{t\sim[1,T],x_0\sim q(x_0),\epsilon\sim\mathcal{N}(0,\bold{I})}[||\epsilon-\epsilon_\theta(x_t,t)||^2] Lsimple:=Et[1,T],x0q(x0),ϵN(0,I)[∣∣ϵϵθ(xt,t)2]Ho等人展示了如何从 ϵ θ ( x t , t ) \epsilon_\theta(x_t,t) ϵθ(xt,t)推导出 μ θ ( x t ) \mu_\theta(x_t) μθ(xt),并将 ∑ θ \sum_\theta θ固定为常数。他们还证明了其与之前基于分数匹配的去噪(denoising score-matching based)模型的等价性,其中分数函数为 ∇ x t l o g p ( x t ) ∝ ϵ θ ( x t , t ) \nabla_{x_t}\mathrm{log}p(x_t)\propto\epsilon_\theta(x_t,t) xtlogp(xt)ϵθ(xt,t)。在后续工作中,Nichol和Dhariwal提出了一种学习 ∑ θ \sum_\theta θ的策略,使得模型能够以更少的扩散步骤产生高质量的样本。我们在训练本文的模型时采用了这种技术。
扩散模型还成功应用到了图像超分辨率。根据扩散的标准公式,高分辨率图像 y 0 y_0 y0在一系列步骤中被逐步地施加噪声。然而, p θ ( y t − 1 ∣ y t , x ) p_\theta(y_{t-1}|y_t,x) pθ(yt1yt,x)额外地以下采样输入 x x x为条件,通过沿通道维度拼接 x x x(双三次上采样后)提供给模型。这些模型的结果在FID、IS和人工比较的分数上都优于以前的方法。

2.2. Guided Diffusion

Dhariwal和Nicho发现类别条件扩散模型的样本往往可以使用分类器引导来改善,其中,均值为 μ θ ( x t ∣ y ) \mu_\theta(x_t|y) μθ(xty),方差为 ∑ θ ( x t ∣ y ) \sum_\theta(x_t|y) θ(xty)的类别条件扩散模型由分类器预测的目标类别 y y y的对数概率 l o g p ϕ ( y ∣ x t ) \mathrm{log}p_\phi(y|x_t) logpϕ(yxt)附加地扰动。得到的新的扰动后的均值 μ ^ θ ( x t ∣ y ) \hat{\mu}_\theta(x_t|y) μ^θ(xty)为:
μ ^ θ ( x t ∣ y ) = μ θ ( x t ∣ y ) + s ⋅ ∑ θ ( x t ∣ y ) ∇ x t l o g p ϕ ( y ∣ x t ) \hat{\mu}_\theta(x_t|y)=\mu_\theta(x_t|y)+s·\sum_\theta(x_t|y)\nabla_{x_t}\mathrm{log}p_\phi(y|x_t) μ^θ(xty)=μθ(xty)+sθ(xty)xtlogpϕ(yxt)系数 s s s称为引导尺度,Dhariwal和Nichol发现增加 s s s会以牺牲多样性为代价提高样本质量。

2.3. Classifier-free guidance

Ho和Salimans最近提出了classifier-free引导,一种用于引导扩散模型且不需要训练一个单独的分类器模型的技术。对于classifier-free引导,在训练过程中以固定概率将类别条件扩散模型 ϵ θ ( x t ∣ y ) \epsilon_\theta(x_t|y) ϵθ(xty)中的标签 y y y替换为空标签 ∅ \emptyset 。在采样过程中,模型的输出沿 ϵ θ ( x t ∣ y ) \epsilon_\theta(x_t|y) ϵθ(xty)方向进一步推理,并远离 ϵ θ ( x t ∣ ∅ ) \epsilon_\theta(x_t|\emptyset) ϵθ(xt∣∅),如下所示:
ϵ ^ θ ( x t ∣ y ) = ϵ θ ( x t ∣ ∅ ) + s ⋅ ( ϵ θ ( x t ∣ y ) − ϵ θ ( x t ∣ ∅ ) ) \hat{\epsilon}_\theta(x_t|y)=\epsilon_\theta(x_t|\emptyset)+s·(\epsilon_\theta(x_t|y)-\epsilon_\theta(x_t|\emptyset)) ϵ^θ(xty)=ϵθ(xt∣∅)+s(ϵθ(xty)ϵθ(xt∣∅))其中, s ≥ 1 s≥1 s1为引导尺度。这种函数形式是受隐式分类器的启发:
p i ( y ∣ x t ) ∝ p ( x t ∣ y ) p ( x t ) p^i(y|x_t)\propto\frac{p(x_t|y)}{p(x_t)} pi(yxt)p(xt)p(xty)其梯度可以用真实分数 ϵ ∗ \epsilon^* ϵ来表示:
∇ x t l o g p i ( y ∣ x t ) ∝ ∇ x t l o g p ( x t ∣ y ) − ∇ x t l o g p ( x t ) ∝ ϵ ∗ ( x t ∣ y ) − ϵ ∗ ( x t ) \begin{align} \nabla_{x_t}\mathrm{log}p^i(y|x_t)&\propto\nabla_{x_t}\mathrm{log}p(x_t|y)-\nabla_{x_t}\mathrm{log}p(x_t)\notag\\ &\propto\epsilon^*(x_t|y)-\epsilon^*(x_t)\notag \end{align} xtlogpi(yxt)xtlogp(xty)xtlogp(xt)ϵ(xty)ϵ(xt)为了使用通用文本提示实现classifier-free引导,我们有时在训练过程中用空序列(我们也称其为 ∅ \emptyset )替换文本描述。然后我们使用修正的预测 ϵ ^ \hat{\epsilon} ϵ^向描述 c c c引导:
ϵ ^ θ ( x t ∣ c ) = ϵ θ ( x t ∣ ∅ ) + s ⋅ ( ϵ θ ( x t ∣ c ) − ϵ θ ( x t ∣ ∅ ) ) \hat{\epsilon}_\theta(x_t|c)=\epsilon_\theta(x_t|\emptyset)+s·(\epsilon_\theta(x_t|c)-\epsilon_\theta(x_t|\emptyset)) ϵ^θ(xtc)=ϵθ(xt∣∅)+s(ϵθ(xtc)ϵθ(xt∣∅))classifier-free引导具有两个吸引人的性质。首先,它允许单个模型在引导过程中利用自己的知识,而不是依靠单独的(有时更小的)分类模型的知识。其次,当以那些难以用分类器预测的信息为条件时,它简化了引导(例如文本)。

2.4. CLIP Guidance

Radford等人引入CLIP作为一种可扩展的方法来学习文本和图像之间的联合表征。CLIP模型由两个模型组成:一个图像编码器 f ( x ) f(x) f(x)和一个描述编码器 g ( c ) g(c) g(c)。在训练过程中,从一个大数据集中采样 ( x , c ) (x,c) (x,c)对batches,模型优化对比交叉熵损失,如果图像 x x x与给定的描述 c c c配对,则激励高点积 f ( x ) ⋅ g ( c ) f(x)·g(c) f(x)g(c),如果图像和描述对应训练数据中的不同对,则激励低点积。
由于CLIP提供了图像与描述接近程度的分数,因此有一些工作使用它来引导生成模型(如GANs)趋向用户定义的文本描述。为了将同样的思想应用到扩散模型中,我们可以在分类器引导中用CLIP模型代替分类器。具体来说,我们用图像编码和描述编码的点积相对于图像的梯度来扰动逆向过程的均值:
μ ^ θ ( x t ∣ c ) = μ θ ( x t ∣ c ) + s ⋅ ∑ θ ( x t ∣ c ) ∇ x t ( f ( x t ) ⋅ g ( c ) ) \hat{\mu}_\theta(x_t|c)=\mu_\theta(x_t|c)+s·\sum_\theta(x_t|c)\nabla_{x_t}(f(x_t)·g(c)) μ^θ(xtc)=μθ(xtc)+sθ(xtc)xt(f(xt)g(c))与分类器引导类似,在逆向过程中,我们必须在噪声图像 x t x_t xt上训练CLIP以获得正确的梯度。在我们整个实验过程中,我们使用被显式训练变得噪声感知(noise-aware)的CLIP模型,我们称之为噪声CLIP模型(noised CLIP models)。
之前的工作Crowson已经表明,未在噪声图像上训练的公开CLIP模型仍然可以用来引导扩散模型。在附录C中,我们证明了我们的噪声CLIP引导在不需要额外的技巧如数据增强或感知损失的情况下就可以对这种方法表现良好。我们猜想,使用公开CLIP模型的引导会给采样质量带来不利影响,因为在采样过程中遇到的带噪声的中间图像对模型来说是分布外的(out-of-distribution)。

3. Related Work

具体的相关工作讨论可以参照原文。

4. Training

对于我们的主要实验,我们在64×64分辨率下训练了一个35亿参数的文本条件扩散模型,另外一个15亿参数的文本条件上采样扩散模型则将分辨率提高到256×256。对于CLIP引导,我们也训练了一个64×64的ViT-L CLIP模型。

4.1. Text-Conditional Diffusion Models

我们采用Dhariwal和Nichol提出的ADM模型结构,但增加了文本条件信息。对于每个噪声图像 x t x_t xt和对应的文本描述 c c c,我们的模型预测 p ( x t − 1 ∣ x t , c ) p(x_{t-1}|x_t,c) p(xt1xt,c)。为了以文本为条件,我们首先将其编码为 K K K个token序列,并将这些token输入到一个Transformer模型中。该transformer的输出通过两种方式使用:首先,使用最终的token嵌入代替ADM模型中的类别嵌入;其次,最后一层token嵌入( K K K个特征向量的序列)在整个ADM模型中分别投射到每个注意力层的维度,然后在每一层拼接到注意力上下文。我们在与DALL-E相同的数据集上训练模型,训练计算量与DALL-E大致相同。训练和超参数详细信息见附录B.1。

4.2. Fine-tuning for classifier-free guidance

在初始训练运行后,我们对base模型进行微调,以支持无条件图像生成。这个训练过程与预训练完全相同,除了20%的文本token序列被替换为空序列。这样,模型既保留了其生成文本条件输出的能力,也可以无条件生成图像。

4.3. Image Inpainting

大多数以往使用扩散模型进行修补的工作并没有为该任务显式地训练扩散模型。具体来说,扩散模型修补可以像往常一样从扩散模型中采样,但在每个采样步骤后用来自 q ( x t ∣ x 0 ) q(x_t|x_0) q(xtx0)的样本替换图像的已知区域。这样做的缺点是,在采样过程中,模型无法看到整个上下文(只有它的一个噪声版本),偶尔会在我们的早期实验中产生不希望有的边缘伪影。
为了达到更好的效果,我们显式地微调我们的模型来执行修补,类似于Saharia等人。在微调过程中,我们随机掩码输入图像的区域,在相同的目标上训练模型,同时在干净的真实图像和掩码的掩码版本上以它为条件(train the model on the same objective while conditioning it on the masked versions of the clean groundtruth images and the mask)。为此,我们修改模型结构,增加了4个新的输入通道:另一组RGB通道用于提供掩码后的真值图像,一个掩码通道用于提供修补的掩膜。在微调之前,我们将这些新通道对应的输入权重初始化为零。对于上采样模型,我们总是提供完整的低分辨率图像,但只提供高分辨率图像的非掩码区域。

4.4. Noised CLIP models

为了更好地比得上Dhariwal和Nichol的分类器引导技术,我们使用一个图像编码器 f ( x t , t ) f(x_t,t) f(xt,t)来训练噪声CLIP模型,该编码器接收噪声图像 x t x_t xt,并以与原始CLIP模型相同的目标用其它方式进行训练。我们在64×64分辨率下训练这些模型,噪声安排(schedule)与我们的base模型相同。

5. Results

5.1. Qualitative Results

在图1中,我们观察到使用classifier-free引导的GLIDE能够泛化到各种各样的提示。模型往往能生成逼真的阴影和反射,以及高质量的纹理。它还能够创作各种风格的插图,比如特定艺术家或绘画的风格,或是像像素艺术一样的总体风格。最后,该模型能够组合多个概念(例如柯基、蝴蝶结、生日帽等),同时将属性(如颜色)绑定到这些目标。
在这里插入图片描述
在图5中,我们将我们的模型与之前在MS-COCO描述上SOTA的文本条件图像生成模型进行了比较,发现我们的模型在没有CLIP重排序和精心筛选(cherry-picking)的情况下生成了更逼真的图像。我们也看到,classifier-free引导比CLIP引导产生了更真实的图像。我们进一步在附录C中展示了我们模型与未加噪的CLIP引导的对比,并在附录G中评估了模型大小的影响。
在这里插入图片描述
在修补任务上,我们发现GLIDE可以真实地使用文本提示修改现有图像,必要时会插入新的物体、阴影和反射(图2)。
在这里插入图片描述
该模型甚至可以编辑物体到绘画作品时匹配风格。在图3中,我们展示了如何使用GLIDE通过零样本生成和一系列修补编辑迭代地生成一个复杂的场景。在图4中,我们还使用SDEdit进行了实验,发现我们的模型能够将草图转化为逼真的图像编辑。在附录D中,我们将我们的模型与之前的修补模型进行了比较,显示我们的模型产生了更真实的修补结果。
在这里插入图片描述
在这里插入图片描述

5.2. Quantitative Results

我们首先通过质量-保真度权衡的帕累托边界(Pareto frontier)来评估classifier-free引导和CLIP引导的差异。在图6中,我们评估了两种方法在64×64分辨率下的零样本MS-COCO生成。我们查看了Precision/Recall、FID、Inception Score和CLIP Score。我们将CLIP score定义为 E [ s ( f ( i m a g e ) ⋅ g ( c a p t i o n ) ) ] \mathbb{E}[s(f(\mathrm{image})·g(\mathrm{caption}))] E[s(f(image)g(caption))],其中的期望值取自批次中的样本, s s s为CLIP logit尺度。当我们增加二者的引导尺度时,我们观察到FID vs. IS,Precision vs. Recall、CLIP score vs. FID中规则的(clean)权衡。在前两条曲线中,我们发现classifier-free引导是(近似)帕累托最优的。我们在绘制CLIP score vs. FID时看到了完全相反的趋势;特别地,CLIP引导似乎比classifier-free引导更能提高CLIP score。
在这里插入图片描述
我们猜想CLIP引导是为评估CLIP模型寻找对抗样本,而不是在满足提示时实际地要优于classifier-free引导。为了验证这一猜想,我们使用人工评估者来评判生成图像的样本质量。在这个设置中,人工评估者被展示两幅256×256的图像,并且必须选择哪个样本①更好地匹配给定的描述,或者②看起来更逼真。人工评估者也可能表示这两幅图像都没有显著优于另一个,在这种情况下,将一半的胜利分配给两个模型。使用我们的人工评估协议,我们首先分别对两种方法的引导尺度进行了扫视(图7),然后将两种方法使用上一阶段的最佳尺度进行比较(表1)。我们发现人类与CLIP score有分歧,发现classifier-free引导能产生更符合提示的更高质量样本。
在这里插入图片描述
在这里插入图片描述
我们还将GLIDE与其它文本条件生成图像模型进行了比较。我们在表2中发现,我们的模型在MS-COCO上获得了具有竞争力的FID,而且没有在这个数据集上显式训练。我们还根据Ramesh等人,在MS-COCO验证集中的一个子集上计算FID,该子集已经删除了所有与训练集中图像相似的图像。这使得验证batch减少了21%。我们发现在这种情况下,我们的FID从12.24稍微增加到了12.89,这在很大程度上可以用在使用更小的参考batch时FID偏置的变化来解释。
在这里插入图片描述
最后,我们使用我们的人工评估协议对GLIDE和DALL-E进行了比较(表3)。值得注意的是,GLIDE的训练计算量与DALL-E大致相同,但使用了更小的模型(35亿参数vs.120亿参数)。它还只需要更少的采样延迟并且不进行CLIP重排序。我们在DALL-E和GLIDE之间进行了三组比较:首先,我们比较了没有CLIP重排序的两个模型;然后,我们只对DALL-E使用CLIP重排序;最后,我们对DALL-E使用CLIP重排序,通过DALL-E的离散VAE来运行(run)GLIDE样本。对于DALL-E模型,我们全都使用两个温度进行评估。我们的模型在所有设置中都被人工评估者所偏爱,即使在严重偏袒DALL-E的配置中,即允许它使用更多的测试时间计算(通过CLIP重排序)同时减少GLIDE样本质量(通过VAE模糊)。对于使用CLIP重排序的DALL-E和使用不同引导策略的GLIDE的样本网格,见附录H。
在这里插入图片描述

6. Conclusion and Future work

我们已经证明,文本条件扩散模型能够生成逼真的合成图像,特别是当与classifier-free引导相结合时。虽然我们的模型可以以复杂的方式组合不同的概念,但它有时无法体现某些描述高度罕见的物体或场景的提示。在图8中,我们提供了这些失败案例的一些例子。此外,我们的未优化模型在单个A100 GPU上采样一幅图像需要15秒。这比相关的GAN方法的采样速度要慢得多,因为它们在单个前向传播中生成图像,因此更有利于实时应用。捕获分布外提示和快速采样仍然是未来工作的重要方向。
在这里插入图片描述

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

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

相关文章

【算法】回文数

目录 一.回文数 二.求回文数(10000以内) 代码: 翻译: 调试: 三.判断回文数 代码: 调试: 一.回文数 "回文数"是一种数字。 如:12321, 这个数字正读是12321,倒读也是…

C++的类

文章目录 class定义类声明和定义不分离成员函数声明与定义的分离 类的访问限定符类的实例化类对象的大小this指针 引入:什么是类呢? 在C语言阶段,结构体成员只能是它的属性,这个结构体就相当于张三,小时候它只被赋予了名字,性别,家庭住址等属性,但是他没…

docker Mysql部署主从集群

目录 1 docker安装 2 docker mysql 安装配置 远程连接 2.0 配置 2.0.1 文件夹 配置 2.0.2 主库文件配置 my.cnf -> 主库 id 和 开启二进制日志 2.0.3 从库文件配置 -> 从库 id 2.1 mysql 主 -> 第一个端口号和从库不一样 2.1.1 docker run 主库 2.1.2 查看主…

Postman创建项目 对接口发起请求处理

查看本文之前 您需要理解了解 Postman 的几个简单工作区 如果还没有掌握 可以先查看我的文章 简单认识 Postman界面操作 那么 掌握之后 我们就可以正式来开启我们的接口测试 我们先选择 Collections 我们点上面这个加号 多拉一个项目出来 然后 我们选我们刚加号点出来的项目…

用LangChain构建大语言模型应用

用LangChain构建大语言模型应用 自 ChatGPT 发布以来,大型语言模型 (LLM) 广受欢迎。尽管您可能没有足够的资金和计算资源从头开始训练自己的大语言模型,但您仍然可以使用预训练的大语言模型来构建一些很酷的东西,例如: 可以根据…

01-权限提升-网站权限后台漏洞第三方获取

权限提升-网站权限后台漏洞第三方获取 本节课内容主要是权限提升的思路,不涉及技术 当前知识点在渗透流程中的点 前期-中期-后期对应知识关系 当前知识点在权限提升的重点 知识点顺序,理解思路,分类介绍等 当前知识点权限提升权限介绍 …

Java8

Java8 (一)、双列集合(二)、Map集合常用api(三)、Map集合的遍历方式(四)、HashMap(五)、LinkedHashMap(六)、TreeMap(七&a…

Steve:AI创建视频和动画的在线工具

【产品介绍】 steve.ai是一款利用人工智能技术创建视频和动画的在线工具,可以让任何人在几分钟内把文字转换成吸引人的视频。核心功能是根据用户输入的文本,自动选择合适的素材、音乐、字幕和动效,生成高质量的视频。还提供了多种模板、风格和…

Photoshop如何使用滤镜之实例演示?

文章目录 0.引言1.将普通照片制作成油画效果2.使用液化滤镜修出完美身材3.用镜头光晕滤镜制作唯美的逆光人像4.用Camera Raw滤镜对偏色风景照进行调色 0.引言 因科研等多场景需要进行绘图处理,笔者对PS进行了学习,本文通过《Photoshop2021入门教程》及其…

Servlet 笔记

1. HTTP 协议 1.1 HTTP协议简介 超文本传输协议(英文:HyperText Transfer Protocol,缩写:HTTP)是一种用于分布式、协作式和超媒体信息系统的应用层协议。HTTP是万维网的数据通信的基础。 HTTP的发展是由蒂姆伯纳斯-…

etcd原理剖析一

为什么Kubernetes使用etcd? 首先我们来看服务高可用以及数据一致性。单副本存在单点故障,而多副本又引入数据一致性问题。 为了解决数据一致性问题,需要引入一个共识算法。例如Raft等。etcd选择了Raft,它将复杂的一致性问题分解…

Maven 笔记

1. Maven 的简介 1.1 简介 Maven 这个词可以翻译为"专家","内行"。作为Apache 组织中的一个开源项目,主要服务于基于java平台的项目构建,依赖管理和项目信息管理。 无论是小型的开源类库项目,还是大型的企业级应用&am…

Spring 5 笔记 - 入门与IOC

1. Spring 入门简介 Spring:轻量级、开源的JavaEE框架, 解决企业应用的复杂性。包括IOC和AOP两个核心部分。 IOC: 控制反转,把创建对象和对象之间的调用的过程都交给Spring 进行管理,使耦合度降低。 AOP&#xff1a…

Winform从入门到精通(38)—StatusStrip(史上最全)更新中

一、属性 1、Name 获取StatusStrip控件对象 2、AllowDrop 允许用户拖拽数据到控件上 3、AllowItemReorder 当用于按下alt键时,是否允许对项进行排列,如下图: 4、AllowMerge 5、Anchor 6、AutoSize 7、BackColor 设置StatusStrip的背景色 8、BackgroundImage 设置背…

R语言方差分析

R中的方差分析 介绍用于比较独立组的不同类型的方差分析,包括: 单因素方差分析:独立样本 t 检验的扩展,用于在存在两个以上组的情况下比较均值。这是方差分析检验的最简单情况,其中数据仅根据一个分组变量&#xff0…

垃圾回收器ZGC应用分析总结

目录 一、基本概述 二、基本关键技术知识总结 (一)三色标记法(着色指针) (二)读屏障 (三)多图映射 (四)简单场景说明ZGC并发 三、基本回收原理介绍 四…

PowerJob基本概念

本文来说下PowerJob的一些基本概念 文章目录 PowerJob概述PowerJob官网为什么选择PowerJob同类产品对比适用场景 PowerJob概述 PowerJob是新一代分布式任务调度与计算框架,支持CRON、API、固定频率、固定延迟等调度策略,提供工作流来编排任务解决依赖关系…

React框架第七课 语法基础课《第一课React你好世界》

React框架第七课 语法基础课《第一课React你好世界》 从这一课开始真正进入到React框架的基础语法学习,之前的前五课做个了解即可。 1 React框架的基本项目结构 ├── README.md 使用方法的文档 ├── node_modules 所有的依赖安装的目录 ├── package-lock.j…

[架构之路-181]-《软考-系统分析师》-19- 系统可靠性分析与设计 - 2-容错性: 软件容错技术

目录 前言: 1 9 . 4 软件容错技术 19.4.1 N 版本程序设计 1 . 与 通 常 软 件 开 发 过 程 的 区 别 2 . 其 他 需 要 注 意 的 问 题 19.4.2 恢复块方法 19.4.3 防卫式程序设计(预防性设计)》广泛使用 1 . 错误检测 2 . 破坏估计 …

【C++初阶】类与对象:6个默认成员函数-----构造函数和析构函数

我们在写代码的时候经常会忘记初始化和销毁,C的构造函数和析构函数就能避免这个问题。 默认成员函数:用户没有显式实现,编译器会生成的成员函数称为默认成员函数。 一.构造函数 A.概念 1.构造函数是一个特殊的成员函数; 2.名字与…