(2023|CVPR,GigaGAN 注意力 自适应核)扩展 GAN 以进行文本到图像的合成

 Scaling up GANs for Text-to-Image Synthesis

公众号:EDPJ(添加 VX:CV_EDPJ 进交流群获取资料)

目录

0. 摘要

1. 简介

2. 相关工作

3. 方法 

3.1. 建模复杂的上下文交互 

3.2. 生成器设计 

3.3. 鉴别器设计 

3.4. 基于 GAN 的上采样器 

4. 实验 

4.1. 文本到图像合成 

4.2. 用于大规模图像合成的超分辨率 

4.3. 可控图像合成 

5. 讨论和局限性 

参考

S. 总结

S.1 主要思想

S.2 方法


0. 摘要

最近文本到图像合成的成功席卷了全世界,并激发了公众的想象力。 从技术角度来看,它也标志着设计生成图像模型所青睐的架构发生了巨大变化。 GAN 曾经是事实上(de facto)的选择,采用 StyleGAN 等技术。随着 DALL·E 2,自回归和扩散模型一夜之间成为大规模生成模型的新标准,这种快速转变提出了一个基本问题:我们能否扩大 GAN 规模以从 LAION 等大型数据集中受益? 我们发现单纯增加 StyleGAN 架构的容量很快就会变得不稳定。 我们推出了 GigaGAN,这是一种远远超出此限制的新 GAN 架构,证明了 GAN 作为文本到图像合成的可行选择。 GigaGAN 具有三大优势。 首先,它的推理时间快了几个数量级,合成 512 像素图像仅需 0.13 秒。 其次,它可以在 3.66 秒内合成高分辨率图像,例如 16 兆像素的图像。 最后,GigaGAN 支持各种潜在空间编辑应用,例如潜在插值、样式混合和向量算术运算。

1. 简介

最近发布的模型,如DALL·E 2 [53]、Imagen [59]、Parti [73] 和 Stable Diffusion [58],开创了图像生成的新时代,实现了前所未有的图像质量和模型灵活性水平 。 现在占主导地位的范式、扩散模型和自回归模型都依赖于迭代推理。 这是一把双刃剑,因为迭代方法可以实现目标简单的稳定训练,但在推理过程中会产生很高的计算成本。

将此与生成对抗网络(GAN)[5,17,33,51] 进行对比,后者通过单个前向传递生成图像,因此本质上是高效的。 虽然此类模型主导了之前的生成建模“时代”,但由于训练过程的不稳定,扩展它们需要仔细调整网络架构和训练注意事项。 因此,GAN 在建模单个或多个对象类方面表现出色,但扩展到复杂的数据集(更不用说开放世界)仍然具有挑战性。 因此,超大型模型、数据和计算资源现在专用于扩散和自回归模型。 在这项工作中,我们问——GAN 能否继续扩大规模并可能从这些资源中受益,或者它们趋于稳定了吗? 是什么阻碍了它们进一步扩展,我们可以克服这些障碍吗?

我们首先用 StyleGAN2 [34] 进行实验,并观察到简单地缩放主干会导致训练不稳定。 我们确定了几个关键问题,并提出了在增加模型容量的同时稳定训练的技术。 首先,我们通过保留一组滤波器并采用特定于样本的线性组合来有效地扩展生成器的容量。 我们还采用了扩散中常用的几种技术,并确认它们为 GAN 带来了类似的好处。 例如,将自注意力(仅图像)和交叉注意力(图像文本)与卷积层交错可以提高性能。 

此外,我们重新引入多尺度训练,找到一种新的方案来改善图像文本对齐和生成输出的低频细节。 多尺度训练使得基于 GAN 的生成器能够更有效地使用低分辨率块中的参数,从而获得更好的图像文本对齐和图像质量。 经过仔细调整,我们在大规模数据集(例如 LAION2B-en [63])上实现了十亿参数 GAN(GigaGAN)的稳定且可扩展的训练。 我们的结果如图 1 所示。

此外,我们的方法使用多阶段方法 [12, 76]。 我们首先以 64 × 64 生成,然后上采样到 512 × 512。这两个网络是模块化且足够强大的,可以以即插即用的方式使用。 我们展示了我们的基于文本条件 GAN 的上采样网络可以用作 DALL·E 2 等基础扩散模型的高效、更高质量的上采样器,尽管在训练时从未见过扩散图像(图 1)。

