谁说GAN不如Diffusion模型?合成图像新SOTA来了!

语义图像合成是一项重要的条件图像生成任务,它允许通过用户提供的语义标签图来控制生成图像的内容和空间布局。尽管扩散模型在生成图像建模方面取得了最新的研究进展,但其推理过程的迭代性质使其在计算上需求巨大。其他方法,如生成对抗网络(GANs),由于只需要进行单次前向传递生成,因此更为高效,但在大型和多样化数据集上图像质量往往会受到影响。在这项工作中,本文提出了一种新的用于语义图像合成的GAN鉴别器,通过利用预训练的用于图像分类等任务的特征骨干网络生成高度逼真的图像。除此之外,还引入了一种新的生成器架构,具有更好的上下文建模,并使用交叉注意力将噪声注入潜在变量,从而产生更多样化的生成图像。该模型称之为DP-SIMS,在ADE-20K、COCO-Stuff和Cityscapes上实现了图像质量和与输入标签图的一致性方面的最新SOTA,超过了最近的扩散模型,并且推理速度更快,提高了两个数量级。

引言

条件图像合成旨在根据文本、类别、草图、标签图等信息生成图像。尽管基于文本的生成在最近几年取得了令人瞩目的进展,采用了扩散模型,但它缺乏对对象的位置和边界进行精确控制的能力,而这对于创造性内容生成任务(如照片编辑、修补)以及在判别性学习中进行数据增强都是重要的属性。因此,在本工作中,专注于语义图像合成,其目标是在给定一个分割图的情况下生成一幅图像,其中每个像素都被分配给一个类别。由于图的一对多性质,先前的研究在条件GAN框架下解决了这个问题,通过在GAN中探索不同的调节机制,以执行与输入标签图相对应的随机生成。其他人则开发了条件鉴别器模型,避免了图像到图像的重建损失,从而损害了生成图像的多样性。对于这个问题,扩散模型也进行了研究。SDM学习将空间自适应规范化层整合到潜在扩散模型的扩散过程中,而PITI对预训练的文本到图像扩散模型进行微调。与GAN相比,扩散模型通常能够获得更高的图像质量,但受到与输入分割图的一致性较低以及由于迭代去噪过程导致推理速度较慢的影响。

为了提高基于GAN的方法的图像质量和一致性,本文探索了在语义图像合成的鉴别器中使用预训练图像骨干的可能性。尽管在许多其他视觉任务中,如分类、分割或检测,以及最近用于类别条件的GANs,利用预训练的图像模型是常见的,但据众所知,这在语义图像合成中尚未被探讨。为此,本文开发了一种类似UNet的编码器-解码器架构,其中编码器是一个固定的预训练图像骨干,利用其中嵌入的多尺度特征表示,而解码器是一个卷积残差网络。我们还提出了一种新颖的生成器架构,借鉴了双金字塔调制方法,通过注意机制改进标签图编码,以实现更好的生成图像多样性和全局一致性。最后,引入了新颖的损失和正则化项,包括对比损失和多样性约束,提高了生成的质量和多样性。

本文通过在ADE-20K、COCO-Stuff和Cityscapes数据集上进行实验证实了我们的贡献。我们的模型,命名为DP-SIMS(“Discriminator Pre-training for Semantic Image Synthesis”),在图像质量(以FID度量)和与输入分割mask的一致性(以mIoU度量)方面在所有三个数据集上实现了SOTA的性能。结果不仅在这两个指标上超过了最近的扩散模型,而且推理速度更快,提高了两个数量级。

总的来说,本文主要贡献包括以下几点:

• 开发了一个利用预训练网络的特征表示的编码器-解码器鉴别器。

• 提出了一种使用注意机制进行噪声注入和上下文建模的生成器架构。

• 引入了进一步改善样本质量和多样性的损失和正则化项。

• 在图像质量、输入一致性和速度方面胜过了最先进的GAN和扩散方法。

相关工作

