2014年good fellow提出GANs论文译本

对抗式生成网络

摘要
通过对抗过程,我们提出了一个估计生成模型的新的框架,在新的框架中,我们同时训练两个模型:捕获数据分布的生成模型G,和估计样本来自训练数据而不是生成器G的概率的判别模型D。G的训练过程是使D犯错误的概率最大化。这个框架相当于最小化最大的双人博弈。在任意函数G和D的空间中,存在唯一解,其中,G恢复训练数据分布,D处处都是1/2。在G和D由多层感知机定义的情况下,整体系统可以用反向传播训练。在训练或者生成模型期间,不需要任何的马尔科夫链或者展开近似推理网络。实验通过对生成样本的定性和定量评估来展示框架的潜力。

一、介绍
深度学习的任务是发现丰富的层次模型,表达在人工智能领域中各种数据的概率分布,比如自然图像、语音的音频波形和自然语言语料库的符号。到目前为止,深度学习中最显著的成功之一的框架是判别模型。通常他们将高维丰富的感知器输入映射到类标签上。这些成功主要基于反向传播和丢弃算法实现的,特别是具有良好梯度的分段线性单元。由于极大似然估计和相关策略中出现难以解决的概率计算的困难以及很难利用在生成上下文中使用分段线性单元的好处,深度生成模型的影响很小。所以,我们提出了一个新的生成估计模型,分步处理这些困难。

提到的对抗式网络框架中,生成模型对应着一个对手:学习判别样本是来自模型分布还是数据分布的判别模型。生成模型可以被认为是一个造假团队,他们试图制造假币而且在不被发现的情况下使用它,而判别模型被看作是警察,试图检测假币。游戏中的两个竞争者改进他们的方法直到真假难辨。

这个框架针对各类模型和优化算法可以提供特定的训练算法。在这篇论文中,我们探讨了将生成模型通过随机噪声传输到多层感知机生成样本的特例,同时样判别模型也是由多层感知机实现的。我们称这个特例为对抗网络。在这个例子中,我们可以使用非常成熟的反向传播和丢弃算法训练两个模型,生成模型训练样本是仅使用前向传播算法。不需要马尔科夫链和近似推理。

二、相关工作
含隐变量的有向图模型可以由含隐变量的无向图模型替代,例如受限制波兹曼机(RBM),深度波兹曼机(DBM)和它们很多的变种。这些模型之间的相互影响可以被表达为非标准化的势函数的乘积,再通过随机变量的所有状态的全局整合来标准化。这个数量(配分函数)和它的梯度的估算是很棘手的,除了简单的事情,尽管他们能够依靠马尔可夫链和蒙特卡罗(MCMC)算法来估计。混合对于以来MCMC的学习算法是一个重要的问题。

深度信念网络(DBN)是一个包含一个无向层和若干有向层的混合模型。当使用一个快速逐层训练法则时,DBNs会引发无向模型和有向模型相关的计算难题。

不接近或限制对数似然的替代标准已经被提出来了,例如分数匹配和噪音对比估计(NCE)。他们都需要学习概率密度用来分析指定达到归一化常量。请注意,许多有趣的带有一些隐层变量的生成模型(如DBN和DBM),它们甚至不可能导出易处理的非标准化概率密度。一些模型如自动编码降噪机和收缩自动编码器的学习准则与分数匹配在RBM上的应用非常相似。在NCE中,使用一个判别训练准则来拟合一个生成模型。然而,生成模型常常被用来判别从一个固定噪音分布中判别生成的数据,而不是拟合一个独立的判别模型。
由于NCE使用一个固定的噪音分布,仅仅是从观测变量的一个小子集中学习到一个近似正确的分布后,模型的学习速度急剧下降。

最后,一些技术并没有用来明确定义概率分布,而是训练一个生成器从期望的分布中拟合出样本。这个方法优势在于这些机器学习算法能够被设计成使用反向传播算法训练。这个领域最近比较突出的工作包含生成随机网络框架(GSN),它扩展了广义的降噪自动编码器:都可以看作是定义了一个参数化的马尔可夫链,即一个通过执行生成马尔科夫链的一个步骤来学习机器参数的算法。同GSNs相比,对抗网络框架不需要使用马尔可夫链来采样。因为对抗网络在生成时不需要循环反馈信息,它们可以更好的利用分段线性单元,可以提高反向传播的效率,在使用反馈回路时,存在,无限激活的问题。大部分利用反向传播算法来训练生成器的例子包括变分贝叶斯自动编码和随机反向传播.

三、对抗网络
当模型是多层感知器时,对抗模型框架是最直接应用的。为了学习生成器关于数据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)的极小化极大的二人博弈问题:

在下一部分中,我们提出了对抗网络的理论分析,基本上表明基于训练准则可以恢复数据生成分布,因为G和D被给予足够的容量,即在非参数极限。如图1展示了该方法的一个非正式却更加直观的解释。实际上,我们必须使用迭代数值方法来实现这个过程。在训练的内部循环中优化D为了完成计算是禁止的,并且在有限的数据集上将导致过拟合。相反,我们在优化D的k个步骤和优化G的一个步骤之间交替。只要G变化足够慢,使D保持在其最佳解附近。该过程如算法1所示。这个策略类似于SML / PCD [31,29]训练的方式,从一个学习步骤到下一个学习步骤训练保持马尔可夫链的样本,以避免作为学习内循环的一部分在马尔可夫链中收敛。

实际上,方程1可能无法为G提供足够的梯度来学习。训练初期,当G的生成效果很差时,D会以高自信度来拒绝生成样本,因为它们与训练数据明显不同。因此,log(1−D(G(z)))饱和。因此我们选择最大化logD(G(z))而不是最小化log(1−D(G(z)))来训练G,该目标函数使G和D的动力学稳定点相同,并且在训练初期,该目标函数可以提供更强大的梯度。

图1.训练对抗的生成网络时,同时更新判别分布(D,蓝色虚线)使D能区分样本来自数据生成分布px(黑色虚线)还是来自生成分布pg (G,绿色实线) 。下面的水平线为均匀采样z的区域,上面的水平线为x的部分区域。朝上的箭头显示映射x=G(z)如何将非均匀分布pg作用在转换后的样本上。G在pg高密度区域收缩,且在pg的低密度区域扩散。(a)考虑一个接近收敛的对抗的模型对:pg与pdata相似,且D是个部分准确的分类器。(b)算法的内循环中,训练D被训练来判别数据中的样本,收敛到:D∗(x)=pdata(x)/pdata(x)+pg(x)。(c)在G的1次更新后,D的梯度引导G(z)流向更可能分类为数据的区域。(d)训练若干步后,如果G和D能力足够,它们接近某个稳定点并都无法继续提高性能,因为此时pg=pdata。判别器将无法区分训练数据分布和生成数据分布,即D(x)=1/2。

四、理论结果
当z∼pz时,产生器G隐式的定义概率分布pg为G(z)获得的样本的分布。因此,如果模型容量和训练时间足够大时,我们希望算法1收敛为pdata的一个良好的估计量。本节的结果是在非参数设置下完成的。我们通过研究概率密度函数空间中的收敛来表示具有无限容量的模型。

我们将在4.1节中展示,这个极小化极大问题的全局最优解为pg=pdata。我们将在4.2节中展示使用算法1来优化等式1,从而获得期望的结果。

算法一:生成对抗网络的minibatch随机梯度下降训练。判别器的训练步数,k,是一个超参数。在我们的试验中使用k=1,使消耗最小。

for number of training iterations do(对于训练的迭代次数)
for k steps do(共K步)
在噪声先验概率分布为pg(z)中抽取M个样本
在数据生成分布为pdata(x)中抽取M个样本
通过随机梯度上升更新判别器

end for(结束)
在噪声先验概率分布为pg(z)中抽取M个样本
通过随机梯度下降更新判别器

end for(结束)
基于梯度的更新可以使用任何标准的基于梯度的学习准则。我们在实验中使用了动量准则。

4.1全局最优:pg=pdata
首先任意给生成器G,我们要考虑最优判别器D
命题一:固定G,最优判别器D为:

证明:给定任意生成器G,判别器D的训练标准为最大化目标函数V(G,D)

对于任意的(a,b)∈R2{0,0},函数y→alog(y)+blog(1−y)在[0,1]中的a/a+b处达到最大值。无需在Supp(pdata)∪Supp(pg)外定义判别器,证毕。
注意到,判别器D的训练目标可以看作为条件概率P(Y=y|x)的最大似然估计,当y=1时,x来自于pdata;当y=0时,x来自pg。公式1中的极小化极大问题可以变形为:

定理一:当且仅当pg=pdata时,C(G)达到虚拟训练标准的全局最小。此时,C(G)的值为−log4。
证明:pg=pdata时,D*G(x)=1/2(公式2)。再根据公式4可得,C(G)=log1/2+log1/2=−log4。为了看当pg=pdata时,C(G)是否是最优的,观测:Ex∼pdata[−log2]+Ex∼pg[−log2]=−log4
然后从C(G)=V(D*G,G)减去上式,可得:

其中KL为Kullback-Leibler散度,也称相对熵。我们在之前的表达式中识别出了模型的判别和数据生成过程之间的Jensen-Shannon散度:

由于两个分布之间的Jensen-Shannon散度总是非负的,并且当两个分布相等时,值为0。因此C∗=−log(4)为C(G)的全局极小值,并且唯一解为pg=pdata,即生成模型能够完美的复制数据的生成过程。

4.2算法1的收敛性
命题二:如果G和D有足够的性能,对于算法1中的每一步,给定G时,判别器能够达到它的最优,并且通过更新pg来提高这个判别准则。则pg收敛为pdata。