总之,这些进步使我们的 GigaGAN 远远超越了以前的 GAN:比 Style-GAN2 [34] 大 36 倍,比 StyleGAN-XL [62] 和 XMC-GAN [75] 大 6 倍。 虽然我们的 1B 参数计数仍然低于最大的综合模型,例如 DALL·E 2 (5.5B) 和 Parti (20B),但我们尚未观察到模型大小的质量饱和。 GigaGAN 在 COCO2014 上实现了 9.09 的 zreo-shot FID,低于 DALL·E 2、Parti-750M 和 Stable Diffusion 的 FID。 

此外,与扩散和自回归模型相比,GigaGAN 具有三大实用优势。 首先,它的速度快了几个数量级,在 0.13 秒内生成 512 像素的图像。 其次,它可以在 3.66 秒内合成 4k 分辨率的超高分辨率图像。 第三,它具有可控的潜在向量空间,适合经过充分研究的可控图像生成应用,例如提示混合(图 4)、风格混合(图 5)和提示插值(图 A7 和 A8)。 

总之,我们的模型是第一个基于 GAN 的方法,能够在数十亿真实世界的复杂互联网图像上成功训练十亿规模的模型。 这表明 GAN 仍然是文本到图像合成的可行选择,并且应该考虑用于未来的积极扩展。 请访问我们的网站(GigaGAN: Scaling up GANs for Text-to-Image Synthesis)以获取更多结果。

2. 相关工作

文本到图像的合成。 早期作品 [42,85] 探索过,根据文本描述生成逼真的图像是一项具有挑战性的任务。 一种常见的方法是在特定领域 [68] 和具有封闭世界假设的数据集 [41] 上使用文本条件 GAN [55、56、67、71、76、83]。 随着扩散模型 [13, 21]、自回归 (AR) 转换器 [10] 和大规模语言编码器 [50, 52] 的发展,文本到图像的合成在任意的文字描述的开放世界中显示出显着的改进。 GLIDE [46]、DALL·E 2 [53] 和 Imagen [59] 是代表性的扩散模型,它们借助预训练的语言编码器 [50, 52] 显示真实的输出。 AR 模型,例如 DALL·E [54]、Make-A-Scene [16]、CogView [14, 15]和 Parti [73] 也取得了惊人的结果。 虽然这些模型表现出前所未有的图像合成能力,但它们需要耗时的迭代过程才能实现高质量的图像采样。 

基于 GAN 的图像合成。 GAN [17] 是自然图像合成生成模型的主要家族之一。 随着 GAN 采样质量和多样性的提高 [31–34, 36, 51, 60],GAN 已被部署到各种计算机视觉和图形应用中,例如文本到图像合成 [55]、图像到图像翻译 [ 23,27,37,47,48,82],以及图像编辑 [1,6,49,81]。 值得注意的是,StyleGAN 系列模型 [32,34] 在单类别域的图像合成任务中表现出了令人印象深刻的能力 [1,25,49,70,84]。 其他作品在具有一组固定对象类别的数据集上探索了类条件 GAN [5,29,62,74,79]。 

在本文中,我们将数据体系从单一或多类别数据集更改为数据极其丰富的情况。 我们首次尝试在大量网络爬取的文本和图像对(例如 LAION2Ben [63] 和 COYO-700M [7])上训练用于文本到图像生成的大规模 GAN。 现有的基于 GAN 的文本到图像合成模型 [39,55,67,71,75,76,83] 在相对较小的数据集(例如 CUB-200(12k 训练对)、MSCOCO(82k)和 LN-OpenImages (507k))上进行训练。 此外,这些模型是在相关的验证数据集上进行评估的,这些数据集尚未验证可以执行大规模文本图像合成(例如扩散或 AR 模型)。 

与我们的方法同时,StyleGAN-T [61] 和 GALIP [66] 有着相似的目标,并与我们的观点互补。

3. 方法 

我们训练生成器 G(z, c) 来预测图像 x ∈ R^(H×W×3),给定潜在代码 z ∼ N(0, 1) ∈ R^128 和文本条件 c。 我们使用鉴别器 D(x, c) 来判断假图像的真实性,并与训练数据库中包含图像文本对的样本进行比较。 

