生成对抗网络

内容

我们提出了一个新的框架,通过对抗过程来估计生成模型,在这个过程中,我们同时训练两个模型:一个生成模型 G𝐺G 捕捉数据分布,一个判别模型 D𝐷D 估计样本来自训练数据而不是 G𝐺G 的概率。G𝐺G 的训练过程是最大化 D𝐷D 出错的概率。这个框架对应于一个极小极大的双人博弈。在任意函数 G𝐺G 和 D𝐷D 的空间中,存在一个独特的解,其中 G𝐺G 恢复训练数据分布,D𝐷D 在任何地方都等于 1212\frac{1}{2}。在生成模型 G𝐺G 和判别模型 D𝐷D 由多层感知器定义的情况下,整个系统可以通过反向传播进行训练。在训练或生成样本时,不需要任何马尔可夫链或展开的近似推理网络。实验证明了通过对生成样本进行定性和定量评估来展示该框架的潜力。

深度学习的承诺在于发现丰富的、分层的模型,这些模型代表了在人工智能应用中遇到的数据类型的概率分布,例如自然图像、包含语音的音频波形以及自然语言语料库中的符号。到目前为止,在深度学习中最引人注目的成功通常涉及判别模型,通常是将高维、丰富的感官输入映射到类别标签的模型。这些引人注目的成功主要基于反向传播和随机失活算法,使用分段线性单元,这些单元具有特别良好的梯度。深度生成模型的影响较小,这是由于在最大似然估计和相关策略中出现的许多难以处理的概率计算的近似困难,以及在生成环境中难以利用分段线性单元的优势。我们提出了一种新的生成模型估计程序,可以避开这些困难。

在提出的对抗网络框架中,生成模型与对手进行对抗:鉴别模型学习确定样本是来自模型分布还是数据分布。生成模型可以类比为一组造假者,试图制造假币并在不被发现的情况下使用,而鉴别模型类比为警察,试图检测假币。在这场比赛中,双方的竞争推动两队改进他们的方法,直到赝品与真品无法区分。

这个框架可以为许多种模型和优化算法提供特定的训练算法。在本文中,我们探讨了一种特殊情况,即生成模型通过将随机噪声通过多层感知器传递生成样本,而判别模型也是多层感知器。我们将这种特殊情况称为对抗网络。在这种情况下,我们可以仅使用非常成功的反向传播和丢弃算法[17]来训练这两个模型,并且仅使用前向传播从生成模型中采样。不需要近似推断或马尔可夫链。

具有潜变量的无向图模型是有向图模型的替代选择,例如受限玻尔兹曼机(RBMs)27,深度玻尔兹曼机(DBMs)26及其众多变体。这些模型内部的相互作用被表示为未归一化潜势函数的乘积,通过对随机变量的所有状态进行全局求和/积分来归一化。这个数量(分区函数)及其梯度对于除了最简单的情况外都是难以处理的,尽管它们可以通过马尔可夫链蒙特卡洛(MCMC)方法进行估计。对于依赖于MCMC的学习算法来说,混合构成了一个重要问题35

深信念网络(DBNs)是一种混合模型,包含一个无向层和几个有向层。虽然存在一种快速的近似逐层训练准则,但DBNs面临与无向和有向模型相关的计算困难。

还提出了一些不近似或限制对数似然的替代标准,例如得分匹配[18]和噪声对比估计(NCE)[13]。这两种方法都要求学习的概率密度在规范化常数上得到解析指定。需要注意的是,在许多具有多层潜变量的有趣生成模型中(如DBNs和DBMs),甚至无法推导出一个可处理的非规范化概率密度。一些模型,如去噪自动编码器[30]和收缩自动编码器,其学习规则与应用于RBM的得分匹配非常相似。在NCE中,与本文一样,采用了一种区分性训练标准来拟合生成模型。然而,与拟合单独的区分模型不同,生成模型本身用于区分生成的数据和来自固定噪声分布的样本。由于NCE使用固定的噪声分布,一旦模型学习了甚至是对观察变量的一个小子集的近似正确分布后,学习速度会显著减慢。

最后,一些技术并不涉及明确定义概率分布,而是训练生成机器从所需分布中抽样。这种方法的优势在于这样的机器可以设计成通过反向传播进行训练。这一领域的重要最新工作包括生成随机网络(GSN)框架[5],它扩展了广义去噪自动编码器[4]:两者都可以被视为定义参数化马尔可夫链,即学习执行生成马尔可夫链一步的机器的参数。与GSN不同,对抗网络框架不需要用于抽样的马尔可夫链。因为对抗网络在生成过程中不需要反馈循环,它们更能利用分段线性单元[19, 9, 10],这些单元改善了反向传播的性能,但在反馈循环中使用时存在无界激活的问题。最近的训练生成机器的例子包括最近关于自动编码变分贝叶斯[20]和随机反向传播[24]的工作。

对抗建模框架在模型均为多层感知器时最容易应用。为了学习生成器的数据分布pg下标g上的数据𝒙\bm{x},我们在输入噪声变量p𝒛​(𝒛)下标𝑝𝒛𝒛上定义一个先验,然后将映射到数据空间的表示为G(𝒛;θg)𝐺𝒛下标θg,其中G是由参数θg下标θg表示的可微函数,由多层感知器表示。我们还定义了第二个多层感知器D(𝒙;θd)𝐷𝒙下标θd,输出一个标量。D(𝒙)𝐷𝒙D(\bm{x})表示𝒙来自数据而不是pg下标g的概率。我们训练D以最大化为训练示例和来自G的样本分配正确标签的概率。我们同时训练G以最小化log(1-D(G(𝒛))):

换句话说,D和G进行以下的两人零和博弈,其价值函数为V(G,D)。

minG⁡maxD⁡V(D,G)=𝔼𝒙∼pdata(𝒙)[logD(𝒙)]+𝔼𝒛∼p𝒛(𝒛)[log(1−D(G(𝒛)))].subscript𝐺subscript𝐷𝑉𝐷𝐺subscript𝔼similar-to𝒙subscript𝑝data𝒙delimited-[]𝐷𝒙subscript𝔼similar-to𝒛subscript𝑝𝒛𝒛delimited-[]1𝐷𝐺𝒛

总结
该文章提出了一种通过对抗过程估计生成模型的新框架。在这个框架中,同时训练两个模型:一个捕捉数据分布的生成模型G和一个估计样本来自训练数据而不是G的判别模型D。通过最大化D犯错的概率来训练G,形成一个极小极大的双人博弈。在任意函数空间中,存在唯一解,G恢复训练数据分布,D处处等于1/2。该框架不需要马尔可夫链或近似推理网络。实验展示了该框架的潜力。深度学习的目标是发现代表概率分布的丰富、分层模型。迄今为止,深度学习的成功主要基于判别模型,而生成模型的困难在于近似许多难以处理的概率计算。该框架提出了一种新的生成模型估计方法,避开了这些困难。