证明:如上述准则,考虑V(G,D)=U(pg,D)为关于pg的函数。注意到U(pg,D)关于pg的凸函数。该凸函数上确界的二次导数包括达到最大值处的该函数的导数。换句话说,如果f(x)=supα∈A fα(x),且对于每一个α,fα(x) 是凸函数,那么如果β=argsupα∈Afα(x),则∂fβ(x)∈∂f。这等价于给定对应的G和最优的D,计算pg的梯度下降更新。如定理1所证明,supDU(pg,D)是关于pg的凸函数且有唯一的全局最优解,因此,当pg的更新足够小时,pg收敛到px,证毕。

实际上,对抗网络通过函数G(z;θg)表示pg分布的有限族,并且我们优化θg而不是pg本身。使用一个多层感知机来定义G在参数空间引入了多个临界点。然而,尽管缺乏理论证明,但在实际中多层感知机的良好表现能表明了这是一个合理的模型。

五、理论结果
我们在一系列数据集上,包括MNIST、多伦多人脸数据库(TFD)和CIFAR-10,来训练对抗网络。生成器网络的激活函数包括修正线性激活(ReLU)和sigmoid激活的混合,而判别器使用maxout激活。Dropout被用于判别器网络的训练。虽然理论框架可以在生成器的中间层使用Dropout和其他噪声,但是这里仅在生成网络的最底层使用噪声输入。

我们通过对G生成的样本应用高斯Parzen窗口并计算此分布下的似然对数,来估计测试集数据关于pg的概率。高斯的σ参数是通过对验证集的交叉验证获得的。Breuleux等人引入该过程且用于不同的不能确定准确的可能性的生成模型上。结果报告在表1中。该方法估计似然的方差较大且在高维空间中表现不好,但确实目前是我们认为最好的方法。生成模型的进展是可抽样但不能估计可能性,从而直接推动了如何评估这些模型的进一步研究。

表1.基于Parzen窗口的对数似然估计。MNIST上报告的数字是测试集上样本的平均对数似然以及在样本上平均计算的标准误差。在TFD上,我们计算数据集的不同折之间的标准误差,在每个折的验证集上选择不同的σ。在TFD上,在每一个折上对σ进行交叉验证并计算平均对数似然函数。对于MNIST,我们与真实值(而不是二进制)版本的数据集的其他模型进行比较

训练后的生成样本如下图2、图3所示。虽然我们没有声明该方法生成的样本比其它方法生成的样本更好,但我们相信这些样本至少和文献中更好的生成模型相比依然有竞争力,也突出了对抗框架的潜力。

图2。来自模型样本的可视化。最右边的列展示出了相邻样本的最近的训练示例,用来证明该模型没有记住训练集。样品是完全随机抽取出来的,而不是精心挑选的。与其他大多数的深度生成模型的可视化不一样,这些图像显示来自模型分布的实际样本,而不是给定隐藏单元样本的条件均值。此外,这些样本是不相关的,因为,采样过程不依赖马尔科夫链混合。a) MNIST;b) TFD;c) CIFAR-10(全连接模型);d) CIFAR-10(卷积判别器和“解卷积”生成器)

图3.通过在完整模型的z空间的坐标之间进行线性插值获得的数字。
表2.生成建模中的挑战:对涉及模型的每个主要操作的深度生成模型的不同方法遇到的困难的总结。

六、优缺点
新框架和以前的模型框架相比存在优缺点。缺点主要为pg(x)的表示不明确,且训练期间,D和G必须很好地同步(尤其,不更新D时,G不必过度训练,为避免“Helvetica情景”,否则,x值相同时G丢失过多z值以至于模型pdata多样性不足),正如玻尔兹曼机器的负链在学习步期间必须不断更新。其优点是不需要马尔科夫链,仅用反向传播来获得梯度,学习间不需要推理,多种函数可以融入到一个模型中。表2总结了生成对抗网络与其他生成模型方法的比较。

上述优势主要在计算上。对抗模型也可能从生成网络而不是直接用数据例子更新来获得一些统计优势,而只是通过鉴别器中流动的梯度。这意味输入部分未直接复制进生成器的参数。对抗的网络的另一优点是它可以表示很尖,甚至退化的分布,而基于马尔科夫链的方法要求有些模糊的分布以便为了链可以在模式之间进行混合。

七、结论和未来研究方向
该框架允许许多直接的扩展:
1.条件生成模型p(x|c)可以通过将c作为G和D的输入来获得。
2.给定x,可以通过训练一个辅助的网络来学习近似推理,达到预测z的目的。这和wake-sleep算法训练出的推理网络类似,但是它具有一个优势,就是在生成器训练完成后,这个推理网络可以针对固定的生成器进行训练。
3.可以通过训练共享参数的条件模型族来近似地对所有条件概率p(xS |x/S)进行建模,其中S是x下标的子集。本质上,可以使用敌对网络来实现确定性MP-DBM的随机扩展。
4.半监督学习:当有限的标签数据可用时,来自鉴别器或推理网络的特征可以改善分类器的性能。
5.改善效率:通过为协调G和D设计更好的方法,或在训练期间确定更好的分布来采样z,能够极大的加速训练。

本文已经展示了对抗模型框架的可行性,表明这些研究方向是有用的。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值