Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks精读

在这里插入图片描述

图1:给定任意两个无序的图像集合X和Y,我们的算法可以学习自动将图像从其中一个“转换”为另一个,反之亦然。应用实例(底部):利用一位著名艺术家的画作集合,学习将用户的照片渲染成他们的风格。

1.摘要

图像到图像的转换是一类视觉和图形问题,其目标是使用一组配准的图像对的训练集来学习输入图像与输出图像之间的映射。然而,对于许多任务而言,成对的训练数据可能无法获得。我们提出了一种方法,能够在没有配对样本的情况下学习将图像从源域X转换到目标域Y的映射。我们的目标是通过对抗性损失来学习一个映射G:X → Y,使得从G(X)生成的图像的分布与Y的分布难以区分。由于这种映射具有高度的不确定性,我们将其与一个逆向映射F:Y → X结合,并引入循环一致性损失来推动F(G(X)) ≈ X(反之亦然)。在多个没有成对训练数据的任务中,包括风格迁移、对象变形、季节转换、照片增强等,我们展示了定性结果。与多个先前方法的定量比较表明,我们的方法具有更优的表现。

2.引言

1873年春天的一个美好日子,克劳德·莫奈在塞纳河畔阿让特伊附近支起画架,他看到了什么呢(图1,左上角)?如果当时已经发明了彩色摄影,也许会记录下一片湛蓝的天空以及映照着天空的平静河面。莫奈则通过轻盈的笔触和明亮的色彩传达了他对这同一场景的印象。如果莫奈在一个凉爽的夏日傍晚偶然来到卡西斯的小港口(图1,左下角),他又会如何描绘这个场景呢?在莫奈的画廊中稍微漫步一番,就不难想象他会如何呈现:也许是用淡彩色调,带有突兀的色块,并且动态范围略显平淡。

尽管我们从未见过莫奈的画作与他所描绘的场景的照片并排放在一起,我们依然可以想象这一切。这是因为我们对莫奈画作的集合以及风景照片的集合都有所了解。我们能够推断出这两个集合之间的风格差异,从而想象如果我们将一个场景“翻译”成另一个集合中的作品,它可能会是什么样子。
在这里插入图片描述

图2配对训练数据(左侧)包括训练样本 { x i , y i } i = 1 N \{x_i, y_i\}_{i=1}^N {xi,yi}i=1N,其中每个 x i x_i xi 对应的 y i y_i yi 是已知的 [20]。我们考虑的是未配对训练数据(右侧),包括源集合 { x i } i = 1 N ∈ X \{x_i\}_{i=1}^N \in X {xi}i=1NX 和目标集合 { y j } j = 1 M ∈ Y \{y_j\}_{j=1}^M \in Y {yj}j=1MY,但没有提供哪一个 x i x_i xi 与哪一个 y j y_j yj 匹配的信息。

在本文中,我们提出了一种系统,可以学习做同样的事情:捕捉一个图像集合的特殊特征,并找出这些特征如何转换为另一个图像集合,所有这些都在没有配对训练示例的情况下进行。

这个问题可以更广泛地描述为图像到图像的转换 [20],将图像从一个表示的场景 x x x 转换为另一个 y y y,例如,从灰度图像到彩色图像、从图像到语义标签、从边缘图到照片。多年的计算机视觉、图像处理和图形学研究已经在监督设置下产生了强大的翻译系统,其中有示例图像对 { x , y } \{x, y\} {x,y} 可用(图2,左侧),例如 [9, 17, 20, 21, 24, 29, 41, 52, 54, 57]。然而,获得配对训练数据可能既困难又昂贵。例如,像语义分割这样的任务仅有少量数据集(例如 [4]),并且它们相对较小。获取像艺术风格化这样的图形任务的输入输出对可能更加困难,因为所需的输出高度复杂,通常需要艺术创作。对于许多任务,如对象转化(例如,斑马→马,图1顶部中间),所需的输出甚至定义不明确。

