Generative Adversarial Nets:GAN

摘要

我们提出了一个通过对抗过程来估计生成模型的新框架,在该框架中,我们同时训练了两个模型:一个捕获数据分布的生成模型G和一个估计样本来自训练的概率的区分模型D数据而不是G。G的训练过程是使D犯错的可能性最大化。该框架对应于minimax两人游戏。在任意函数G和D的空间中,存在唯一的解决方案,其中G恢复训练数据分布,并且D各处都等于1/2。在G和D由多层感知器定义的情况下,整个系统可以通过反向传播进行训练。在训练或样本生成期间,不需要任何马尔可夫链或展开的近似推理网络。实验通过对生成的样本进行定性和定量评估,证明了该框架的潜力。

介绍

深度学习的希望是发现丰富的,层次化的模型,该模型表示人工智能应用中遇到的各种数据的概率分布,例如自然图像,包含语音的音频波形以及自然语言语料库中的符号。到目前为止,深度学习中最显着的成功涉及判别模型,通常是那些将高维,丰富的感官输入映射到班级标签的模型。这些惊人的成功主要是基于反向传播和辍学算法,使用了分段线性单元,它们具有良好的行为梯度。深度生成模型的影响较小,这是由于难以近似最大似然估计和相关策略中出现的许多难处理的概率计算,以及由于难以在生成上下文中利用分段线性单位的优势。我们提出了一种避免这些困难的新的生成模型估计程序。

在提出的对抗网络框架中,生成模型与一个对手相对立:一个判别模型,该模型学习确定样本是来自模型分布还是来自数据分布。生成模型可以被认为类似于一组伪造者,试图生产假币并在未经检测的情况下使用它,而区分模型类似于警察,试图发现伪币。在这场比赛中,竞争促使两支球队都改进自己的方法,直到假冒伪劣品与真品无法区分为止。

该框架可以针对多种模型和优化算法产生特定的训练算法。在本文中,我们探讨了特殊情况,即生成模型通过使随机噪声通过多层感知器来生成样本,而判别模型也是多层感知器。我们将此特殊情况称为对抗网。在这种情况下,我们可以仅使用非常成功的反向传播和dropout算法来训练这两个模型,而仅使用正向传播从生成模型中进行采样。不需要近似推断或马尔可夫链。

相关工作

直到最近,大多数有关深度生成模型的工作都集中在提供概率分布函数的参数规范的模型上。然后可以通过最大化对数似然来训练模型。在这个模型家族中,最成功的也许是深部的玻尔兹曼机器。这样的模型通常具有难解的似然函数,因此需要对似然梯度的许多近似。这些困难促使了“生成机”的发展,这些模型不能明确表示可能性,但能够从所需分布中生成样本。生成随机网络是生成机器的一个示例,可以通过精确的反向传播而不是玻尔兹曼机器所需的大量近似来对其进行训练。通过消除生成随机网络中使用的马尔可夫链,这项工作扩展了生成机器的概念。我们的后向传播如下
在这里插入图片描述

先前的工作还采用了使用判别准则来训练生成模型的方法。这些方法使用的标准对于深度生成模型来说是很难的。这些方法甚至对于深度模型也难以估计,因为它们涉及概率比率,而概率比率无法使用下限概率的变分近似来近似。噪声对比估计(NCE)涉及通过学习权重来训练生成模型,这些权重使该模型可用于区分固定噪声分布中的数据。使用先前训练的模型作为噪声分布可以训练一系列质量不断提高的模型。这可以看作是一种非正式的竞争机制,其精神与对抗网络游戏中使用的正式竞争类似。 NCE的关键局限在于其“判别器”由噪声分布和模型分布的概率密度之比定义,因此需要通过两种密度进行评估和反向传播的能力