尽管 GAN [5,31,33] 可以在单类别和多类别数据集 [11,33,72] 上成功生成逼真的图像,但互联网图像上的开放式文本条件合成仍然具有挑战性。 我们假设当前的限制源于其对卷积层的依赖。 也就是说,相同的卷积滤波器面临着对图像所有位置上的、所有文本调节的、通用图像合成函数进行建模的挑战。 有鉴于此,我们寻求通过基于输入条件动态选择卷积滤波器并通过注意机制捕获长期相关性,为参数化注入更多的表现力。 

下面,我们讨论我们对使卷积网络更具表现力的关键贡献(第 3.1 节),然后是我们对生成器(第 3.2 节)和判别器(第 3.3 节)的设计。 最后,我们介绍了一种新的、基于 GAN 的快速上采样器模型,它可以提高我们的方法和扩散模型(例如 Imagen [59] 和 DALL·E 2 [53])的推理质量和速度(第 3.4 节)。 

3.1. 建模复杂的上下文交互 

基线 StyleGAN 生成器。 我们的架构基于 StyleGAN2 [34] 的条件版本,由两个网络

组成。映射网络 w = M(z, c) 将输入映射到“风格”向量 w,该向量调制一系列 合成网络  ~G(w) 中的上采样卷积层将学习到的常数张量映射到输出图像 x。 卷积是生成所有输出像素的主要引擎,w 向量作为模型调节的唯一信息源。

样本自适应内核选择。 为了处理互联网图像的高度多样化分布,我们的目标是增加卷积核的容量。 然而,增加卷积层的宽度变得过于苛刻,因为在所有位置重复相同的操作。 

我们提出了一种有效的方法来增强卷积核的表达能力,即根据文本条件即时创建卷积核,如图 2(右)所示。 在这个方案中,我们实例化一组 N 个滤波器

而不是一个,在每一层采用特征 f ∈ R^(C_in)。 然后,样式向量 w ∈ R^d 经过仿射层

来预测一组权重,以在滤波器之间进行平均,从而生成聚合滤波器

然后将该滤波器用于 StyleGAN2 的常规卷积管道,其中第二个仿射层 [W_mod, b_mod] ∈ R^((d+1)×C_in) 用于权重(解)调制 [34]。 

其中 ⊗ 和 * 代表(解)调制和卷积。 

在高层次上,基于 softmax 的加权可以被视为基于输入条件的可微滤波器选择过程。 此外,由于滤波器选择过程在每一层仅执行一次,因此选择过程比实际卷积快得多,从而将计算复杂性与分辨率解耦。 我们的方法与动态卷积 [19,28,65,69] 有着共同的精神,即卷积滤波器会根据样本动态变化,但不同之处在于我们显式地实例化更大的滤波器组,并根据以 w 为条件的单独路径在 StyleGAN 的 w 空间选择权重。

将注意力与卷积交错。 由于卷积滤波器在其感受野内运行,因此它无法将自身与图像的远处部分联系起来。 整合这种远程关系的一种方法是使用注意力层 g_attention。 虽然最近基于扩散的模型 [13,22,58] 普遍采用了注意力机制,但 StyleGAN 架构主要是卷积结构,但有一些值得注意的例外,例如 BigGAN [5]、GANformer [24] 和 ViTGAN [38]。

我们的目标是通过将注意力层与卷积主干集成来提高 StyleGAN 的性能。 然而,正如 Kim 等人指出的那样,简单地向 StyleGAN 添加注意力层通常会导致训练崩溃,这可能是因为点积自注意力不是 Lipschitz, 如 Kim 等人 [35] 所示。 由于判别器的 Lipschitz 连续性在稳定训练中发挥了关键作用 [2,18,43,44],我们使用 L2 距离而不是点积作为注意 logits 来促进 Lipschitz 连续性 [35],类似于 ViTGAN [38]。 

为了进一步提高性能,我们发现匹配 StyleGAN 的架构细节至关重要,例如均衡学习率 [31] 和单位正态分布的权重初始化。 我们缩小 L2 距离 logits 以大致匹配初始化时的单位正态分布,并减少注意力层的剩余增益。 我们通过绑定 key 和查询矩阵 [38] 并应用权重衰减来进一步提高稳定性。 