「生成图像建模」。在深度生成建模中,已经探索了几个框架,包括GANs、VAEs、基于流的模型和扩散模型。GANs包括生成器和判别器网络,它们参与一个极小极大博弈,导致生成器学习模拟目标数据分布。由于其目标函数的寻找模式而非覆盖模式的性质,GANs实现了样本质量的飞跃。最近,在大规模文本-图像数据集上训练的文本条件扩散模型取得了图像质量方面的突破性结果。扩散模型的相对较低的采样速度触发了将GANs扩展到在大规模数据集上训练的研究,以实现具有竞争力的图像质量,同时采样速度快得多。

「语义图像合成」。早期的语义图像合成方法利用生成图像与条件mask之间的循环一致性和空间自适应规范化(SPADE)层。这些方法将对抗性损失与图像到图像特征空间重建损失结合起来,以强制执行图像质量以及与输入mask的一致性。OASIS使用了一个UNet鉴别器模型,该模型为真实图像和生成图像中的像素标记了语义类别和一个额外的“假”类别,从而克服了对特征空间损失的需求,这些损失本质上限制了样本的多样性,同时提高了与输入分割图的一致性。通过采用损失来学习不同尺度上的图像细节或通过多模态方法(如PoE-GAN)取得了进一步的改进,这些方法利用了来自文本、草图和分割等不同模态的数据。

一些研究已经探索了扩散模型用于语义图像合成。在SDM中,SPADE层被整合到扩散模型的去噪网络中,以使生成的图像与语义输入图对齐。PITI用标签图编码器替换了预训练的文本到图像扩散模型的文本编码器,并对结果模型进行了微调。在本文的工作中,与PITI依赖于生成式预训练不同,利用了鉴别性预训练。另一方面,有一系列工作考虑从分割图中生成带有自由文本标注的图像。然而,这些扩散方法在与输入标签图的一致性方面存在问题,而在推理过程中的计算需求也比基于GAN的方法更大。

「GANs中的预训练骨干」。在GAN训练中,已经以各种方式探索了预训练的特征表示。当模型以详细输入(如草图或分割图)为条件时,预训练的骨干用于定义生成图像与训练图像之间的重建损失。另一方面,该领域的另一部分则将这些骨干作为固定编码器用于对抗性判别器。简单地使用具有固定解码器的预训练编码器会产生次优结果,因此Projected GANs模型采用基于随机投影的特征调节策略,使对抗博弈更加平衡。虽然这种方法对某些骨干非常成功,但该方法在使用较大的预训练模型时性能较差,最好的效果是在小型预训练模型(如EfficientNets)上获得的,而较大模型的性能较低。相关工作中的另一部分使用多个预训练骨干的集合,获得一组鉴别器,然后在每个步骤选择其中的子集以计算最具信息性的梯度。这产生了令人印象深刻的结果,但存在以下显著开销,使其效率较低:(i)所有鉴别器及其关联的优化器都存储在内存中,(ii)存在一个预推理步骤来量化每个鉴别器对于任何给定批次的适用性,以及(iii)主要鉴别器是从头开始训练的。我们的工作与Projected GANs密切相关,但据众所知,是第一个利用预训练的鉴别性特征网络进行语义图像合成的工作。