因此,我们寻求一种算法,能够在没有配对输入输出示例的情况下进行领域间转换(图2,右侧)。我们假设领域之间存在某种潜在的关系——例如,它们是同一世界的两种不同渲染——并试图学习这种关系。尽管我们缺乏配对示例形式的监督,但我们可以利用集合级别的监督:我们得到一个领域 X X X 中的图像集合和一个不同领域 Y Y Y 中的图像集合。我们可以训练一个映射 G : X → Y G: X \rightarrow Y G:XY,使得输出 y ^ = G ( x ) \hat{y} = G(x) y^=G(x),其中 x ∈ X x \in X xX,对抗性地难以区分图像 y ∈ Y y \in Y yY y ^ \hat{y} y^。理论上,这个目标可以使 y ^ \hat{y} y^ 的输出分布匹配经验分布 p Y ( y ) p_Y(y) pY(y)(一般来说,这要求 G G G 是随机的)[14]。因此,最优的 G G G 将领域 X X X 翻译到一个与 Y Y Y 分布完全相同的领域 Y ^ \hat{Y} Y^。然而,这样的翻译并不能保证个别输入和输出 x x x y y y 以有意义的方式配对——有无限多的映射 G G G 会导致相同的 y ^ \hat{y} y^ 分布。此外,在实践中,我们发现单独优化对抗目标非常困难:标准程序往往导致众所周知的模式崩溃问题,即所有输入图像都映射到相同的输出图像,优化无法取得进展 [13]。

这些问题要求我们为目标添加更多结构。因此,我们利用翻译应该是“循环一致”的属性,即如果我们将一句话从英语翻译成法语,然后再从法语翻译回英语,我们应该能够回到原来的句子 [3]。数学上,如果我们有一个翻译器 G : X → Y G: X \rightarrow Y G:XY 和另一个翻译器 F : Y → X F: Y \rightarrow X F:YX,那么 G G G F F F 应该是彼此的逆,并且两个映射应该是双射。我们通过同时训练映射 G G G F F F,并添加一个循环一致性损失 [60] 来应用这一结构假设,该损失鼓励 F ( G ( x ) ) ≈ x F(G(x)) \approx x F(G(x))x G ( F ( y ) ) ≈ y G(F(y)) \approx y G(F(y))y。将此损失与对抗损失结合在领域 X X X Y Y Y 上,得到我们针对未配对图像到图像翻译的完整目标。

我们将我们的方法应用于广泛的应用,包括风格迁移、对象转化、属性转移和照片增强。我们还与依赖于手工定义的风格和内容因子分解或共享嵌入函数的先前方法进行比较,表明我们的方法优于这些基线。我们的代码可在 https://github.com/junyanz/CycleGAN 获得。完整论文请访问 https://arxiv.org/abs/1703.10593。

2.相关工作

生成对抗网络(GANs)[14, 58] 在图像生成 [5, 35]、图像编辑 [61] 和表示学习 [35, 39, 33] 中取得了令人印象深刻的成果。最近的方法将相同的思想应用于条件图像生成任务,如文本到图像 [36]、图像修复 [34] 和未来预测 [32],以及其他领域如视频 [50] 和 3D 模型 [53]。GANs 成功的关键在于对抗性损失的理念,该损失迫使生成的图像在原则上与真实图像不可区分。这对于图像生成任务特别有效,因为这正是计算机图形学中大多数优化的目标。我们采用对抗性损失来学习映射,使得翻译后的图像不能被区分于目标领域中的图像。

图像到图像翻译的概念至少可以追溯到 Hertzmann 等人的《图像类比》 [17],他们在单个输入-输出训练图像对上使用了非参数纹理模型 [8]。更多…
在这里插入图片描述

图3(a) 我们的模型包含两个映射函数 G : X → Y G: X \rightarrow Y G:XY F : Y → X F: Y \rightarrow X F:YX,以及相关的对抗性判别器 D Y D_Y DY D X D_X DX D Y D_Y DY 鼓励 G G G X X X 转换为与领域 Y Y Y 不可区分的输出,而 D X D_X DX F F F X X X 则相反。为了进一步规范化这些映射,我们引入了两个“循环一致性损失”,这些损失捕捉了这样一个直觉:如果我们从一个领域翻译到另一个领域再返回,我们应该回到我们开始的地方:(b) 前向循环一致性损失: x → G ( x ) → F ( G ( x ) ) ≈ x x \rightarrow G(x) \rightarrow F(G(x)) \approx x xG(x)F(G(x))x,以及 © 反向循环一致性损失: y → F ( y ) → G ( F ( y ) ) ≈ y y \rightarrow F(y) \rightarrow G(F(y)) \approx y yF(y)G(F(y))y