在合成网络 ~G 中,注意力层与每个卷积块交错,利用风格向量 w 作为附加 token。 在每个注意力块中,我们添加一个单独的交叉注意力机制 g_cross-attention 来关注单个单词嵌入 [3]。 我们使用每个输入特征张量作为 query,并将文本嵌入作为注意机制的 key 和 value。 

3.2. 生成器设计 

文本和潜在代码调节。 首先,我们从提示中提取文本嵌入。 之前的工作 [54, 59] 已经表明,利用强大的语言模型对于产生强大的结果至关重要。 为此,我们对输入提示进行标记(将其填充到 C = 77 个单词后,遵循最佳实践 [54, 59])以生成条件向量 c ∈ R^(C×1024),并从冻结的 CLIP 特征提取器 [50] 的倒数第二层 [59] 中获取特征。 为了实现额外的灵活性,我们在顶部应用额外的注意力层 T 来处理词嵌入,然后再将它们传递到基于 MLP 的映射网络,得到文本嵌入

t 的每个成分 t_i 捕获句子中第 i 个单词的嵌入。 我们将它们称为

t 的 EOT(“文本结尾(end of text)”)成分聚合了全局信息,称为 t_global ∈ R^1024。 我们通过 MLP 映射网络处理这个全局文本描述符以及潜在代码 z ∼ N(0, 1),以提取样式 w = M(z, t_global)。 

与原始 StyleGAN 不同,我们使用基于文本的样式代码来调制合成网络 ~G 和词嵌入 t_local 作为交叉注意力的特征。 

与早期的作品 [42,53,59] 类似,文本-图像对齐在视觉上通过交叉注意力得到了改善。 

合成网络。 我们的合成网络由一系列上采样卷积层组成,每一层都通过自适应内核选择(公式 1)进行增强,后面是我们的注意力层。 

其中 gℓ_xa、gℓ_attn 和 gℓ_adaconv 表示第 L 层交叉注意层、自注意层和权重(去)调制层。 我们发现通过在每一层添加更多块来增加网络深度是有益的。 此外,我们的生成器输出 L = 5 级的多尺度图像金字塔,而不是最高分辨率的单个图像,类似于 MSG-GAN [30] 和 AnycostGAN [40]。 我们将金字塔称为

空间分辨率分别为

基准层 x_0 是输出图像 x。 金字塔的每个图像都独立地用于计算 GAN 损失,如第 3.3 节中所述。 我们遵循 StyleGANXL [62] 的发现并关闭风格混合和路径长度正则化 [34]。

3.3. 鉴别器设计 

如图 3 所示,我们的判别器由单独的分支组成,用于使用函数 t_D 处理文本和使用函数 φ 处理图像。 真假的预测是通过使用函数 ψ 比较两个分支的特征来进行的。 我们引入了一种在多个尺度上进行预测的新方法。 最后,我们使用额外的 CLIP 和视觉辅助 GAN 损失 [36] 来提高稳定性。 

文本调节。 首先,为了将条件结合到判别器中,我们从文本 c 中提取文本描述符 t_D。 与生成器类似,我们应用预训练的文本编码器,例如 CLIP [50],后面是一些可学习的注意力层。 在这种情况下,我们只使用全局描述符。 

多尺度图像处理。 我们观察到,无论提供什么提示,生成器的早期低分辨率层都会使用较小的动态范围来变得不活跃。 StyleGAN2 [34] 也观察到了这种现象,并得出结论:随着模型尺寸的增加,网络依赖于高分辨率层。 由于恢复包含复杂结构信息的低频性能至关重要,因此我们重新设计了模型架构以提供跨多个尺度的训练信号。 

回想一下,生成器生成一个金字塔

完整图像 x_0 位于金字塔底部。 MSG-GAN [30] 通过一次性对整个金字塔进行预测来提高性能,从而增强跨尺度的一致性。 然而,在我们的大规模设置中,这会损害稳定性,因为这限制了生成器对其初始低分辨率输出进行调整。 