「GAN中的注意力机制」。虽然大多数流行的GAN框架,如StyleGAN家族,完全依赖卷积,但一些其他工作探索了在GAN中使用注意力机制,引入了一种超越卷积感受野的非局部参数化,以自注意力形式存在(,以及交叉注意力,用于整合来自不同模态(文本到图像)的信息。据众所知,这是第一项探索在语义图像合成中使用交叉注意力的工作。

方法

语义图像合成旨在生成真实的RGB图像 g ∈ ,这些图像既多样又与输入的标签图 t ∈ 一致,其中 C 是语义类别的数量,W ×H 是空间分辨率。通过在维度为 的随机噪声向量 z ∼ N(0, I) 的条件下,确保了一对多的图。

本节介绍基于GAN的方法,首先是在鉴别器中利用预训练特征骨干的方法。然后,描述了生成器的噪声注入和标签图调制机制,并详细说明了用于训练模型的损失。

预训练鉴别器骨干

本文使用UNet架构作为鉴别器,类似于OASIS。鉴别器经过训练,对真实训练图像中的像素进行分类,与相应的真实标签进行匹配,以及对生成图像中的像素进行分类为“fake”。需要注意的是,(Schönfeld等人,2021年)中的鉴别器是从头开始训练的,并且没有受益于任何预训练。

设 是一个带有参数 θ 的预训练特征骨干。将这个骨干、frozen作为UNet鉴别器中的“编码器” 的一部分。设 表示骨干在级别 l = 1,...,L 处提取的特征,通常具有不同的空间分辨率 和通道数 。然后,这些特征经过UNet的“解码器”处理,用于预测遍布输入标签图中的语义类别的每个像素标签,以及“fake”标签。此外,为了利用图像中的高频细节,在完整图像分辨率下添加了一个完全可训练的path,其中包含两个相对较浅的残差块。完整的鉴别器架构如下图2所示。

「特征调节」。使用预训练骨干的一个重要问题是特征调节。典型的骨干是情况糟糕的,意味着一些特征比其他特征更突出。这使得很难充分利用骨干的学到的特征表示,因为强特征会压倒鉴别器的解码器,并导致只探索编码器特征表示中的某些区域。先前,(Sauer等人,2021年)试图通过应用跨通道融合(CCM)和跨尺度融合(CSM)到特征中来缓解这个问题,而(Kumari等人,2022年)则对来自多个鉴别器的信号进行平均,以获得更稀疏的信号。根据经验,第一种方法在我们的许多实验中表现不佳,因为强特征仍然倾向于掩盖它们较弱但可能相关的对应特征。另一方面,第二种方法引入了多个模型在训练中的合并,导致较大的开销。在我们的工作中,开发了一种更好地利用编码器特征表示的方法。通过力图使所有特征对下游任务有相似的贡献来实现这一点。

考虑来自预训练骨干的尺度l的特征图。首先,应用收缩非线性(CNL),如 sigmoid,以获得 。接下来,规范化这些特征,以确保它们在以下层次中有相似的贡献。我们选择批规范化,得到,其中 和 是批处理统计。通过这种方式,所有特征都在一个相似的范围内,因此解码器不会优先处理具有高方差或振幅的特征。

生成器架构

本文的生成器架构基于DP-GAN,但提供了两个主要的创新点:重新设计的噪声注入机制和通过自注意力改进的长程依赖建模。与DP-GAN一样,我们使用一个mask编码网络来调整SPADE块,而不是通过单个卷积层将SPADE块调整到标签图上,这无法考虑在标签图中编码的长程依赖关系。标签图编码金字塔的每个块由一个包含下采样的单个卷积层、批处理规范化、GELU激活、注意模块和逐点卷积层的单一卷积层组成。对于每个尺度,我们获得一个调制图 ,i ∈{1,...,L},与最终图 的调整版本连接在一起,将用作相同分辨率的SPADE块的调节。

虽然(Schönfeld等人,2021年)认为将一个空间噪声图连接到标签图足以在生成的图像中引入多样性,因为噪声存在于所有SPADE块中,因此难以忽视,但对于DP-GAN的架构来说,情况并非如此。噪声仅注入到标签图编码网络的第一层,因此更容易被忽略。因此,我们提出了一种不同的噪声注入机制,利用不同尺度的学习表示与通过将 z 输入到三层MLP,w = MLP(z) ∈ ,得到的图噪声之间的交叉注意力。设 为上一个尺度的下采样特征表示,hi 首先经过卷积,提供标签图的嵌入,然后通过线性层将空间维度展平并投影,以获得查询 Q ∈ 。转换后的噪声向量 w 经过两个线性层进行投影,得到键和值 K, V ∈ ,然后计算交叉注意力:

在较低的空间分辨率(64×64及以下)的每个噪声注入块使用了一个由残差交叉注意力块组成的噪声注入模块。

其中, ∈ R 是一个可训练的门控参数,初始化为0。噪声注入之后是一个残差自注意力块,然后通过卷积输出尺度 i 处的调制。对于成本过高的注意力模块较多的较高分辨率,我们只使用卷积块。生成器架构的图示如下图3所示。

训练

我们通过最小化三个损失函数的加权平均来训练模型,将在下面详细说明这三个损失函数。

「像素级Focal loss」。我们的主要损失基于像素级GAN损失,其中鉴别器旨在将真实图像中的像素分配到条件标签图中的相应类别,并将生成图像中的像素分配给额外的“fake”类别。为了提高对稀有类别的性能,将(Schönfeld等人,2021年)中的加权交叉熵替换为加权Focal loss,同时保持与(Schönfeld等人,2021年)相同的权重方案。设 p(x) ∈ 表示鉴别器对于真实RGB图像 x 的输出类别概率图,p(g) ∈ 表示生成图像 g = G(z,t) 的概率图,其中标签索引 C + 1 用于“fake”类别。那么,鉴别器损失为:

其中, 是类别权重项,γ 是Focal loss的超参数。当 γ = 0 时,恢复为标准交叉熵,当 γ > 0 时,损失对预测不佳的标签施加更大的权重。因此,生成器的像素级损失采用以下形式:

使用Focal loss,生成器和鉴别器都更加强调被错误分类的像素,这些像素通常属于稀有类别,有助于提高这些少数类别的性能。为了防止鉴别器输出概率饱和,从而导致梯度消失,我们应用了单侧标签平滑,通过将鉴别器损失的交叉熵目标设置为 1-ε,其中 ε 是一个超参数。

「对比损失」。我们定义了一个patch-wise的对比损失,鼓励生成的图像在全局上保持一致。我们的对比框架基于InfoNCE(Oord等人,2019年),旨在将匹配的patch特征彼此靠近,并将它们与不匹配的特征推远。给定图像和标签图的一对 (x,t),我们生成相应的图像 g = G(z,t),并使用 和 分别从预训练的 VGG 网络中获得的相应多尺度特征。对于每个尺度,在 和 中分别从相同的空间坐标处随机抽样匹配特征 z,z+。此外,我们从 Hx 中随机选择的坐标处抽样 N 个非匹配特征 z−n。

然后,使用卷积将特征投影到嵌入空间,然后经过两层MLP获得 v,, ∈ ,然后计算InfoNCE损失如下:

其中,τ 是控制损失响应锐度的温度参数。我们在特征尺度 1/4、1/8、1/16 处应用该损失,并取它们的和。这类似于用于图像到图像翻译的对比损失(Park等人,2020年),主要区别在于计算损失的特征表示。而其他方法重用其翻译网络的编码器特征,我们从 VGG 网络获取特征金字塔,并通过一个简单的模块进行处理,该模块由一个卷积块后跟一个投影 MLP 组成。

「多样性损失」 。为了促进生成图像之间的多样性,我们引入了一种鼓励使用相同mask但不同潜变量 z 生成的两个图像在彼此之间足够不同的损失。特别地,定义:

其中, = max(0,·) 保留其参数的非负部分, 是最终卷积之前生成器的输出,σ 是 sigmoid 函数。采用截断阈值 来限制生成器,仅在给定相同标签图的情况下应用此损失以防止对生成器进行过度约束。

实验

本节介绍了实验设置,展示了主要结果,并进行了剖析。

实验设置

「数据集」。考虑了三个流行的数据集来评估语义图像合成:COCO-Stuff、Cityscapes、ADE-20K。COCO-Stuff提供了118k个训练图像和5k个验证图像,标有183个类别。Cityscapes包含2,975个训练图像以及500个验证图像,并使用35个标签。ADE-20K包含26k张图像,跨足151个类别的对象分割。与(Park等人,2019年;Wang等人,2022b,2018年)类似,我们在可能的情况下使用实例级别的标注。对于COCO-Stuff和Cityscapes,使用实例分割,方法如(Park等人,2020年),通过创建相对于其质心的每个前景像素的垂直和水平偏移图,并将其连接到语义标签图作为模型的输入。对于ADE-20K,没有可用的实例分割。在ADE-20K和COCO-Stuff上生成分辨率为256×256的图像,以及Cityscapes上生成256×512的图像。为了避免在可识别的个人数据上训练模型,使用了数据集的匿名版本。

「度量」。我们计算FID来评估图像质量。还报告了mIoU,以衡量生成图像与输入分割图的一致性。为了与先前的工作进行公平比较,使用这些工作中的分割模型来推理生成图像的标签图:对于ADE-20K使用UperNet101,对于Cityscapes使用多尺度DRN-D-105,对于COCO-Stuff使用DeepLabV2。我们将使用这些模型获得的分数称为mIoU。此外,我们使用Mask2Former推理标签mask,这比其他分割模型更准确,因此与真值mask进行更有意义的比较。我们将得到的分数表示为。在补充材料中提供了更多详细信息。

「实施细节」。通过一种有利于稀有类别的采样方案来抵消实验中使用的数据集中的强烈的类别不平衡。设是类别c出现在训练图像中的比例,那么每个图像都以与成比例的概率被抽样,其中k是图像中存在的最稀疏的类别。

每个模型都在一个或两台带有8个V100 GPU的机器上进行训练。我们将总批次大小设置为64,在所有实验中都使用ADAM优化器,学习率为10−3,动量 = 0, = 0.99。对于预训练的Swin背景,发现需要使用梯度裁剪来稳定训练。与先前的工作一样,跟踪生成器权重的指数移动平均,并将衰减率设置为α = 0.9999。对于对比损失,设置权重因子 = 100,温度τ = 0.3,并选择N = 128个负样本。对于GAN损失,设置 = 1,对于多样性损失,设置 = 10。对于Focal loss,设置Focusing参数γ = 2。

主要结果

与最新技术的比较。在下表1中,报告了我们的模型与最新技术的比较结果。

DP-SIMS方法(使用ConvNext-L骨干网络)在各个指标和数据集上均取得了最佳性能。在COCO-Stuff上,将FID从PITI的15.5改善到13.6,同时将OASIS的从52.1改善到65.2。对于ADE-20K,观察到类似的趋势,相对于DP-GAN,我们的方法改善了3.4个FID点,相对于OASIS,改善了14.5个点。对于Cityscapes,获得了相对于Semantic Diffusion的3.9个FID点的较小改进和5.5个点。请参考下图1和图4,了解在COCO-Stuff和Cityscapes上训练的模型的定性比较。

「编码器架构」。在下表2中尝试了不同的预训练骨干网络架构,用于鉴别器。

所有编码器都经过了ImageNet-1k分类的训练。发现基于注意力的Swin架构在ImageNet准确性方面表现最佳,但与卷积模型相比,作为语义图像合成的鉴别器骨干网络效果较差,并且往往更不稳定,通常需要梯度裁剪才能收敛。对于卷积模型,更好的分类准确性转化为更好的FID和。

「预训练数据集」。在下表3中,我们分析了以不同方式预训练ConvNext-L架构并在其上训练我们的模型对性能的影响,其他条件相等。

我们考虑在224×224分辨率下对ImageNet-1k(IN-1k@224)和ImageNet-21k(IN-21k@224)进行预训练,以及在384×384分辨率下对ImageNet-21k(IN-21k@384)进行预训练。就而言,结果与对不同架构的观察结果一致:使用更大数据集(IN-21k)和更高分辨率进行训练的鉴别器效果最佳。另一方面,发现在FID方面,使用标准的ImageNet(IN-1k@224)相较于更大的IN-21k@224预训练模型效果更好,并且与IN-21k@384预训练模型一样表现良好。这可能是由于Inception模型(Szegedy等人,2016年)在计算FID时使用了相同的数据集,引入了指标的偏见。

「推理速度」。GAN模型相对于扩散模型的一个重要优势是其快速的推理速度。GAN只需要一个前向传递来生成一张图像,扩散模型需要进行多次迭代的去噪步骤,导致推理速度较慢,这可能影响模型的实际可用性。在下表4中,报告了生成一张单独的256×256图像的推理速度,平均值基于50次不同运行。PITI默认使用250个去噪步骤来生成64×64分辨率的生成模型和27步来上采样模型,而SDM在全分辨率上使用1000步。还使用27步来对PITI生成模型进行基准测试。相较于扩散模型,我们的生成器快了两到三个数量级。

消融实验

「特征调节」。我们在ADE-20K上进行消融实验以验证我们的特征调节机制,如下表5所示。

我们将DP-SIMS中的归一化与以下进行比较:(i)一种基准方法,其中骨干特征在进入鉴别器网络之前保持不变("Baseline - no normalization"),(ii)Projected GAN(Sauer等人,2021年)方法,其中使用了交叉通道和尺度融合,并使用了归一化层,但没有(iii)收缩非线性激活("DP-SIMS w/o sigmoid")或(iv)归一化("DP-SIMS w/o BatchNorm")。为了与(Sauer等人,2021年)进行公平比较,这些实验是在他们报道的最佳骨干网络EfficientNet-Lite1上进行的。与基线方法相比,Projected GAN方法将提高了0.5点,但将FID降低了1.1点。使用我们基于BatchNorm和sigmoid激活的特征调节,相对于基线,我们将提高了4.5点,FID提高了3.3点。当我们省略sigmoid激活时,和FID都下降了0.4点。我们观察到在没有归一化的情况下有类似的行为:FID和都下降了1.5点。这些结果验证了我们特征调节方法的适用性。

「架构修改」。在下表6中,对我们提出的架构修改进行了消融实验。

将我们的生成器或鉴别器与OASIS的生成器或鉴别器替换,表明大部分收益归功于我们的鉴别器设计。使用OASIS的鉴别器而不是我们的鉴别器将降低了18.8点,FID降低了6.6点。我们还尝试去除交叉注意力噪声注入机制,并用通常的连接代替,以及省略自注意力层。这两者在最终性能中都有显著贡献。最后,进行了标签平滑的消融实验,省略标签平滑将FID降低了0.3点,降低了1.4点。

「对比损失」。为了评估对比损失的重要性,在表6的最后一行进行了一项消融实验,其中在训练过程中去除了对比损失。这对结果产生了重大影响:FID恶化了2.4点,恶化了1.8点。在下表7中,评估了温度参数τ的不同取值。找到了一个最佳的温度参数τC=0.3,使用=100。

「Focal loss」。在下表8中,我们考虑了Focal loss的影响,通过将其与OASIS中使用的加权交叉熵损失进行比较,以及在Focal loss中使用的类别加权的效果。这项比较是在Cityscapes上进行的,因为它比ADE-20K更不平衡。我们发现从加权交叉熵切换到Focal loss将FID提高了0.5点,但将恶化了0.9点。当将加权Focal loss与加权CE进行比较时,我们观察到FID提高了1.6点,提高了2.6点。

「多样性」。我们研究了多样性损失对生成图像的变异性的影响。与(Schönfeld等人,2021年)类似,在下表9中报告了跨20个相同标签图的合成图像的平均LPIPS距离,这些图像在验证集中进行了平均。图5提供了一个定性的例子,显示了生成图像的明显多样性。与OASIS相比,我们生成了更多样化的图像,LPIPS分数类似于SPADE,但在FID和方面质量更高,如表1中所报告的。

结论

本文介绍了DP-SIMS,它充分利用了预训练的骨干网络在基于GAN的语义图像合成模型中。我们通过将它们用作UNet类型的鉴别器中的编码器来实现这一目标,并引入了一种特征调节方法,以最大程度地发挥预训练特征的有效性。此外,我们提出了一种新颖的生成器架构,它使用交叉注意力在图像生成过程中注入噪声,并引入了新的损失项来提高样本多样性和输入一致性。我们通过实验证明了我们的方法,并将其与基于GAN和扩散模型的最新工作进行了比较,使用了三个标准基准数据集。与这些方法相比,我们发现在图像质量、样本多样性和与输入分割图的一致性方面实现了改进。重要的是,我们的方法推理速度比基于扩散的方法快两个数量级。

在实验中,我们发现基于Transformer的模型,如Swin,在用作鉴别器骨干时可能会导致不稳定性。鉴于它们在密集预测任务中的强大性能,进一步研究和缓解这个问题将是值得的,希望能带来额外的改进。

参考文献

[1] Unlocking Pre-trained Image Backbones for Semantic Image Synthesis

论文链接:https://arxiv.org/pdf/2312.13314

 更多精彩内容,请关注公众号:AI生成未来

  • 16
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值