最近的方法使用输入-输出示例的数据集,通过卷积神经网络(CNNs)学习一个参数化的翻译函数,例如 [29]。我们的方法基于 Isola 等人 [20] 的“pix2pix”框架,该框架使用条件生成对抗网络 [14] 来学习从输入到输出图像的映射。类似的思想已经应用于各种任务,如从草图生成照片 [40] 或从属性和语义布局生成图像 [22]。然而,与这些先前的工作不同,我们在没有配对训练示例的情况下学习映射。

无配对图像到图像翻译 一些其他方法也处理无配对的设置,其中目标是关联两个数据领域 X X X Y Y Y。Rosales 等人 [37] 提出了一个贝叶斯框架,该框架包括一个基于源图像计算的基于补丁的马尔可夫随机场的先验和一个从多个风格图像中获得的似然项。最近,CoupledGANs [28] 和跨模态场景网络 [1] 使用权重共享策略来学习跨领域的共同表示。与我们的方法同时,Liu 等人 [27] 扩展了这个框架,结合了变分自编码器 [23] 和生成对抗网络。另一条并行工作 [42, 45, 2] 鼓励输入和输出共享某些“内容”特征,即使它们在“风格”上可能有所不同。他们也使用对抗性网络,并加入额外的项来强制输出在预定义的度量空间中接近输入,例如类标签空间 [2]、图像像素空间 [42] 和图像特征空间 [45]。

与上述方法不同,我们的公式不依赖于输入和输出之间的任何特定任务的预定义相似性函数,也不假设输入和输出必须位于相同的低维嵌入空间。这使得我们的方法成为许多视觉和图形任务的通用解决方案。我们在第5.1节中直接与几种先前的方法进行比较。与我们工作同时进行的 Yi 等人 [55] 在这些会议中独立引入了一个类似的无配对图像到图像翻译目标,灵感来自机器翻译中的双重学习 [15]。

循环一致性 使用传递性作为规范化结构化数据的一种方式有着悠久的历史。在视觉跟踪中,强制执行简单的前向-后向一致性几十年来一直是一个标准技巧 [44]。在语言领域,通过“反向翻译和调解”来验证和改进翻译是人类翻译人员使用的技术 [3](幽默地,包括马克·吐温 [47]),机器也使用这种技术 [15]。最近,更高阶的循环一致性已被用于运动结构 [56]、3D 形状匹配 [19]、共同分割 [51]、密集语义对齐 [59, 60] 和深度估计 [12]。其中,Zhou 等人 [60] 和 Godard 等人 [12] 与我们的工作最为相似,因为他们使用循环一致性损失作为使用传递性来监督 CNN 训练的方式。在这项工作中,我们引入了一个类似的损失,推动 G G G F F F 彼此保持一致。

神经风格迁移 [11, 21, 48, 10] 是另一种执行图像到图像翻译的方法,它通过匹配预训练深度特征的 Gram 矩阵统计,将一个图像的内容与另一个图像(通常是画作)的风格结合起来,从而合成出新图像。另一方面,我们的主要关注点是学习两个领域之间的映射,而不是两个特定图像之间的映射,试图捕捉更高层次的外观结构之间的对应关系。因此,我们的方法可以应用于其他任务,如绘画 → 照片、对象变换等,其中单样本迁移方法表现不佳。我们在第5.2节中比较了这两种方法。

3. 公式化

