Conditional image synthesis with auxiliary classifier GANs

Conditional image synthesis with auxiliary classifier GANs

本文介绍了一种新的图像合成生成对抗网络(gan)改进训练方法。我们使用标签条件作用构建了GANs的一个变体,结果在128 × 128分辨率的图像样本中显示出全局一致性。我们扩展了以往的图像质量评估工作,提供了两种新的分析方法来评估分类条件图像合成模型中的样本的可辨别性和多样性。

这些分析表明,高分辨率样本提供了低分辨率样本中不存在的类信息。在1000个ImageNet类中,128 × 128个样本的识别率是人工调整大小的32 × 32样本的两倍多。此外,84.7%的班级样本显示出可与真实相媲美的多样性ImageNet数据

1. Introduction

图1所示。在ImageNet数据集上训练AC-GAN,得到5类128 × 128分辨率的样本。请注意,所显示的类是为了突出模型的成功而选择的,它们并不具有代表性。文本后面将链接所有ImageNet类的示例。

在这项工作中,我们证明了在GAN潜伏空间中加入更多的结构以及专门的成本函数会产生更高质量的样本。我们展示了来自ImageNet数据集(Russakovsky等人,2015)所有类别的128×128像素的样本,并增加了global coherence(图1)。重要的是,我们从数量上证明了我们的高分辨率样本不只是低分辨率样本的天真调整。特别是,将我们的128×128的样本缩小到32×32,导致视觉辨别力下降50%。我们还引入了一个新的度量来评估图像样本之间的可变性,并使用这个度量来证明我们合成的图像与ImageNet中很大一部分(84.7%)类的训练数据相比具有多样性。更详细地说,这项工作首先是:

  • 在128x128的空间分辨率下(或任何空间分辨率–见第3节),为所有1000个ImageNet类别展示一个图像合成模型。

  • 衡量一个图像合成模型实际使用其输出分辨率的程度(4.1节)。

  • 用一个快速、易于计算的指标来衡量GAN中的感知变异性和 "塌陷 "行为(第4.2节)。

  • 强调大量的类是导致ImageNet合成对GANs困难的原因,并提供一个明确的解决方案(4.6节)。

  • 通过实验证明,在知觉上表现良好的GAN不是那些记忆少量例子的GAN(第4.3节)。

  • 在不使用(Salimans等人,2016)的任何技术的情况下,在CIFAR-10上进行训练时,实现了SOTA Inception score的技术状态(第4.4节)。

3. AC-GANs

我们提出一个GAN架构的变种,我们称之为辅助分类器GAN(或AC-GAN)。在ACGAN中,每一个生成的样本都有一个相应的类标签, c ∼ p c c∼p_c cpc,此外还有噪声z。鉴别器给出了来源的概率分布和类标签的概率分布, P ( S ∣ X ) , P ( C ∣ X ) = D ( X ) P(S | X), P(C | X) = D(X) P(SX),P(CX)=D(X)。目标函数有两部分:正确来源的对数可能性, L S L_S LS,和正确类别的对数可能性, L C L_C LC

在这里插入图片描述

D被训练为最大化 L S + L C L_S+L_C LS+LC,而G被训练为最大化 L C − L S L_C-L_S LCLS。AC-GANs学习一个独立于类标签的z的表示(例如(Kingma等人,2014))。

从结构上看,这个模型与现有的模型没有巨大的区别。然而,对标准GAN公式的这种修改产生了很好的结果,并且似乎稳定了训练。此外,我们认为ACGAN模型只是这项工作技术贡献的一部分,还有我们提出的测量模型利用其给定输出分辨率的程度的方法,测量模型样本的感知变异性的方法,以及对一个从所有1000个ImageNet类别中创建128×128样本的图像生成模型的全面实验分析。

从结构上看,这个模型与现有的模型没有巨大的区别。然而,对标准GAN公式的这种修改产生了很好的结果,并且似乎稳定了训练。此外,我们认为ACGAN模型只是这项工作技术贡献的一部分,还有我们提出的测量模型利用其给定输出分辨率的程度的方法,测量模型样本的perceptual variability的方法,以及对一个从所有1000个ImageNet类别中创建128×128样本的图像生成模型的全面实验分析。

ageNet类别中创建128×128样本的图像生成模型的全面实验分析。

早期的实验表明,在保持模型不变的情况下增加训练类的数量会降低模型输出的质量。AC-GAN模型的结构允许将大数据集按类划分为子集,并为每个子集训练一个生成器和判别器。所有ImageNet实验都是使用100个ac - gan的集合进行的,每个集合都经过10类分割的训练

Guess you like

Origin blog.csdn.net/weixin_37958272/article/details/119818627