StyleGAN-NADA:CLIP引导的非对抗域自适应(Domain Adaptation)图像生成器

StyleGAN-NADA: CLIP-Guided Domain Adaptation of Image Generators

公众号:EDPJ

目录

0. 摘要

0.1 关键词和名词解释

1. 简介

2. 相关工作

3. 前置技术

3.1 StyleGAN

3.2 StyleCLIP

4. 方法

4.1 基于CLIP的指引

4.2 层冻结

4.3 隐映射器挖掘“mining”

5. 实验

5.1 结果

5.2 隐空间探索 

5.3 与其他方法的对比

5.4 消融实验(Ablation study)

6. 结论

参考

附录

A. Broader Impact

B. CLIP空间的分析

C. Few-shot CLIP指引(Guidance)

D. Beyond StyleGAN

E. 身份信息保留(Identity Preservation)

F. 跨模型插值(Cross-Model interpolation) 

G. 更多的样本(Additional samples)

H. 定性Few-shot对比

I. 训练细节

J. Licenses and data privacy 


0. 摘要

能够训练一个只由文本指引的、不需要看任何图像的、从特定领域产生图像的生成式模型(generative model)吗?换句话说,能够“盲”训一个生成器吗?使用大尺度对比语言图像预训练模型(Contrastive-Language-Image-Pretraining (CLIP) models)的语义功能,不需要任何的图像参考,就能基于文本把一个生成式模型迁移到新的域(domain shift)。基于文本引导和更短时间的训练,生成器可以生成多种风格和外形的图像。值得注意的是,对于现存的方法来说,这些更改是非常困难的。本文在许多交叉域进行了扩展实验,证明了本文方法的有效性,并且展示了本模型的隐空间结构,该结构使生成式模型更适用于下游任务(down-stream task)。

0.1 关键词和名词解释

生成式模型(generative model)

交叉域(cross-domain)、域自适应(Domain Adaptation)、域迁移(domain shift)

非对抗域自适应(Non-Adversarial Domain Adaptation)

对比语言图像预训练模型(Contrastive-Language-Image-Pretraining (CLIP) models)

  • 基于对比学习的目标,把图像和文本都映射到一个联合的多模态 embedding 空间(latent space,隐空间)
  • 图像和文本在其中的 representation 称为隐编码(latent code)
  • 通过对隐编码的优化,进行图像生成或修改
  • 图片的年龄,性别等每个属性,在 latent space 是线性可分的,存在一个超平面将两者分开。故根据不同属性的超平面方向进行移动,可进行一个属性的编辑和多个属性互不干扰的编辑。

自适应层选择,或者叫自适应可训练权重选择

  • 原理:模型训练时,深度网络中不同的层提取不同的特征;反过来,在图象生成时,不同的层生成不同的特征。
  • 域迁移的本质:基于源域与目标域的差异,保留源域图像的部分关键信息,然后更改其余的信息,使生成图像保留源域关键信息的同时满足目标域的要求。
  • 冻结与关键信息生成更相关的层,对剩余层进行训练。具体操作方式见 4.2 节层冻结