我们的目标是学习两个领域 X X X Y Y Y 之间的映射函数,给定训练样本 { x i } i = 1 N ∈ X \{x_i\}_{i=1}^N \in X {xi}i=1NX { y j } j = 1 M ∈ Y \{y_j\}_{j=1}^M \in Y {yj}j=1MY。如图3(a)所示,我们的模型包括两个映射 G : X → Y G: X \rightarrow Y G:XY F : Y → X F: Y \rightarrow X F:YX。此外,我们引入了两个对抗性判别器 D X D_X DX D Y D_Y DY,其中 D X D_X DX 旨在区分图像 { x } \{x\} {x} 和翻译后的图像 { F ( y ) } \{F(y)\} {F(y)};同样, D Y D_Y DY 旨在区分 { y } \{y\} {y} { G ( x ) } \{G(x)\} {G(x)}。我们的目标包含两类项:对抗性损失 [14] 用于使生成图像的分布与目标领域的数据分布匹配;以及循环一致性损失,用于防止学习到的映射 G G G F F F 彼此矛盾。

3.1 对抗性损失

我们将对抗性损失 [14] 应用于两个映射函数。对于映射函数 G : X → Y G: X \rightarrow Y G:XY 和其判别器 D Y D_Y DY,我们将目标表达为:

L G A N ( G , D Y , X , Y ) = E y ∼ p d a t a ( y ) [ log ⁡ D Y ( y ) ] + E x ∼ p d a t a ( x ) [ log ⁡ ( 1 − D Y ( G ( x ) ) ) ] L_{GAN}(G, D_Y, X, Y) = \mathbb{E}_{y \sim p_{data}(y)} [\log D_Y(y)] + \mathbb{E}_{x \sim p_{data}(x)} [\log (1 - D_Y(G(x)))] LGAN(G,DY,X,Y)=Eypdata(y)[logDY(y)]+Expdata(x)[log(1DY(G(x)))]

其中, G G G 试图生成与领域 Y Y Y 的图像相似的图像 G ( x ) G(x) G(x),而 D Y D_Y DY 旨在区分翻译后的样本 G ( x ) G(x) G(x) 和真实样本 y y y。我们也为映射函数 F : Y → X F: Y \rightarrow X F:YX 及其判别器 D X D_X DX 引入类似的对抗性损失,即 L G A N ( F , D X , Y , X ) L_{GAN}(F, D_X, Y, X) LGAN(F,DX,Y,X)

3.2 循环一致性损失

理论上,对抗性训练可以学习到使输出与目标领域 Y Y Y X X X 的分布相同的映射 G G G F F F(严格来说,这要求 G G G F F F 是随机函数)[13]。然而,当网络容量足够大时,它可以将同一组输入图像映射到目标领域的任何随机排列,其中任何学习到的映射都可以诱导出与目标分布匹配的输出分布。为了进一步减少可能的映射函数的空间,我们认为学习到的映射函数应该是循环一致的:如图3(b)所示,对于领域 X X X 中的每个图像 x x x,图像翻译循环应该能够将 x x x 恢复到原始图像,即 x → G ( x ) → F ( G ( x ) ) ≈ x x \rightarrow G(x) \rightarrow F(G(x)) \approx x xG(x)F(G(x))x。我们称之为前向循环一致性。类似地,如图3(c)所示,对于领域 Y Y Y 中的每个图像 y y y G G G F F F 也应满足反向循环一致性: y → F ( y ) → G ( F ( y ) ) ≈ y y \rightarrow F(y) \rightarrow G(F(y)) \approx y yF(y)G(F(y))y

我们可以通过循环一致性损失来激励这种行为:

L c y c ( G , F ) = E x ∼ p d a t a ( x ) [ ∥ F ( G ( x ) ) − x ∥ 1 ] + E y ∼ p d a t a ( y ) [ ∥ G ( F ( y ) ) − y ∥ 1 ] L_{cyc}(G, F) = \mathbb{E}_{x \sim p_{data}(x)} [\|F(G(x)) - x\|_1] + \mathbb{E}_{y \sim p_{data}(y)} [\|G(F(y)) - y\|_1] Lcyc(G,F)=Expdata(x)[F(G(x))x1]+Eypdata(y)[G(F(y))y1]

在初步实验中,我们也尝试用 F ( G ( x ) ) F(G(x)) F(G(x)) x x x 之间的对抗性损失,以及 G ( F ( y ) ) G(F(y)) G(F(y)) y y y 之间的对抗性损失来替代这个损失中的 L 1 L_1 L1 范数,但没有观察到性能的改进。通过循环一致性损失诱导的行为可以在 arXiv 版本中观察到。