先前的一些工作使用了让两个神经网络竞争的一般概念。最相关的工作是最小化可预测性[26]。在最小化可预测性方面,神经网络中的每个隐藏单元都经过训练,使其不同于第二个网络的输出,而第二个网络的输出会根据所有其他隐藏单元的值来预测该隐藏单元的值。这项工作与可预测性最小化的三个重要方面不同:

  1. 在这项工作中,网络之间的竞争是唯一的训练标准,并且足以单独训练网络。可预测性最小化只是一个正则化器,它鼓励神经网络的隐藏单元在完成其他任务时在统计上独立。这不是主要的培训标准。
  2. 比赛的性质是不同的。在最小化可预测性方面,比较了两个网络的输出,其中一个网络试图使输出相似,而另一个网络试图使输出不同。有问题的输出是单个标量。在GAN中,一个网络会生成一个丰富的高维向量,用作另一个网络的输入,并尝试选择另一个网络不知道如何处理的输入
  3. 学习过程的规范不同。可预测性最小化被描述为目标函数要最小化的优化问题,学习接近目标函数的最小值。 GAN是基于最小极大博弈而不是优化问题,并且具有一种价值函数,一个代理商试图最大化,而另一个代理商试图最小化。游戏在一个鞍点处终止,该鞍点对于一个玩家的策略而言是最小值,对于另一个玩家的策略而言是最大值

生成对抗网络有时与“对抗示例”的相关概念相混淆。对抗性示例是通过直接在分类网络的输入上使用基于梯度的优化找到的示例,以便查找与尚未分类的数据相似的示例。这与当前的工作不同,因为对抗性示例不是训练生成模型的机制。相反,对抗性示例主要是一种分析工具,用于显示神经网络以有趣的方式运行,通常以高置信度自信地将两个图像分类为不同的图像,即使人类观察者无法察觉它们之间的差异。此类对抗性示例的存在确实表明,生成式对抗性网络训练可能是低效的,因为它们表明,有可能使现代的判别网络自信地识别某个类别,而无需模仿该类别的任何人类可感知的属性。

对抗网络

当模型都是多层感知器时,对抗建模框架最容易应用。为了了解发生器在数据x上的分布pg,我们在输入噪声变量pz(z)上定义了先验,然后将到数据空间的映射表示为G(z;θg),其中G是由多层感知器表示的微分函数,其中参数θg。我们还定义了第二个多层感知器D(x;θd),它输出一个标量。 D(x)表示x来自数据而不是pg的概率。我们训练D来最大化为G训练样本和样本分配正确标签的可能性。我们同时训练G来最小化log(1-D(G(z)))。换句话说,D和G玩以下具有值函数V(G,D)的两人minimax游戏:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在实践中,我们必须使用迭代的数值方法来实现游戏。在训练的内部循环中将D优化到完成是计算上的问题,在有限的数据集上会导致过度拟合。取而代之的是,我们在优化D的k个步骤和优化G的一个步骤之间交替进行。只要G的变化足够缓慢,就可以使D保持在其最佳解附近。该过程在算法1中正式提出。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在实践中,等式1可能无法为G提供足够的梯度来学习。在学习的早期,当G较差时,D可以以高置信度拒绝样本,因为它们明显不同于训练数据。在这种情况下,使log(1-D(G(z)))饱和。与其训练G以使log(1-D(G(z)))最小,我们可以训练G以使log(D(G(z)))最大化。该目标函数导致G和D动力学的相同固定点,但在学习早期就提供了更强的梯度。

在这里插入图片描述

理论结果

我们将在第4.1节中显示,此minimax游戏具有pg = pdata的全局最优值。

在这里插入图片描述

优缺点

与以前的建模框架相比,此新框架具有优点和缺点。缺点主要是没有明确表示pg(x),并且在训练过程中D必须与G很好地同步(特别是,在不更新D的情况下G不能训练太多,以避免出现“ Helvetica场景” (其中G将太多的z值折叠为相同的x值,以至于没有足够的多样性来对pdata进行建模),就像必须在学习步骤之间使Boltzmann机器的负链保持最新一样。优点是不再需要马尔可夫链,仅使用backprop即可获得梯度,在学习过程中无需进行推理,并且可以将多种功能集成到模型中。表2总结了生成对抗网络与其他生成建模方法的比较。前述优点主要是计算上的。对抗性模型还可以从发电机网络中获得一些统计上的优势,而不是直接用数据样本更新发电机网络,而仅用流经鉴别器的梯度进行更新。这意味着输入的组成部分不会直接复制到生成器的参数中。对抗网络的另一个优点是它们可以表现出非常尖锐的分布,甚至是简并的分布,而基于马尔可夫链的方法要求分布有些模糊,以便链能够在模式之间进行混合。
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值