相反,我们独立处理金字塔的每一层。 如图 3 所示,每个级别 x_i 在多个尺度 i < j ≤ L 上进行真/假预测。例如,完整的 x_0 在 L = 5 个尺度上进行预测,下一个级别 x_1 在 4 个尺度上进行预测,依此类推。 总的来说,我们的判别器产生 L(L−1)/2 预测,在多个尺度上监督多尺度生成。 

为了提取不同尺度的特征,我们定义一个特征提取器

实际上,每个子网络

都是完整网络

的子集,其中 i > 0 表示晚进入,j < L 表示早退出。 φ 中的每一层都包含自注意力,然后是步幅为 2 的卷积。最后一层将空间范围展平为 1 × 1 张量,产生

这允许我们将金字塔上的较低分辨率图像注入中间层 [31]。 由于我们在不同级别上使用共享特征提取器,并且大多数添加的预测都是在低分辨率下进行的,因此增加的计算开销是可以管理的。 

多尺度输入、多尺度输出对抗性损失。 总的来说,我们的训练目标包括鉴别器损失以及我们提出的匹配损失,以鼓励鉴别器考虑调节: 

其中 V_GAN 是标准的非饱和 GAN 损失 [17]。 为了计算鉴别器输出,我们训练预测器 ψ,它使用文本特征 t_D 来调制图像特征 φ(x): 

其中 ψ_j 被实现为 4 层 1×1 调制卷积,并且 Conv1×1 被添加为跳跃连接以显式地维护无条件预测分支 [45]。 

匹配感知损失。 前面的 GAN 术语衡量图像 x 与条件 c 的匹配程度,以及 x 的外观(与条件无关)的真实程度。 然而,在早期训练期间,当伪影很明显时,鉴别器往往会做出独立于调节的决定,并且犹豫是否考虑调节。 

为了强制判别器纳入条件作用,我们将 x 与随机的、独立采样的条件 ^c 相匹配,并将它们呈现为假对: 

其中 (x, c) 和 ^c 分别从 p_data 中采样。 这种损失之前已经在文本到图像的 GAN 作品中进行了探索 [55,76],但我们发现对 G 生成的图像以及真实图像 x 实施匹配感知损失会带来明显的性能提升(表 A2) 。 

CLIP 对比损失。 我们进一步利用现成的预训练模型作为损失函数 [36,60,64]。 特别是,我们强制生成器生成可由预先训练的 CLIP 图像和文本编码器 [50] (E_img 和 E_txt) 识别的输出,这些输出是在最初用于训练它们的对比交叉熵损失中进行的。 

其中 {c_n} = {c_0, . 。 。 } 是训练数据中的采样标题 (captions)。 

视觉辅助对抗性损失。 最后,我们构建了一个使用 CLIP 模型作为主干的附加判别器,称为视觉辅助 GAN [36]。 我们冻结 CLIP 图像编码器,从中间层提取特征,并通过具有 3 × 3 卷积层的简单网络对其进行处理,以进行真/假预测。 

我们还通过调制纳入调节,如方程 7 所示。为了稳定训练,我们还添加了一个固定的随机投影层,如 Projected GAN [60] 所提出的。 我们将其称为 L_Vision(G)(为了清楚起见,省略了可学习的鉴别器参数)。 

我们的最终目标是 V(G,D) = V_MS-I/O(G,D) + L_CLIP(G) + L_Vision(G),权重在表 A1 中指定的项之间。 

3.4. 基于 GAN 的上采样器 

此外,GigaGAN 框架可以轻松扩展以训练文本条件超分辨率模型,能够对基本 GigaGAN 生成器的输出进行上采样,以获得 512px 或 4k 分辨率的高分辨率图像。 通过在两个单独的阶段训练我们的流程,我们可以在相同的计算资源内提供更高容量的 64px 基本模型。 

在上采样器中,合成网络被重新排列为非对称 U-Net 架构,通过 3 个下采样残差块处理 64px 输入,然后是带有注意层的 6 个上采样残差块,以生成 512px 图像。 与 CoModGAN [78] 类似,相同分辨率下存在跳跃连接。 该模型使用与基础模型相同的损失以及相对于 ground truth 高分辨率图像的 LPIPS 感知损失 [77] 进行训练。 视觉辅助 GAN 不用于上采样器。 在训练和推理期间,我们应用适度的高斯噪声增强来减少真实图像和 GAN 生成图像之间的差距。 