3.3 完整目标

我们的完整目标是:

L ( G , F , D X , D Y ) = L G A N ( G , D Y , X , Y ) + L G A N ( F , D X , Y , X ) + λ L c y c ( G , F ) L(G, F, D_X, D_Y) = L_{GAN}(G, D_Y, X, Y) + L_{GAN}(F, D_X, Y, X) + \lambda L_{cyc}(G, F) L(G,F,DX,DY)=LGAN(G,DY,X,Y)+LGAN(F,DX,Y,X)+λLcyc(G,F)

其中 λ \lambda λ 控制两个目标的相对重要性。我们旨在求解:

G ∗ , F ∗ = arg ⁡ min ⁡ G , F max ⁡ D X , D Y L ( G , F , D X , D Y ) . G^*, F^* = \arg \min_{G, F} \max_{D_X, D_Y} L(G, F, D_X, D_Y). G,F=argG,FminDX,DYmaxL(G,F,DX,DY).

注意,我们的模型可以被视为训练两个“自编码器” [18]:我们学习一个自编码器 F ∘ G : X → X F \circ G: X \rightarrow X FG:XX,同时学习另一个 G ∘ F : Y → Y G \circ F: Y \rightarrow Y GF:YY。然而,这些自编码器各自具有特殊的内部结构:它们通过一个将图像转换为另一个领域的中间表示来将图像映射回自身。这种设置也可以被视为“对抗自编码器” [30] 的一个特例,后者使用对抗性损失来训练自编码器的瓶颈层,以匹配任意目标分布。在我们的情况下, X → X X \rightarrow X XX 自编码器的目标分布是领域 Y Y Y 的分布。在第5.1.3节中,我们将我们的方法与完整目标的不同版本进行比较,并通过实验证明两个目标在获得高质量结果中都发挥了关键作用。

4. 实现

网络架构 我们从Johnson等 [21] 的工作中调整了生成网络的架构,该工作在神经风格迁移和超分辨率方面展示了令人印象深刻的结果。该网络包含两个步幅为2的卷积层、若干残差块 [16] 和两个步幅为1/2的卷积层。与Johnson等 [21] 类似,我们使用实例归一化 [49]。对于判别网络,我们使用70×70的PatchGAN [20, 26, 25],它旨在分类70 × 70的重叠图像块是否为真实或虚假。这种基于图像块的判别器架构具有比全图判别器更少的参数,并且可以以完全卷积的方式应用于任意大小的图像 [20]。

训练细节 我们采用了最近工作中的两种技术来稳定我们的模型训练过程。首先,对于 L G A N L_{GAN} LGAN(方程1),我们将负对数似然目标替换为最小二乘损失 [31]。该损失在训练过程中表现得更为稳定,并生成更高质量的结果。方程1变为:

L L S G A N ( G , D Y , X , Y ) = E y ∼ p d a t a ( y ) [ ( D Y ( y ) − 1 ) 2 ] + E x ∼ p d a t a ( x ) [ D Y ( G ( x ) ) 2 ] ( 5 ) L_{LSGAN}(G, D_Y, X, Y) = \mathbb{E}_{y \sim p_{data}(y)} [(D_Y(y) - 1)^2] + \mathbb{E}_{x \sim p_{data}(x)} [D_Y(G(x))^2] (5) LLSGAN(G,DY,X,Y)=Eypdata(y)[(DY(y)1)2]+Expdata(x)[DY(G(x))2]5

其次,为了减少模型的波动 [13],我们遵循Shrivastava等 [42] 的策略,使用生成图像的历史记录来更新判别器 D X D_X DX D Y D_Y DY,而不是最新生成网络产生的图像。我们保持一个图像缓冲区,存储50张之前生成的图像。有关数据集、架构和训练程序的更多细节,请参阅我们的 arXiv 论文。
在这里插入图片描述

图4: 不同的标签到照片的映射方法,在Cityscapes数据集上训练。从左到右:输入,BiGAN/ALI [6, 7],CoGAN [28],CycleGAN(我们的方法),pix2pix [20](基于配对数据训练),以及真实图像。
在这里插入图片描述