分割掩模(segmentation mask,附录 D

  • 与层选择有相似之处,不同点在于,mask是对图像直接进行操作
  • 保留图像指定的区域(不需要改变的区域),mask剩余的区域,然后送入CLIP对mask区域进行转换

1. 简介

生成对抗网络(Generative Adversarial Networks,GANs)通过大量语义隐空间来捕获建模图像的分布,这史无前例的能力使无数的领域产生了变革:图像增强、编辑、甚至是最近的的判别式任务(例如,分类和回归)。

通常,这些模型只局限于能够收集大量图像的域。这严重限制了模型的实用性。事实上,在许多场景(某个艺术家的绘画、稀少的医疗条件、想象中的场景),可能没有充足的、甚至没有数据用于训练一个GAN。

近期,视觉语言模型(CLIP)可以封装通用信息,从而不用收集数据。此外,该模型可以和生成式模型结合,从而提供一个用于图象生成和操作的、简单的、直观的文本驱动的界面。然而,此类作品建立于在固定域的预训练生成模型上,用户只能在域内生成和操作。

本文方法可以进行域外生成。上图展示了三个域外生成的例子。三个模型进行了盲训,没有看任何目标域的图像。

使用CLIP进行文本引导的训练是挑战性的。朴素的方法(要求生成的图像最大化基于CLIP的分类分数)通常导致对抗性的(adversarial)结果(见附录B)。替代地,作者在CLIP的embedding空间把域的差异性编码为文本导向(direcation)。作者提出了一个新的loss以及两个生成器训练结构:一个生成器保持冻结,提供来自源域(source domain)的样本;另一个进行优化来生成图像,该图像与源域的不同,只遵从CLIP空间的、交叉域(cross-domain)的文本描述导向。

对于非常剧烈的域改变,为了增加训练的稳定性,引入了自适应的训练方法:在每一次训练迭代中,利用 CLIP 来识别最相关的网络层,然后只训练这些最相关的网络层。

作者把该方法用于StytleGAN2,证实了其在广泛的源域和目标域的有效性,包括:艺术风格、交叉物种识别迁移以及重要的外形改变(例如,把狗变为熊)。相比于现存的编辑技术和few-shot方法,StyleGAN-NADA不需要任何训练数据就能完成相同工作。

最后,作者证实了StyleGAN-NADA保留了隐空间引人注目的结构。迁移的生成器不止保留了原始的编辑能力,它甚至可以重复使用任何现有的编辑指引以及为原始域训练的模型。

2. 相关工作

文本引导的合成。视觉语言任务包括基于语言的图像检索(retrieval)、图像字幕(captioning)、视觉问答和文本引导合成等。为了解决这些任务,需要学习跨模态视觉和语言表示,通常通过训练一个transformer完成。

最近出现的CLIP是用于联合视觉-语言表示的强大模型。它利用40亿组文本-图像对进行训练。基于对比学习的目标,把图像和文本都被映射到一个联合的多模态的embedding空间。基于CLIP学习的representation被用于许多任务,例如:图像合成和操作。这些方法对隐编码(latent code)进行优化,生成或操作一个特定图像。与此相反,本文使用了一个新的方法:只用一段文本来引导生成器的训练。

用有限的数据训练生成器。Few-shot生成模型的目标是:只用少量的目标来模拟丰富多样的分布。用于处理这些任务的方法可以分成两大类:从零开始(from-scratch)和精调(fine-tune,基于预训练生成器的多样性)。

  • 对于从零开始方法,“few”通常是指数千个图像(而不是成千上万或者上百万)。这些方法通常进行数据扩充(data augmentations),或者用辅助任务让鉴别器基于已有数据学的更好。
  • 在迁移学习(transfer learning)的场景,“few”通常指一个范围:从5到数百。当只用非常少的数据训练时,首要的关注点是避免模式崩塌(mode-collapse)和过拟合(overfitting),从而成功地把多样的源生成器迁移到目标域。解决这个挑战的方法有很多:一些限定了可更改的权重;其他的引入了新的参数来控制通道级别的的统计量、在隐空间的合适区域进行采样、添加正则化项、或者迫使交叉域对齐。

以前的方法用少量的数据进行生成器自适应,本文方法不需要任何训练数据就能完成相同的工作。此外,先前的方法精选可训练权重。本文的方法引入了自适应的层选择,基于每一步训练的网络状态和目标的类别。

3. 前置技术

本文方法的核心包含两个要素:StyleGAN2和CLIP。接下来,将讨论StyleGAN结构的相关特征,以及在过去,CLIP是如何使用的。

3.1 StyleGAN

近几年,StyleGAN及其变种是最先进的无条件图像生成器。该生成器由两个主要部分组成。一个映射网络:在一个学到的隐空间 W 中,把从高斯先验(Gaussian prior)中采样的隐码字 z 转换为一个向量 w。然后这些隐向量被喂给合成网络,来控制特征(或卷积核)的统计值。通过遍历 W,或者在不同的网络层混合不同的 w 码字,对生成图像语义特性进行精细控制。

然而,这些隐空间编辑操作通常只在初始训练集所在域内。

3.2 StyleCLIP

近期的工作,Patashnik et al. 结合了StyleGAN的生成能力与CLIP的语义知识,发现了新的编辑指引:只使用预期改变的文本描述。他们总结了三种使用CLIP语义能力的方法。

前两种是最小化生成图像与目标文本在CLIP空间的距离。它们使用隐码字最优化,或者直接训练一个编码器(或映射器)来更改输入隐码字。

第三种方法,也是作者使用的方法,使用CLIP来确定解释隐空间中变化的全局(global)指引:分开修改隐空间条目,从而确认哪一个引起图像空间的改变。这些改变与CLIP空间中两个文本描述(源和目标)间的指引相一致。

然而,这些方法共享受限的隐空间编辑方法:可进行的改变,局限于预训练生成器所在域。因此,它们可以进行发型、表情的改变,甚至把狼变为狮子(如果生成器已经看过两者),但是,不能把照片变为画,或者不能用在狗上训练的生成器生成猫。

4. 方法

仅通过文本指引(没有图像)来完成域迁移。只使用预训练的CLIP模型进行监督。

本文通过两个问题来完成任务:

如何最好地提取封装在CLIP中的语义信息?

如何正则最优处理来避免adversarial solutions和mode collapse?

4.1 基于CLIP的指引

全局(global)loss。可以使用StyleGAN的引导loss:

其中 G(w) 是把隐码字 w 喂给生成器 G 生成的图像,\mathop t\nolimits_{​{\rm{t}}\arg {\rm{et}}}是目标类别的文本描述,\mathop D\nolimits_{clip}是CLIP空间的余弦距离。Loss命名为“global”,因为它并不依赖于初始的图像或者域。

事实上,这个loss导致adversarial solutions。在缺少支持真实图像流形(manifold)解决方案的固定生成器的情况下,优化器通过向图像添加像素级的干扰来训练分类器(CLIP)。此外,保持多样性并不能获得更好的loss。事实上,对于与给定文本的距离,只能生成一幅图像的mode collapse的生成器,可能是最好的优化器。附录B对CLIP的embedding空间的分析证实了这个想法。这些缺点让这个loss不适用于训练生成器。然而,作者用它来进行自适应层选择。

引导性的CLIP loss。为了解决这些问题,作者从StyleCLIP的全局指引方法中获取灵感。理想情况下,要确认源域与目标域之间的引导,然后根据引导精调生成器,使其生成的图像与源域不同。

为了实现这个方案,首先要通过在CLIP空间中嵌入源域和目标域(例如:狗和猫)成对的文本描述,来确定一个交叉域的引导。然后,必须确定在精调前后由生成器产生的图像在CLIP空间的指引。作者用两个生成器来完成:

  • 从一个在单个源域(例如:脸、狗、教堂或者车)上预训练的生成器开始,然后克隆它。
  • 一个副本在训练的过程中保持冻结。它的作用是为每一个隐码字提供源域的图像。
  • 第二个副本用于训练。基于文本描述的指引,对它进行精调,从而产生与源域不同的图像。
  • 这两个生成器分别被命名为\mathop G\nolimits_{frozen} \mathop {,G}\nolimits_{train}

为了维持隐空间的对齐,这两个生成器在整个过程中共享同一个保持不变的映射网络。完整的训练如上图所示。

上图给出了CLIP空间的指引展示。指引loss由下式给出:

其中,\mathop E\nolimits_I ,\mathop E\nolimits_T是图像和文本编码器。\mathop t\nolimits_{t\arg et} ,\mathop t\nolimits_{source}是源和目标类别文本。

这样的loss可以克服全局loss的缺点:

  • 首先,全局loss受到mode collapse的不利影响。如果目标生成器只能产生一个图像,则从所有源到目标图像的CLIP空间的指引都会不同。因此,不能使全部文本指引对齐。
  • 其次,对于网络来说,收敛到adversarial solutions更困难。因为它必须设计干扰,从而在有无限个不同实例的集合上骗过 CLIP。

4.2 层冻结

对于基于文本的域迁移,例如把图像转换为素描,上面描述的训练策略可以在发生模式崩塌和过拟合之前迅速收敛。然而,扩展性的外形更改需要更长时间的训练,这会使网络不稳定,从而导致差性能。

先前在few-shot域自适应上的工作发现,只对网络权重的一部分进行训练可以极大程度的提升生成图像的质量。因为源生成器的一些层对于目标域某方面的生成是有用的,所以要保留它们。此外,优化更少的参数可以降低模型的复杂程度以及过拟合的风险。

基于这些方法,通过限制在每一次训练迭代时可更改权重的数量,从而正则化训练过程。

理想情况下,要把与指定改变更相关的的权重当做可训练权重。为确定这些权重,回顾隐空间编辑技术,特别地,回顾StyleCLIP。

在StyleGAN中,喂给不同网络层的码字影响不同的语义特征。因此,通过考虑在 W+ 空间(隐空间,其中,StyleGAN的每一层可获得不同的码字 \mathop w\nolimits_i \in W)中的编辑指引,可以确定哪一层与给定改变有更强的联系。基于此,作者提出了训练策略,在每一次迭代中:

  • 选择 k 个最相关的层;
  • 在单步训练中,只优化这些层,并冻结其他的层

为选择 k 层:

  • 从 W 中随机采样\mathop N\nolimits_w个码字,然后通过把相同的码字复制给每一层,把这些码字转换到 W+ 中。
  • 然后,使用StyleCLIP隐码字优化方法(使用全局loss,等式1)进行\mathop N\nolimits_i次迭代。
  • 选择 k 个使隐码字改变最剧烈的层。

两步处理如上图所示:

  • 第一步,在 W+ 空间(绿色部分)中优化一个隐码字集合,同时保持所有的网络权重不变。该优化用全局CLIP loss(等式1)进行。选择对应 w 输入改变最剧烈的层。
  • 第二步,解冻选择的层,然后用引导CLIP loss(等式2)来优化这些层。

在所有情况下,我们还冻结了 StyleGAN 的映射网络、仿射码字转换和所有的 toRGB 层。

注意,上述处理与直接训练中基于梯度进行层选择有本质的不同。使用冻结生成器隐码字优化是为了支持保持在真实图像流形上的解。用它进行层选择,可以使训练与真实改变一致。直接的训练与此相反,它会使模型更容易偏向不真实或者adversarial solutions。

4.3 隐映射器挖掘“mining”

对于一些外形改变,生成器不能进行完整的转换。例如,当把狗转为猫时,fine-tune会导致一个新的生成器的产生。该生成器可产生猫、狗、以及位于两者之间的物种。为了解决这个问题,标记迁移的生成器在它的域中包含了猫和狗。因此,问题转向域内隐编辑技术。特别地,StyleCLIP的隐映射器,把所有的隐码字映射到隐空间中像猫(cat-like)的区域。映射器的训练细节如附录 I 所示。

5. 实验

5.1 结果

文本引导的转换如上两图所示。更多请参考附录G。

从狗到各种动物的转换如上图所示。具体训练细节如附录 I 所示。

5.2 隐空间探索 

现代的图像生成器(尤其是StyleGAN)知名于表现良好的隐空间。隐空间有利于任务,例如图像编辑、图像-图像的转换。对真实图像的操作导致大量GAN逆映射(GAN inversion)技术的产生。本文使用的的生成器也用相似的技术进行操作。事实上,本文模型可以重复使用已有的在源域预训练的模型,而不需要额外的fine-tune。

GAN逆映射(Inversion)。把现有的逆映射技术与作者变形的生成器匹配,从这方面入手。给定一个真实图像,用ReStyle编码器(在人脸域预训练)转换它,然后把转换的隐码字w \in W +插入变形的生成器。结果如上图所示。变形的生成器成功的保留了与隐码字相关的身份特征,即使对于从真实图像反转获得的码字来说也是如此。

隐遍历编辑(Latent traversal editing)。逆映射结果显示,变形生成器的隐空间与源生成器的对齐。这并不奇怪:

  • 第一,这是因为作者复杂的生成器结构以及引导性loss的特性。
  • 第二,这是因为之前的方法保持了用于下游应用的精调生成器的对齐。

然而,本文使用的是与之前不同的、非对抗(non-adversarial)的方式。因此,对隐空间依然保持对齐的验证是令人感兴趣的。作者使用现有的编辑技术,结果显示,隐空间引导确实可以保留语义信息。因此,作者不是在变形生成器的隐空间中寻找新的路径,而是简单地使用为源生成器建立的路径和编辑模型。

如上图所示,作者用已有的方法把真实图像映射到了新的域。用StyleCLIP编辑表情和发型,用StyleFlow编辑姿势,用InterFaceGAN编辑年龄。使用在源域预训练的实现方法。

图像-图像转换。Richardson et al. 通过训练编码器验证了大量的图像-图像转换应用。这些编码器把任意域的图像映射到预训练生成器的隐空间。然后,用生成器在它自己的域中重新合成图像。他们用条件合成任务、图像恢复、超分辨率(super resolution)来证实这个方法。然而,该方法有一个很大的限制,生成图像所在域必须是StyleGAN生成器训练的域。

这些预训练的生成器可以与作者变形的生成器匹配,从而实现更一般的图像-图像转换。特别地,如上图所示,没有预训练编码器,使用分割掩模(segmentation masks)和基于草图的引导,进行多个域的条件图像合成。

5.3 与其他方法的对比

对比StyleGAN-NADA与现有技术发现:

  • 第一,本文的文本引导的域外生成技术不能用当前的隐编辑技术代替。
  • 第二,StyleGAN-NADA对大幅度的外形改变优于当前的few-shot方法。

文本引导的编辑。现有的在与训练生成器域内进行操作的编辑技术,不能把图像迁移到其他域。

StyleCLIP与三个CLIP引导的编辑技术的对比如上图所示。结果显示,所有的StyleCLIP都不能进行域外操作,即使需求非常小(例如,把名人的特征加到狗身上)。

Few-shot生成器。 作者对比了StyleGAN-NADA与一些few-shot方法:Ojha et al.、Mine-GAN、TGAN、以及TGAN+ADA.。在所有情况,都把官方的StyleGAN-ADA AFHQ 狗模型转换为猫模型。作者以zero-shot的方法进行操作;其他方式使用来自于AFHQ-Cat的5、10、100幅图像进行训练。

对比结果如上图所示,相比之下,StyleGAN-NADA有较好的性能。

Quality的对比结果如上图所示。更多内容见附录H

此外,作者发现,在大多数情况下,在使用few-shot之前使用StyleGAN-NADA可以提升合成性能。见附录C

5.4 消融实验(Ablation study)

实验结果如上图所示。在所有的域和更改中,global loss都不能产生好结果。与此同时,本文的自适应层冻结的(adaptive layer-freezing)、引导性损失(directionalloss)模型有最好的效果。某些情况下,可以训练一个隐映射器(latent mapper)来进一步提升性能。 

6. 结论

StyleGAN-NADA,用于非对抗域自适应(Non-Adversarial Domain Adaptation)图像生成器的、由CLIP引导的、zero-shot方法。用CLIP引导生成器的训练,而不是探索它的隐空间,可以实现在风格和外形上的巨大改变,超越了生成器的原始域。

本文方法也有限制。基于CLIP,受限于CLIP。文本引导的方法受限于自然语言的模棱两可。

本文的方法对于风格和细节的改变表现良好,但是对于大尺度的特征和几何特性的改变较为困难。Few-shot也面临这样的问题。

作者发现,好的转换需要十分相似的预训练生成器作为起点。作者关注改进现有的生成器。这引发了一个问题:是否可以不受上述需要的限制,只使用CLIP引导,就能从头开始训练一个生成器。虽然这个想法有点难,但是近期在反转分类器和生成式艺术品上的进展,让这个想法看起来是可以实现的。

参考

Gal, R., Patashnik, O., Maron, H., Bermano, A. H., Chechik, G., & Cohen-Or, D. (2022). StyleGAN-NADA: CLIP-guided domain adaptation of image generators. ACM Transactions on Graphics (TOG)41(4), 1-13.

附录

A. Broader Impact

因为CLIP是使用从网络上收集的大量的图像训练获得,由它监督的模型可能会带有这些数据所具有的偏见。例如,在人脸生成时,用文本“医生”引导,生成的大多是男性;用文本“护士”引导,生成的大多是女性。在附录C中,作者使用少量的图像来解决这个问题。

B. CLIP空间的分析

通过视觉化在CLIP的embedding空间的行为,作者分析了引导性的CLIP loss与传统的全局距离最小化方法间的差异。

首先把AFHQ猫和狗的图像嵌入到CLIP多模态(multi modal)空间。然后用PCA把他们投影到2D。相似地,对文本“猫”和“狗”进行嵌入和投影,还有对使用全局loss和引导性loss训练的、作者提出的生成器合成的假图像进行嵌入和投影。

实验结果如上图所示。在使用全局loss的情况(15.b),向着一个单一的目标优化。因为保持多样的分布没有收益,这导致了向embedding空间一个单独区域的崩塌。与此相反,使用指引性loss(15.c)阻止了崩塌,并且保持了较高程度的多样性。

C. Few-shot CLIP指引(Guidance)

虽然本文的方法关注的是zero-shot域自适应,但在few--shot的训练中,可以使用相似的思想。这里研究两种用于few-shot域自适应的、使用CLIP语义信息的方法。

基于图像的指引。在第一个方法中,考虑可以获得少量图像(大约3~5幅)的场景。在该场景,不是用两个文本描述的CLIP空间的指引,而是考虑由原始图像生成器产生的图像与小图像集(真实图像,ground truth)所在域之间的CLIP空间指引。该方法用CLIP编码两个域中图像的语义差异,则引导性loss可表示为:

其中,\mathop N\nolimits_r是真实图像集的大小,\mathop I\nolimits_i是该图像集中第 i 个图像。\mathop N\nolimits_s是从源域生成器采样的图像的数目,本实验中设为16。(使用图像作为转换的指引,而不是文本)

该方法保留了few-shot的一些优点:

  • 更好的保持了隐空间的结构,较好地保留了人物身份(如上图所示);         
  • 用更少的时间进行训练;
  • 既不需要目标域的描述图像对齐,也不用以适合源域的方式进行预处理。

与StyleGAN-NADA对比,该few-shot方法可以缓解一些模型的限制。

  • 特别地,通过目标域的一些样本来避免语言的模棱两可。
  • 此外,它可以生成用文本难以描述的风格。然而,由于CLIP的embedding空间本质上是语义的,所以该方法不能保证向该风格的精确转换。
  • 最后,该方法可以处理由CLIP带来的偏差。例如,通过提供两种性别医生的图像,可以避免CLIP倾向的男医生和女护士的问题。如上图所示。

zero-shot预训练。第二种方法,考虑可获得几十上百图像的场景。在该场景,few-shot模型有较好的性能。然而,该性能依赖于源生成器与目标域之间的相似性。用zero-shot的方法可以减小两个域之间的gap,从而提升性能。

令 F 表示使用图像集{\rm{\{ }}\mathop I\nolimits_{​{\rm{real}}} {\rm{\} }}进行生成器域迁移的few-shot方法,用 N 表示zero-shot方法,则few-shot自适应可表示为:

其中,\mathop G\nolimits_S \mathop {,G}\nolimits_T分别表示源域和目标域的生成器。\mathop G\nolimits_{NADA}是中间生成器,通过使用文本\mathop t\nolimits_{source} ,\mathop t\nolimits_{t\arg et}引导,把zero-shot应用到源域生成器上得出。

典型的few-shot自适应方法需要用于源域的训练良好的鉴别器。而StyleGAN-NADA只更改生成器。因此,这里研究三个生成器-鉴别器差异的可能解决方案。

  • 第一,简单地忽视差异,正常使用few-shot方法,使用\mathop G\nolimits_{NADA}的同时使用源鉴别器\mathop D\nolimits_s
  • 第二,让鉴别器去捕获(catch-up):先进行少量的训练迭代,只对鉴别器进行更新。\mathop G\nolimits_{NADA}作为虚假数据的源,few-shot集合作为目标域的采样。
  • 第三,使用\mathop G\nolimits_{NADA}和CLIP映射器产生大量的图像,然后在把它们当做few-shot的源之前,用它们精调\mathop G\nolimits_S ,\mathop D\nolimits_S

先用10张狗-猫图像来对比三种方案。在所有的情况使用相同的训练迭代次数作为基线模型(包含只有鉴别器被训练的迭代)。对于“精调G+D”的设置,生成2.5万张图,然后用这些图迭代5000次,对原始的狗模型进行精调。使用Ojah et al.提出的FID度量(越小越好):从精调的模型中采样5000张图,然后与完整的目标集合进行对比(非few-shot)。

结果如上图所示。

  • 结果表明,训练开始前,先只对鉴别器进行简单的训练可以提升性能。作者假设,鉴别器的初始同步帮助聚焦于区分真假猫的特征,而不是区分猫狗的特征。
  • 对于精调的情况,使用CLIP映射器生成的图像进行训练可能会减少多样性,从而影响之后的自适应。
  • 如上图所示,当使用只预训练生成器的方案时,MineGAN有更好的性能。这可能是因为它设法确定高质量猫图所在的隐区域,然后让网络的attention聚焦于该区域。

在确定鉴别器“catch-up”可以提升性能后,作者转而评估自己的预训练模型在额外的域和监督等级上的性能。

结果如上图所示。所有实验都采用了catch-up。

几乎所有的情况,使用作者zero-shot预训练都有更好的性能,有些情况,性能提升了40%;

这些结果表明作者的方法有助于在使用few-shot前减少域差异,从而使提升性能。

D. Beyond StyleGAN

除了StyleGAN,作者探索StyleGAN-NADA的能力:使用OASIS(一种类SPADE的模型,基于segmentation mask合成图像),以一种更局部的方式对现有的类别进行转换。在该设置中,使用在COCO-stuff数据集上预训练的模型,并把模型的一种类别转换为新类别,该类别与源类别有相同的外形,但是它们的细节不同。为此,作者使用了相同的训练与训练loss(见论文正文),并进行了两个更改:

  • 第一,在把生成图像传给CLIP之前,mask所有未指定的区域。因此,只使用希望改变的类别区域进行CLIP空间指引的计算
  • 第二,最小化mask之外所有区域的改变,以及不包含指定类别的所有图像。

然后,在源与目标生成器输出的所有mask区域之间使用L2和LPIPS loss。定性结果如上图所示。结果表明,本文的框架可以轻松的应用到其他生成式模型上。在这种情况,StyleGAN-NADA不是专门的StyleGAN工具,而是不使用数据就能训练生成式模型的一般框架。

E. 身份信息保留(Identity Preservation)

作者给出额外的例子表明StyleGAN-NADA可以在不同域间保留身份信息。

使用合成和真实图像的域自适应结果如上图所示。StyleGAN-NADA在新域中成功地保留了源域的身份信息,甚至适当的转换了配件(例如,帽子,眼睛) 

F. 跨模型插值(Cross-Model interpolation) 

除了支持在新域隐空间的插值和编辑,StyleGAN-NADA还能对两个域之间的模型参数进行插值。这更进一步证明了StyleGAN-NADA隐空间的强耦合。这有益于其它应用,例如,在很多域中生成平滑过渡的图像。上图显示了这种过渡。

G. 更多的样本(Additional samples)

作者合成了大量的图像。

如上两图转自人脸域。 

上图转自教堂域。 

上图转自狗域。 

狗向其他动物的变形。

H. 定性Few-shot对比

作者分别用StyleGAN-NADA和使用AFHQ-Cat样本训练的few-shot模型把狗转换为猫。对比结果如上图所示,StyleGAN-NADA有更好的性能。

作者使用Ojha et al. 的few-shot设置把照片变为素描。结果如上图所示。本文的StyleGAN-NADA性能更好,且保留了更多源域的细节。然而,在这些肖像中,设计一个精确描述目标域风格的文本是困难的。通过使用三个来自目标域的图像(附录C)而不是文本,可以减小风格间的gap,但不能彻底的消除。即使在“相距近”的域间转换,大多数好方法会产生大缺陷,出现巨大的mode collapse,或者只能保留非常少的源域信息。 

I. 训练细节

超参数选择。超参数设置如上图所示。因为训练收敛很快,所以迭代次数可以设置任意的高,然后看模型的即时输出,从而确定模型什么时候能有好的结果。

StyleCLIP 映射器。如Sec.5所研究的,在某些场景,可使用StyleCLIP隐映射器,从而确定与目标域匹配的隐区域。不幸地是,映射器偶尔会在图像上产生不在预期的错误,例如,打开动物的嘴或者拉长舌头。作者发现,该错误与生成图像CLIP空间embedding的范数的增长有关。为解决这个问题,在训练映射器时,通过引入附加的loss来限制这些范数,从而抑制映射器产生这些错误。

其中,\mathop E\nolimits_I是CLIP图像编码器,G 是精调的生成器,w 是采样的隐码字,M 是隐映射器。

J. Licenses and data privacy 

本文使用的模型,训练他们的数据集以及各自的licenses如上两图所示。 

猜你喜欢

转载自blog.csdn.net/qq_44681809/article/details/129472865