与基于扩散的模型相比,我们的 GigaGAN 框架对于超分辨率任务特别有效,基于扩散的模型无法承担与高分辨率基础模型一样多的采样步骤。 LPIPS 回归损失还提供了稳定的学习信号。 我们相信我们的 GAN 上采样器可以作为其他生成模型的超分辨率阶段的直接替代品。 

4. 实验 

对大规模文本到图像合成任务进行系统、受控的评估很困难,因为大多数现有模型都不是公开的。 即使训练代码可用,从头开始训练新模型的成本也将高昂。 尽管如此,我们还是根据现有信息,将我们的模型与最近的文本到图像模型进行了比较,例如 Imagen [59]、潜在扩散模型 (LDM) [58]、稳定扩散 [57] 和 Parti [73], 同时承认训练数据集、迭代次数、批量大小和模型大小之间存在显着差异。 除了文本到图像的结果之外,我们还在 ImageNet 类条件生成和无条件超分辨率上评估了我们的模型(见 arXiv 版本),以便在更受控制的设置下与其他方法进行同类比较。 

对于定量评估,我们主要使用 Fr´echet Inception Distance (FID) [20] 来测量输出分布的真实性,并使用 CLIP 分数来评估图像文本对齐。 我们所有的模型都在 A100 GPU 上进行训练和评估。 更多关于GigaGAN的训练和评估的信息,请参考 arXiv 版本。 

4.1. 文本到图像合成 

我们通过将基础生成器和上采样器的容量分别增加到 652.5M 和 359.1M 来训练更大的模型。 这导致 GAN 模型的规模达到前所未有的规模,总参数数达到 1.0B。 表 1 比较了我们的端到端管道与各种文本到图像生成模型的性能 [4,9,46,53,54,57-59,73,80]。 请注意,训练数据集、预训练文本编码器甚至图像分辨率都存在差异。 例如,GigaGAN 最初合成 512 像素的图像,在评估之前将其大小调整为 256 像素。 

表 1 显示,GigaGAN 的 FID 低于 DALL·E 2 [53]、Stable Diffusion [57] 和 Parti-750M [73]。 虽然我们的模型可以比现有模型进行优化以更好地匹配真实图像的特征分布,但生成的图像的质量不一定更好(有关更多样本,请参阅 arXiv 版本)。 我们承认这可能代表了 COCO2014 数据集上 zero-shot FID 的极端情况,并建议有必要进一步研究更好的评估指标以改进文本到图像模型。 尽管如此,我们强调 GigaGAN 是第一个能够根据任意文本提示合成有前景图像的 GAN 模型,并且与其他文本到图像模型相比,表现出具有竞争力的 zero-shot FID。 

4.2. 用于大规模图像合成的超分辨率 

我们分别评估了 GigaGAN 上采样器在文本条件上采样任务中的性能。 我们结合稳定扩散 [57] 4x Upscaler 和 2x Latent Upscaler 建立 8x 放大模型(SD Upscaler)。我们还使用无条件 Real-ESRGAN [26] 作为另一个基线。 表 2 测量了上采样器在 LAION 数据集中的随机 10K 图像上的性能,并显示我们的 GigaGAN 上采样器在真实性分数(FID 和 patch-FID [8])、文本对齐(CLIP 分数)和接近 ground truth 方面显着优于其他上采样器 (LPIPS [77])。 

4.3. 可控图像合成 

在图 4 中,我们展示了可以通过文本输入来控制解耦的样式操作。 具体来说,我们可以使用不同的提示计算文本嵌入 t 和样式代码 w 并将它们应用到生成器的不同层。 这样,我们不仅获得了粗略和精细风格的解耦,而且还获得了风格空间中基于直观提示的操作。  

众所周知,StyleGAN 拥有可用于图像处理的线性潜在空间,称为 W 空间。 同样,我们使用样式向量 w 执行粗粒度和细粒度的样式交换。 与 Style-GAN 的 W 空间类似,图 5 说明 GigaGAN 保持了一个解纠缠的 W 空间,这表明 StyleGAN 现有的潜在操纵技术可以转移到 GigaGAN。 此外,我们的模型在 W 之前拥有另一个文本嵌入的潜在空间 t = [t_local, t_global],并且我们探索了其图像合成的潜力。 

