生成对抗网络的开放性问题
根据某些指标,生成对抗网络(GANs)的研究在过去两年取得了实质性进展。图像合成模型的实用改进几乎快到无法跟上节奏。然而,从其他指标来看,进展较少。例如,关于如何评估GANs仍存在广泛分歧。鉴于当前图像合成基准似乎有些饱和,现在正是反思该子领域研究目标的好时机。
开放问题列表曾帮助过其他领域。本文提出了我们期待其他研究人员解决的开放研究问题。我们也相信撰写本文澄清了我们对GANs的思考,并鼓励其他研究人员为其子领域撰写类似文章。
问题1:GANs与其他生成模型之间的权衡是什么?
除了GANs,目前流行的还有两类生成模型:流模型(Flow Models)和自回归模型(Autoregressive Models)。流模型对先验样本应用一系列可逆变换,以便计算观测值的精确对数似然。自回归模型将观测分布分解为条件分布,并一次处理一个观测组件(对于图像,可能一次处理一个像素)。
近期研究表明这些模型具有不同的性能特征和权衡。准确描述这些权衡并判断它们是否模型家族固有的,是一个有趣的开放问题。
具体来说,流模型允许精确的对数似然计算和推断,因此如果训练流模型和GANs的计算成本相同,GANs可能无用。但训练流模型和GANs之间存在显著计算成本差距。例如,GLOW模型使用40个GPU训练2周和约2亿参数生成256x256名人面孔,而渐进式GANs在类似人脸数据集上使用8个GPU训练4天和约4600万参数生成1024x1024图像。粗略来说,流模型多用了17倍GPU天和4倍参数生成像素少16倍的图像。
流模型效率较低的可能原因:最大似然训练可能比对抗训练计算更困难;归一化流可能是表示某些函数的低效方式。
自回归模型可表示为不可并行化的流模型(因为两者都可逆)。自回归模型比流模型更时间和参数高效。因此,GANs并行且高效但不可逆,流模型可逆且并行但低效,自回归模型可逆且高效但不并行。
问题1:GANs与其他生成模型之间的基本权衡是什么?特别是,我们能否关于可逆性、并行性和参数/时间效率做出某种CAP定理类陈述?
问题2:GANs能建模哪些类型的分布?
大多数GAN研究专注于图像合成。人们在一小部分标准图像数据集上训练GANs:MNIST、CIFAR-10、STL-10、CelebA和ImageNet。有关于哪些数据集“最容易”建模的民间说法。例如,MNIST和CelebA由于“极其规则”被认为比ImageNet、CIFAR-10或STL-10更容易。其他人指出“类别数量多是ImageNet合成对GANs困难的原因”。
这些观察得到了经验事实的支持:CelebA上的最先进图像合成模型生成的图像似乎比ImageNet上的最先进模型明显更令人信服。然而,我们不得不通过尝试在越来越大和复杂的数据集上训练GANs的繁琐和嘈杂过程来得出这些结论。
问题2:给定一个分布,我们能说明GAN建模该分布的难度如何?
相关子问题:什么是“建模分布”?我们对低支持表示满意,还是想要真正的密度模型?是否有GAN永远无法学会建模的分布?是否有原则上GAN可学习但无法高效学习的分布?这些问题的答案对GANs是否与其他生成模型不同?
建议策略:使用合成数据集研究影响可学习性的特征;修改现有理论结果以考虑数据集的不同属性。
问题3:如何将GANs扩展到图像合成之外?
除了图像到图像翻译和领域自适应等应用,大多数GAN成功都在图像合成中。在图像之外使用GANs的尝试集中在三个领域:
- 文本:文本的离散性质使得应用GANs困难。有两种方法解决此困难:让GAN仅作用于离散数据的连续表示;使用实际离散模型并尝试通过梯度估计训练GAN。但据我们所知,没有方法在困惑度方面与基于似然的语言模型竞争。
- 结构化数据:如图形等非欧几里得结构化数据。这类数据的研究称为几何深度学习。GANs在此成功有限,但其他深度学习技术也是如此,因此很难判断GAN方面的重要性。
- 音频:GANs最接近在图像领域所享成功的领域。首次将GANs应用于无监督音频合成的严肃尝试做出了各种特殊考虑。更近期的工作表明GANs甚至可以在某些感知指标上超越自回归模型。
尽管有这些尝试,图像显然是GANs最容易的领域。
问题3:如何使GANs在非图像数据上表现良好?将GANs扩展到其他领域是否需要新的训练技术,还是仅需要每个领域更好的隐式先验?
问题4:关于GAN训练的全局收敛我们能说什么?
训练GANs不同于训练其他神经网络,因为我们同时优化生成器和判别器的对立目标。在某些严格假设下,这种同时优化是局部渐近稳定的。不幸的是,很难证明关于完全一般情况的有趣事情。
问题4:我们何时能证明GANs是全局收敛的?哪些神经网络收敛结果可应用于GANs?
现有三种技术:简化假设;应用分析正常神经网络的技术;使用博弈论概念建模GAN训练。
问题5:如何评估GANs以及何时使用它们?
在评估GANs方面,有许多建议但共识很少。建议包括:Inception Score和FID(两者都使用预训练图像分类器并有已知问题);MS-SSIM(提议用于单独评估多样性);AIS(提议在GAN输出上放置高斯观测模型并使用退火重要抽样估计该模型下的对数似然);Geometry Score(建议计算生成数据流形的几何属性并与真实数据比较);Precision and Recall(尝试测量GANs的“精度”和“召回率”);Skill Rating(显示训练过的GAN判别器可包含有用信息)。
问题5:我们何时应使用GANs而不是其他生成模型?在这些背景下我们应如何评估性能?
GANs可能不适合需要实际密度模型的任务。有良好实验证据表明GANs学习目标数据集的“低支持”表示,这意味着测试集中可能有大量部分GAN(隐式)分配零似然。我们认为将GAN研究聚焦于这没问题甚至有帮助的任务是合理的。GANs可能非常适合具有感知风味的任务,如图像合成、图像翻译、图像修复和属性操作等图形应用。
在这些感知任务上如何评估GANs?理想情况下,我们会使用人类判断,但这昂贵。廉价代理是查看分类器是否能区分真实和伪造示例。这称为分类器双样本测试(C2STs)。C2STs的主要问题是如果生成器有即使跨样本系统的微小缺陷,这将主导评估。
问题6:GAN训练如何随批量大小缩放?
大批量有助于扩大图像分类规模——它们也能帮助我们扩大GANs规模吗?大批量对于有效使用高度并行硬件加速器可能特别重要。乍一看,答案应该是肯定的——毕竟,大多数GANs中的判别器只是图像分类器。如果训练受梯度噪声瓶颈,更大批次可以加速训练。然而,GANs有一个分类器没有的单独瓶颈:训练过程可能发散。
问题6:GAN训练如何随批量大小缩放?梯度噪声在GAN训练中扮演多大角色?能否修改GAN训练以更好地随批量大小缩放?
有证据表明增加小批量大小改善定量结果并减少训练时间。如果这种现象稳健,它将表明梯度噪声是主导因素。然而,这尚未系统研究,因此我们相信这个问题仍然开放。
替代训练程序能否更好地利用大批量?最优传输GANs理论上比正常GANs有更好的收敛属性,但需要大批量,因为它们尝试对齐样本和训练数据批次。因此,它们似乎是扩展到非常大批量大小的有希望候选。
最后,异步SGD可能是利用新硬件的良好替代。在此设置中,限制因素往往是梯度更新是在参数“过时”副本上计算的。但GANs似乎实际上受益于在过去参数快照上训练,因此我们可能问异步SGD是否以特殊方式与GAN训练交互。
问题7:GANs与对抗样本之间有什么关系?
众所周知图像分类器遭受对抗样本:人类不可察觉的扰动,当添加到图像时导致分类器给出错误输出。现在也知道有通常可以高效学习但指数难稳健学习的分类问题。
由于GAN判别器是图像分类器,人们可能担心它遭受对抗样本。尽管有大量关于GANs和对抗样本的文献,但似乎没有多少工作研究它们如何相关。
问题7:判别器的对抗鲁棒性如何影响GAN训练?
考虑固定判别器D。D的对抗样本将存在,如果有生成器样本G(z)正确分类为伪造和小扰动p使得G(z) + p分类为真实。对于GAN,担忧是生成器的梯度更新将产生新生成器G’ where G’(z) = G(z) + p。
这种担忧现实吗?研究表明对生成模型的故意攻击可以工作,但我们更担心可能称为“意外攻击”的东西。有理由相信这些意外攻击不太可能。首先,生成器只允许进行一次梯度更新,然后判别器再次更新。相反,当前对抗攻击通常运行数十次迭代。其次,生成器在先验样本批次上优化,该批次每个梯度步骤都不同。最后,优化发生在生成器参数空间而不是像素空间。然而,这些论点都没有 decisive 排除生成器创建对抗样本。我们认为这是进一步探索的富有成果主题。
致谢
我们要感谢Colin Raffel、Ben Poole、Eric Jang、Dustin Tran、Alex Kurakin、David Berthelot、Aurko Roy、Ian Goodfellow和Matt Hoffman的有益讨论和反馈。我们特别要单独感谢Chris Olah,他对文本提供了实质性反馈并帮助编辑。