点击下载论文
摘要
尽管最近在使用StyleGAN进行语义处理方面取得了进展,但真实人脸的语义编辑仍然具有挑战性。W空间和W+空间之间的差距要求在重构质量和编辑质量之间进行权衡。为了解决这个问题,我们建议通过用基于注意力的transformers替换StyleGAN映射网络中的全连接层来扩展潜在空间。这种简单有效的技术将上述两个空间整合起来,并将它们转换为一个新的潜在空间,称为W++。我们改进后的StyleGAN保持了原始StyleGAN的到目前为止最好的生成质量,并具有适度更好的多样性。但更重要的是,所提出的W++空间在重构质量和编辑质量方面都取得了优异的性能。尽管有这些显著的优势,由于其与W/W+空间的结构相似性,我们的W++空间支持现有的反演算法和编辑方法,且只需进行了少量的修改。在FFHQ数据集上的大量实验证明,我们提出的W++空间显然比以前的W/W+空间更适合于真实面部编辑。代码公开在这里,点击查看代码
引言
生成对抗网络(GAN)[1]的巨大成功彻底改变了数据驱动图像生成领域,并引发了重大的研究关注。特别是对于人脸合成,当前最先进的架构StyleGAN[2,3]通过首先将潜在代码映射到逐层样式代码,然后将其送到每个卷积层,生成高分辨率(即1024×1024像素)、照片逼真的图像。通过添加自适应实例归一化(AdaIN)或他的改进技术称为权重解调的,这种样式代码S直接控制各种尺度的图像特征。大量后续工作[4,5,6,7,8]进一步探索了中间潜在空间中表现出的不同属性(粗糙、中等和精细)的分离,以实现语义可控的人脸生成。然而,这种操纵能力并不直接应用到真实人脸上。
为了缓解这一问题,[4、5、9、10、11、12、13]采用了“先反转后编辑”的方法。首先将真实图像投影到StyleGAN的潜在空间中。然后通过在反转的潜码上执行语义上有意义的编辑来获得新的潜码。然而,W空间中的投影潜码不足以准确的复现原始图像。扩展的潜在空间W+已被证明比反演[14]方法更有效。但在W+空间中编辑潜在代码是出了名的不行,因为它们脱离了语义上有意义的特征。相反,W空间中的潜码不受此问题的影响,因此有利于编辑质量。不幸的是,W空间和W+空间之间的这种差异要求在重构精度和操作自然度之间达成妥协。
在本文中,我们对StyleGAN架构进行了简单但至关重要的增强,它扩展了潜在空间的维度,以实现更好的真实面部编辑。我们通过将映射网络M中的全连接层替换为基于注意力的transformer结构[15]来实现这一点。该修改过的映射网络M0将Z空间中的随机输入向量映射到名为W++的新的中间潜在空间。新的W++空间具有与W+空间相同的维度,但其比W空间大得多,因此实现了更精细的重构质量。与W+空间中的潜码不同,所提出的W++空间中的潜码在操作之后不会脱离语义上有意义的特征,因为它们在训练期间直接用于图像合成。因此,我们的W++空间具有更好的编辑质量。此外,我们的增强型StyleGAN保持了原始StyleGAN的最好的性能,并在生成多样性方面有适度的提高。最后,我们提出的W++空间很容易与现有的反演算法和编辑方法一起使用,且只需要进行少量调整。
图6 根据不同潜在空间中的年龄属性操作真实人脸。给定要编辑的真实图像,我们首先使用StyleGAN投射器[3]将其反转回潜在空间,然后使用InterFaceGAN[4,5]操作潜在代码。我们的结果(用红色框高亮显示)对于远距离操纵具有相当强的鲁棒性。
为了证明我们W++空间的卓越兼容性,我们分别应用了几种常用的反演和编辑方法。对于反演任务,我们选择StyleGAN的投射器[3]来表示基于优化的方法,选择pixel2style2pixel(pSp)[16]来表示基于学习的方法。对于编辑任务,我们从单属性操作的InterfaceGAN[4,5]开始。受条件GAN(cGAN)[17]思想的启发,我们提出了一种基于cGAN的真实人脸属性编辑的想法(pipeline这里翻译成思路、思想较好)。与传统的cGAN不同,我们的思路(见图6)是使用预训练模型提取的属性作为条件信息。另一个区别是,我们的判别器在没有任何条件信息的情况下学会区分真和假图像,因此与naive GAN中的判别器一样。
我们的贡献归结如下:
- 我们提出了增强StyleGAN模型即使用基于注意力机制的transformers替换在StyleGAN的映射网络中的全连接层。这种增强保持了最好的生成质量并适度提高了生成多样性。
- 我们提出的潜在空间W++在重构质量和编辑质量方面都取得了较好的性能。
- 我们的新W++空间与现有的反演和编辑算法都具有良好的兼容性。只需要做一些小改动。
2、相关工作
接下来,我们简要介绍一下有关以真实面部编辑为主题的现有文献。“先反转后编辑”方法已成为这一活跃研究领域的实际标准。在第一反转步骤中,将给定图像投影回StyleGAN的潜空间,并且反转的潜码可以通过生成器真实地重构输入图像。然后通过在潜在空间上沿着在语义上有意义的方向改变旧的潜在码来获得新的潜在码。
2.1、GAN反演算法
Xia等人[18]最近的调查提供了对GAN反演算法的详尽概述。现有方法可分为三大类:基于优化的、基于学习的和混合方法。
基于优化的算法迭代地改进潜码来缩小与给定图像之间的误差。原始StyleGANv2[3]使用附加的渐变噪声并提出在W空间中嵌入图像,从而以较差的重构为代价实现更好的编辑。相反,Image2StyleGAN和Image2StyleGAN+[14,9]将图像嵌入到扩展的W+空间中,这有效地优化了每个尺度的单独样式。这种方法为了编辑质量牺牲了重建质量。为了找到更好的平衡,PIE[12]和StyleGAN2Encoder[19]采用了两阶段编码过程,该过程首先将图像嵌入W空间,然后通过在W+空间中优化来细化其初始潜码。
基于学习的方法[20,16,21]旨在训练一个将图像映射到潜在空间的编码器网络。与基于优化的算法相比,基于学习的方法具有计算复杂度低的优点,但重建质量较差。
诸如[10]的混合类型结合了上述两种技术,其中首先使用编码器网络来获得近似潜码,然后通过优化来改进该潜码。
2.2、潜空间操作
由于其近似线性,StyleGAN的潜空间一直是语义操作的主要目标。监督方法在语义注解的监督下查找与给定二进制标记属性(例如年轻与年老)变化对应的线性方向。StyleRig[22]利用预训练的3DMM来找到操纵信息和面部操纵之间的映射关系。StyleFlow[11]通过学习W+空间中不同向量之间的变换来修改一组预定属性。InterfaceGAN[4,5]训练线性支持向量机(SVM)对基于语义标签的潜码进行分类,并使用每个超平面的法向量作为所选属性的潜在方向。
为了以无监督的方式操作属性,GANSpace[6]对采样数据执行PCA操作,以找到潜空间中的主方向。相反,Collins等人[7]使用k均值聚类发现了局部语义和潜码部件之间的联系。最后,SeFa[23]是一种封闭形式的因子分解方法,它计算可解释的方向,而无需任何类型的训练或优化。
2.3、其他空间
最近,与此同时的其他论文[24, 25, 26]提出:通过探索其他空间来解决这个“重建编辑”的难题。
尽管取得了令人满意的权衡,[24]未能消除在两个不同的潜在空间中执行重建和编辑所导致的根本冲突。他们提出的P空间是通过反转StyleGAN映射网络中的最后一个Leaky ReLU层从W空间转换而来的,而P+空间是通过与从W空间扩展到W+空间方式类似的级联操作从P空间扩展的。
与潜在空间不同,[25,26]研究了所有可能的风格向量所跨越的风格空间。然而,正如[26]中所指出的,与W+空间相比,风格空间实现了更差的操纵自然度和更接近的重建。不幸的是,这甚至加剧了我们正在努力解决的问题。
3、方法
3.1、动机
必须牺牲重建质量或编辑质量的根本原因是,这两种操作最适合在两个独立的潜在空间中进行。原始StyleGAN在图像生成期间对所有不同的尺度使用相同的样式向量,这基本上将中间潜在空间W的尺寸限制为1×512。通过遍历W空间,我们可以找到语义上有意义的编辑方向。另一方面,在反转期间,这种限制被解除,这将W+空间的尺寸扩大到k×512(k是样式代码的个数)。这种额外的灵活性允许更可靠的恢复,但也会打乱所有编辑方向。为了解决这一矛盾,我们需要将输入空间Z扩展到维数为k×512,进而扩展中间潜空间W。但我们如何实现这一点?(为了简化和一致性,我们将图像分辨率固定为256×256,因此将k值设置为14,用于以下分析)。
一个简单的解决方案是将映射网络中全连接层的维度从512扩展到7168(等于14×512)。虽然以这种方式让中间潜空间的维度得以连续增加,但计算成本也呈平方增长。全连接层的FLOP估计为512×512。扩展的全连接层的FLOP估计为7168×7168,是原始FLOP的196倍。当k达到18时,它以1024×1024的分辨率增长到324倍。
图2 在训练期间,不同StyleGAN模型在256×256分辨率下的FID评分曲线。具有14个独立映射网络的StyleGAN在迭代250K时达到最佳分数5.97。我们增强的StyleGAN模型在迭代230K时获得了最佳FID分数4.67。
另一种可能的解决方案是为每个层使用单独的映射网络,这避免了上面计算复杂度爆炸的发生。这意味着14个独立的映射网络各自创建了不同的样式向量。由于每个新的映射网络在结构上都与原始映射网络相同,因此这种方法将计算复杂度的增长限制为线性增长。然而,如图2所示,FID指标表明生成质量显著变差。这种退化的主要原因是样式向量之间没有任何相关性。在原始StyleGAN中,通过向合成网络中的所有层投送相同的样式向量,确保了跨尺度的全局特征的一致性。然而,使用完全独立的映射网络来计算样式向量完全禁止了这种相关性。
3.2、W++空间
该问题的理想解决方案应满足以下两个条件:(i)计算成本的有限增长;(ii)风格向量之间的某种程度的相关性。基于注意力的transformer结构[15]自然的满足这两个条件。
图1 (a) 模型总览。虽然原始StyleGAN[3]向每个卷积层提供相同的样式代码,但我们使用Transformer重新设计了StyleGAN映射网络的架构,以便向不同的层提供不同的样式代码。我们说明了分辨率为256×256的结构。(b)我们提出的映射网络的示例。我们省略了一些标准层,这些标准层对我们的体系结构来说是不必要的,以避免混淆说明。
图1(b)详细说明了我们的映射网络。我们遵循transformer的原始设计,具有多头自注意力和简单的位置全连接前馈网络。潜码z从输入潜空间Z中随机采样。除了其尺寸被放大到14×512之外,该Z空间几乎与原始StyleGAN中的对应空间相同。然后,添加一个固定1D位置嵌入以保留每个样式向量的层索引[27]。查询(q)、键(k)和值(v)都来自相同的潜码Z通过单独的线性变换与位置嵌入拼接在一起。根据Karras等人[2]对映射网络深度的消融研究,8是最佳选择。因此,我们通过堆叠8个transformers来实现映射网络。这个网络的输出形成了我们新的潜在空间W++。
计算代价。在我们的例子中,transformer的整体计算复杂度由线性变换而不是相似性计算所控制。每个线性变换以
O
(
k
d
2
)
O(kd^2)
O(kd2)为界。其中维数d为512,样式编码k是14。我们还添加了压缩比c作为减少总计算的技巧,这将复杂性降低到
O
(
k
(
d
c
)
2
)
O(k(\frac{d}{c})^2)
O(k(cd)2);实际上,我们将c的值设置为4。总之,我们的W++空间为映射网络带来了大约五分之一的计算成本增加。然而,考虑到StyleGAN的大部分计算负担都落在合成网络和判别器上,这种扩展对整个模型的影响有限。
样式相关性。相同输入(查询和键)的两个线性变换之间的余弦相似度由自注意模块计算。然后将该相似度矩阵与作为输入的另一线性变换的值相乘。因此,我们的W++空间中的潜码基本上是Z空间中沿k(=14)维度的输入潜码的加权和。所有系数都在训练阶段学习。因此,原始StyleGAN的映射网络是我们的一个特殊情况,其中k维中任意两个元素之间的相关性被严格限制到1之内。使用14个独立的映射网络是在频谱的另一端,因为相关性等于0。根据输入值,我们的相关系数在训练后落在[0,1]内,并且对于不同的对有所不同。
如图1(a)所示,输出潜码沿k维被划分为14个不同的样式代码。每个带有512维的样式编码被投送到不同尺度的合成网络的不同层中。没有对原始styleGAN 架构进行任何更改,以适应所提出的W++空间。
4、实验(略)
5、结论
在这项工作中,我们提出升级StyleGAN架构,将其映射网络替换为8个基于注意力的transformers。此修改将其原始潜在空间转换为称为W++的新的潜在空间。我们的StyleGAN模型保持了目前最好的生成质量,并适度提高了生成多样性。然而,与先前的W或W+空间不同,我们提出的W++空间在重建质量和编辑质量方面都获得了优异的性能。此外,它支持现有的反演算法和编辑方法,只需进行少量调整。在FFHQ数据集上的实验清楚地证明了我们方法的优点。
我们的工作有一些局限性,我们留给未来的工作。尽管我们提出的W++空间通过扩展原始潜空间获得了出色的重建质量,但反转图像看起来仍然与输入的真实图像略有不同。这种差异会对真实图像的编辑质量产生不利影响。今后,我们希望缩小这一差距。