5. 讨论和局限性 

我们的实验为 GAN 的可扩展性提供了决定性的答案:我们的新架构可以扩展到模型大小,从而实现文本到图像的合成。 然而,我们结果的视觉质量还无法与 DALL·E 2 等生产级模型相媲美。图 6 显示了几个实例,与 DALL·E 2 相比,我们的方法在真实感和文本到图像对齐方面无法产生高质量结果。 

尽管如此,我们测试的能力远远超出了简单方法所能达到的水平,并通过使用类似资源训练的自回归和扩散模型取得了有竞争力的结果,同时速度快了几个数量级,并实现了潜在插值和风格化。 我们的 GigaGAN 架构为大规模生成模型开辟了全新的设计空间,并带回了随着向自回归和扩散模型过渡而变得具有挑战性的关键编辑功能。 我们期望更大的模型能够提高我们的性能。 

参考

Kang M, Zhu J Y, Zhang R, et al. Scaling up gans for text-to-image synthesis[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2023: 10124-10134.

S. 总结

S.1 主要思想

自回归和扩散模型是大规模生成模型的新标准,它们都依赖于迭代推理。虽然能实现稳定训练,但在推理过程中会产生很高的计算成本。

能否扩大 GAN 的规模以从大型数据集中受益?GAN 通过单个前向传递生成图像,因此本质上是高效的。但由于训练过程的不稳定,扩展它们需要仔细调整网络架构和训练注意事项。

本文的主要贡献:

  • 提出了 GigaGAN,在增加模型容量的同时稳定训练。使用特定于样本的滤波器的线性组合来扩展生成器的容量,并使用(扩散中的技术)自注意力(仅图像)和交叉注意力(图像文本)与卷积层交错提高性能。(与以往 GAN 相比的优势:超分辨率,高速生成,可控的潜在空间进行生成)
  • 引入多尺度训练。随着模型尺寸的增加,网络依赖于高分辨率层。 由于恢复包含复杂结构信息的低频性能至关重要,因此重新设计了模型架构以提供跨多个尺度的训练信号,从而改善图像文本对齐和生成输出的低频细节。最终在大规模数据集上实现了十亿参数 GAN(GigaGAN)的稳定且可扩展的训练。
  • 使用多阶段方法进行图像生成:首先以 64 × 64 生成,然后上采样到 512 × 512。上采样器是高效且高质量的。在上采样器中,合成网络被重新排列为非对称 U-Net 架构,通过 3 个下采样残差块处理 64px 输入,然后是带有注意层的 6 个上采样残差块,以生成 512px 图像。

S.2 方法

GAN 当前的限制可能源于其对卷积层的依赖,即,相同的卷积滤波器对图像所有位置上的、所有文本调节的、通用图像合成函数进行建模。鉴于此,本文基于输入条件动态选择卷积滤波器,并通过注意机制捕获长期相关性。

样本自适应内核选择:基于文本条件即时创建卷积核。流程如图 2 所示:

  • 实例化一组滤波器
  • 把样式向量通过仿射层来预测一组权重,以在滤波器之间进行平均,从而生成聚合滤波器
  • 将该滤波器用于 StyleGAN2 的常规卷积管道

将注意力与卷积交错。由于卷积滤波器在其感受野内运行,因此它无法将自身与图像的远处部分联系起来。 可使用注意力层整合这种远程关系。

合成网络由一系列上采样卷积层组成,注意力层与每个卷积块交错(每一层都通过自适应内核选择进行增强,后面是注意力层),利用风格向量作为附加 token。在每个注意力块中,添加一个单独的交叉注意力机制来关注单个单词嵌入。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

安卓内部存储不需要申请权限,外部文件需要申请权限

内部存储和外部存储的访问权限区别&#xff1a; 内部路径&#xff1a;/data/user/0/com.xxx.xxx/ getExternalFilesDir可以获取到属于 App 自身的文件路径&#xff0c;通常是~/Android/data/<package-name>/**/。在该目录中读写文件均不需要申请权限,随着APP卸载就会删…

85 # koa 使用 koa-router 以及 koa-views 实现路由视图逻辑分离

mvc model 数据view 视图controller 控制器 下面实现一个路由视图逻辑分离例子&#xff0c;先安装依赖 npm init -y npm i koa koa-static koa-bodyparser koa-router koa-combine-routers ejs koa-views6.2.3没有分离的时候&#xff0c;路由视图逻辑都是混在一起的 const …

【Linux常用命令】

一、防火墙相关 1、查看防火墙状态 systemctl status flrewalld2、如果防火墙是开启状态的&#xff0c;需要关闭 systemctl stop firewalld3、永久行关闭操作&#xff08;禁止开机自启动&#xff09; 因为防火默认是开启状态的&#xff0c;如果只是手动关闭&#xff0c;先次…

《机器学习核心算法》分类算法 - 朴素贝叶斯 MultinomialNB

「作者主页」&#xff1a;士别三日wyx 「作者简介」&#xff1a;CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」&#xff1a;小白零基础《Python入门到精通》 朴素贝叶斯 1、朴素贝叶斯API2、朴素贝叶斯算法实际应用2.1、获取数据集2.2、划分…

Java笔记042-反射章节练习

反射章节练习 练习1&#xff1a;通过反射修改私有成员变量 定义PrivateTest类&#xff0c;有私有name属性&#xff0c;并且属性值为helloKitty提供getName的公有方法创建PrivateTest的类&#xff0c;利用Class类得到私有的name属性&#xff0c;修改私有的name属性值&#xff…

算法 数据结构 递归冒泡算法 java冒泡算法 优化递归冒泡 数据结构(九)

使用递归算法实现冒泡&#xff1a; package com.nami.algorithm.study.day06;import java.util.Arrays;/*** beyond u self and trust u self.** Author: lbc* Date: 2023-09-05 15:36* email: 594599620qq.com* Description: keep coding*/ public class BubbleSort2 {// p…

Java项目---图片服务器

图片服务器--->服务器&#xff08;图床&#xff09; 核心功能&#xff1a;上传图片、展示图片等 比如&#xff1a;编写博客时我们会插入图片&#xff0c;本质上是往文章中放了一个链接&#xff08;URL&#xff09;&#xff0c;这个URL资源在另外一个服务器上。 核心知识点…

关闭训练过程中的wandb

训练的过程中反复提醒wandb的账户&#xff0c;自动化执行的话&#xff0c;不是很方便&#xff0c;因此需要关闭这个wandb的功能 提醒的方式是这样的&#xff1a; 解决办法1、注释掉wandb相关的代码&#xff0c;并且添加关闭命令&#xff1a;wandb None 参考&#xff1a; 训…

Redis使用原生命令搭建集群

1.Redis版本及下载 找到安装的redis版本&#xff0c;redis3.0以上版本才支持集群 下载对应的版本 2.安装redis集群 解压上传编译 [hadoophost152 opensource]$ tar -xvf redis-3.2.11.tar.gz [hadoophost152 opensource]$ cd redis-3.2.11/ [hadoophost152 redis-3.2.11]$ ma…

关于 Resolution(分辨率、解析力)各单位的意义及相互之间的换算

1、问题背景 最近在调试的项目&#xff0c;有关于对解析力的要求&#xff0c;用 imatest 软件测试 MTF50 的值&#xff0c;如下图所示&#xff0c;可以看到他有不同的单位表示&#xff0c;LW/PH、Cycles/pixel 。另外关于解析力的单位还有LP/mm、L/mm、Cycles/mm、LP/PH&#…

Java8实战-总结27

Java8实战-总结27 用流收集数据分区分区的优势将数字按质数和非质数分区 用流收集数据 分区 分区是分组的特殊情况&#xff1a;由一个谓词(返回一个布尔值的函数)作为分类函数&#xff0c;它称分区函数。分区函数返回一个布尔值&#xff0c;这意味着得到的分组Map的键类型是B…

Springboot 集成 Ehcache操作数据库显示SQL语句设置

Springboot 集成 Ehcache操作数据库显示SQL语句设置 2023-09-13 23:33:35.030 INFO 6124 --- [ task-1] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default] 2023-09-13 23:33:35.124 INFO 6124 --- [ …