图5: 不同的航空照片与地图的映射方法,在Google Maps上训练。从左到右:输入,BiGAN/ALI [6, 7],CoGAN [28],CycleGAN(我们的方法),pix2pix [20](基于配对数据训练),以及真实图像。

5. Results

我们首先将我们的方法与最近的无配对图像到图像翻译方法进行比较,这些方法在配对数据集上进行了评估,其中提供了真实的输入输出对。然后,我们研究了对抗损失和循环一致性损失的重要性,并将我们的方法与几种变体进行比较。最后,我们展示了我们算法的通用性,应用于没有配对数据的广泛任务。为了简洁起见,我们将我们的方法称为CycleGAN。

5.1. Evaluation

使用与“pix2pix”[20]相同的评估数据集和指标,我们从定性和定量两个方面比较了我们的方法与几种基线方法。我们还对完整的损失函数进行了消融研究。

5.1.1 Baselines

CoGAN [28]
该方法为域X和域Y分别学习一个GAN生成器,在前几层中共享权重以获得共享的潜在表示。通过找到生成图像X的潜在表示,然后将该潜在表示渲染为风格Y,可以实现从X到Y的翻译。

Pixel loss + GAN [42]
类似于我们的方法,Shrivastava等[42]使用对抗损失来训练从X到Y的翻译。正则化项 $ |X - \hat{Y}|_1 $ 用于惩罚在像素级别上进行大幅度更改。

Feature loss + GAN
我们还测试了[42]的一个变体,其中L1损失是通过预训练网络(VGG-16 relu4_2 [43])计算的深度图像特征,而不是通过像素值。

在这里插入图片描述

表3: 不同方法在Cityscapes数据集上将照片转换为标签的分类性能。

5.1.2 与基准方法的比较

正如图4和图5所示,我们在任何基准方法中都未能获得令人满意的结果。相比之下,我们的方法能够产生与完全监督的pix2pix相当的翻译结果。我们在图中排除了“像素损失+GAN”和“特征损失+GAN”,因为这两种方法未能产生接近目标领域的结果(完整结果可在 CycleGAN项目页面 查看)。

此外,我们的方法与基准方法在三个方面进行了定量比较。首先,我们在Amazon Mechanical Turk(AMT)上进行“真实与伪造”研究,以评估感知真实度[20]。其次,我们训练了照片→标签任务,以评估各方法的性能。
在这里插入图片描述

图6: 我们的方法在城市景观数据集上训练的标签↔照片映射的不同变体。从左到右:输入,单独的循环一致性损失,单独的对抗损失,GAN + 前向循环一致性损失 ( F ( G ( x ) ) ≈ x F(G(x)) \approx x F(G(x))x),GAN + 反向循环一致性损失 ( G ( F ( y ) ) ≈ y G(F(y)) \approx y G(F(y))y),CycleGAN(我们的方法),和真实标签。只有循环一致性损失和GAN + 反向循环未能生成类似目标领域的图像。仅使用GAN和GAN + 前向循环一致性损失则存在模式崩溃,生成的标签图无论输入照片如何都相同。

5. 结果

我们首先将我们的方法与近期的无配对图像到图像翻译方法进行比较,使用配对数据集进行评估,在这些数据集中可以获得真实的输入-输出对。然后,我们研究对抗损失和循环一致性损失的相对重要性,并将我们的方法与几个变体进行比较。最后,我们展示了我们的算法在配对数据不存在的广泛应用中的通用性。为了简洁起见,我们将我们的方法称为CycleGAN。

5.1. 评估

使用与“pix2pix” [20] 相同的评估数据集和指标,我们对我们的方法与几种基线进行定性和定量比较。我们还对完整的损失函数进行了消融研究。

5.1.1 基线

  • CoGAN [28]: 该方法为领域 X 和领域 Y 学习一个 GAN 生成器,并在前几层共享权重以表示共享的潜在表示。X 到 Y 的翻译可以通过找到生成图像 X 的潜在表示,然后将这个潜在表示渲染为风格 Y 来实现。

  • Pixel loss + GAN [42]: 与我们的方法类似,Shrivastava 等 [42] 使用对抗损失来训练从 X 到 Y 的翻译。正则化项 $ | X - \hat{Y} |_1 $ 用于惩罚在像素级别上进行大幅度更改。

  • Feature loss + GAN: 我们还测试了 [42] 的一种变体,其中 L1 损失是在通过预训练网络(VGG-16 relu4_2 [43])计算的深层图像特征上计算的,而不是在 RGB 像素值上计算的。

5.1.2 与基线的比较

如图4和图5所示,我们无法通过任何基线方法取得令人信服的结果。我们的方案则能够生成经常与完全监督的 pix2pix 相似质量的翻译结果。我们在图中排除了 pixel loss + GAN 和 feature loss + GAN,因为这两种方法几乎没有产生接近目标领域的结果(完整结果可在 https://junyanz.github.io/CycleGAN/ 查看)。

此外,我们的方法和基线在三种方式上进行了定量比较。首先,我们在亚马逊机械土耳其(AMT)工人上进行“真实与虚假”研究,以评估感知现实性 [20]。其次,我们在 Cityscapes 数据集上训练 photo→label 任务,并使用现成的全卷积语义分割网络 [29] 评估输出照片。我们发现我们的方法在所有三项实验中都显著优于基线。表1报告了AMT感知现实性任务的性能。在这里,我们看到我们的方法在地图→照片方向和照片→地图方向的实验中都能欺骗约四分之一的参与者。所有基线几乎从未能欺骗参与者。表2和表3评估了Cityscapes上标签↔照片任务的性能。在这两种情况下,我们的方法再次优于基线。详细的实验过程和结果可以在我们的arXiv版本中找到。

5.1.3 消融研究

我们对完整损失函数的消融进行了比较。图6 显示了几个定性示例。去掉 GAN 损失会显著降低结果质量,去掉循环一致性损失也是如此。因此,我们得出结论,这两个项对我们的结果至关重要。我们还评估了仅在一个方向上使用循环损失的方法:GAN+前向循环损失 $ \mathbb{E}{x \sim p{data}(x)} [ | F(G(x)) - x |1 ] $ 或 GAN+反向循环损失 $ \mathbb{E}{y \sim p_{data}(y)} [ | G(F(y)) - y |_1 ] $ (方程2),发现这通常会导致训练不稳定并引起模式崩溃,尤其是在被移除的映射方向。我们还定量测量了Cityscapes上照片→标签的消融结果,这些结果可以在我们的arXiv版本中找到。

5.2. 应用

我们展示了我们的方法在多个没有配对训练数据的应用中的表现。我们观察到训练数据上的翻译通常比测试数据上的更具吸引力,所有应用的完整结果可以在我们的项目网站上查看。

  • 对象转化(图7):模型被训练为将 Imagenet [38] 中的一个对象类别翻译到另一个(每个类别包含约1000张训练图像)。Turmukhametov 等 [46] 提出了一个子空间模型,将一个对象转化为相同类别的另一个对象,而我们的方法则专注于在两个视觉上相似的类别之间进行对象转化。

  • 季节转移(图7):模型在 Flickr 上的冬季和夏季 Yosemite 照片上进行训练。

  • 风格转移(图8):我们在从 Flickr 和 WikiArt 下载的风景照片上训练模型。请注意,与近期的“神经风格转移” [11] 工作不同,我们的方法学习模仿整套艺术作品的风格(例如 Van Gogh),而不是转移单一选定艺术品(例如《星夜》)的风格。在图5.2中,我们将我们的结果与 [11] 进行比较。

  • 从画作生成照片(图9):对于画作→照片,我们发现引入额外的损失来鼓励映射保留输入和输出之间的颜色构图是有帮助的。特别是,我们采用了 Taigman 等 [45] 的技术,并在真实样本作为输入提供给生成器时对生成器进行正则化:即 $ L_{identity}(G, F) = \mathbb{E}{y \sim p{data}(y)} [ | G(y) - y |1 ] + \mathbb{E}{x \sim p_{data}(x)} [ | F(x) - x |1 ] $。没有 $ L{identity} $,生成器 G 和 F 在没有必要时可以自由地改变输入图像的色调。例如,当学习 Monet 的画作和 Flickr 照片之间的映射时,生成器经常将白天的画作映射到黄昏时分拍摄的照片,因为这样的映射在对抗损失和循环一致性损失下都是同样有效的。这个身份映射损失的效果可以在我们的 arXiv 论文中找到。

在图9中,我们展示了将 Monet 的画作翻译成照片的额外结果。
在这里插入图片描述

图 7:多个翻译问题的结果。这些图像是相对成功的结果——有关更全面的结果,请访问我们的网站。

在这里插入图片描述

图 8:我们将输入图像转换为不同的艺术风格。请访问我们的网站查看更多示例。

从画作到照片的转换(图9):该图展示了训练集中包含的画作的结果,而在论文中的所有其他实验中,我们仅评估并展示测试集结果。由于训练集不包含配对数据,因此为训练集画作生成合理的翻译是一个非平凡的任务。确实,由于 Monet 已无法创作新的画作,因此对未见过的“测试集”画作的泛化并不是一个紧迫的问题。

照片增强(图7):我们展示了我们的方法可以用于生成景深较浅的照片。我们在从 Flickr 下载的花卉照片上训练模型。源领域包括由智能手机拍摄的花卉照片,这些照片通常由于光圈较小而具有较大的景深。目标照片则是用具有较大光圈的单反相机拍摄的。我们的模型成功地从智能手机拍摄的照片生成了景深较浅的照片。

6. 限制与讨论

尽管我们的方法在许多情况下可以取得令人信服的结果,但结果并非总是 uniformly positive(均匀积极)。图12 显示了一些典型的失败案例。在涉及颜色和纹理变化的翻译任务中,如上面报告的许多任务,方法通常会成功。我们也探索了需要几何变化的任务,但成功率较低。例如,在狗→猫的转化任务中,学习到的翻译退化为对输入进行最小更改(图12)。处理更多样化和极端的变换,尤其是几何变化,仍然是一个挑战。

在这里插入图片描述

图 9:将莫奈的画作映射到照片上的结果。请访问我们的网站查看更多示例。

在这里插入图片描述

图 10:照片增强:将一组 iPhone 快照映射到专业的 DSLR 照片,系统通常会学习生成浅景深。这里展示了我们测试集中一些最成功的结果——总体表现则要差得多。请访问我们的网站查看更全面和随机的示例。

未来工作中的一个重要问题是,一些失败案例是由于训练数据集的分布特征所导致的。例如,图 12 中的“马 → 斑马”任务完全失败,因为我们的模型是基于 ImageNet 中的野马和斑马的同义词集进行训练的,而这些同义词集中不包含骑马或骑斑马的图像。

我们还观察到,配对训练数据和我们未配对方法的结果之间存在持久的差距。在某些情况下,这种差距可能很难,甚至不可能弥合。例如,我们的方法有时会在“照片 → 标签”任务的输出中混淆树和建筑的标签。解决这种模糊性可能需要某种形式的弱语义监督。整合弱监督或半监督数据可能会导致更强大的翻译模型,同时注释成本仍仅为完全监督系统的一小部分。

尽管如此,在许多情况下,完全未配对的数据是丰富的,应该加以利用。本文推动了在这种“无监督”设置下可能性的发展。

在这里插入图片描述

图 11:我们将我们的方法与神经风格传递[11]进行比较。从左到右:输入图像,使用单个代表性图像作为样式图像的结果[11],使用目标域的所有图像的结果[11],以及我们的CycleGAN。
在这里插入图片描述
图 12:我们方法的一些失败案例。

致谢:我们感谢 Aaron Hertzmann、Shiry Ginosar、Deepak Pathak、Bryan Russell、Eli Shechtman、Richard Zhang 和 Tinghui Zhou 的许多有益意见。本工作部分得到了 NSF SMA-1514512、NSF IIS-1633310、谷歌研究奖、英特尔公司以及 NVIDIA 的硬件捐赠的支持。JYZ 得到了 Facebook 研究生奖学金的支持,TP 得到了三星奖学金的支持。用于风格传递的照片由 AE 拍摄,主要是在法国。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

诸葛东_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值