We propose a new framework for estimating generative models via an adversarial process, in which we simultaneously train two models: a generative model
that captures the data distribution, and a discriminative model that estimates the probability that a sample came from the training data rather than . The training procedure for is to maximize the probability of making a mistake. This framework corresponds to a minimax two-player game. In the space of arbitrary functions and , a unique solution exists, with recovering the training data distribution and equal to everywhere. In the case where and are defined by multilayer perceptrons, the entire system can be trained with backpropagation. There is no need for any Markov chains or unrolled approximate inference networks during either training or generation of samples. Experiments demonstrate the potential of the framework through qualitative and quantitative evaluation of the generated samples.
我们提出了一个新的框架来通过对抗过程估计生成模型,在该框架中,我们同时训练了两个模型:捕获数据分布的生成模型
深度学习在判别模型取得很多成果,这些成功依赖于反向传播和Dropout,使用分段线性单元。因为最大似然估计及相关策略中出现难解的概率计算,以及难以在生成上下文中利用分段线性单元,深度生成模型的影响比较小。本文提出的生成模型避开了这些问题:通过对抗过程不断提升生成模型与判别模型。
在这种对抗的框架下,本文研究了使用随机噪声通过多层感知机作为生成模型、多层感知机作为判别模型的情况,称之为对抗网络。这种情况下可以利用反向传播与Dropout,只需要前馈过程即可采样出样本,同时不需要近似推断或马尔可夫链。
大多数生成模型关注概率分布函数的参数,可以通过最大似然估计来计算,其中最成功的是深度玻尔兹曼机。这些模型通常有着难解的似然函数,需要对似然梯度进行数值估计。这些困难激发了不需要表示似然而是直接生成分布的生成机的研究。生成随机网络可以通过反向传播来计算。本文的工作则消去了生成随机网络中的马尔可夫链。
通过
计算生成过程的导数。
Kingma and Welling,Rezende et al. 提出了通用的随机反向传播的规则,允许人们通过具有有限方差的高斯分布进行反向传播,并反向传播至协方差参数和均值。通过这些规则可以学习生成器的条件方差。Kingma and Welling,Rezende et al. 使用随机反向传播训练了变分自动编码器。类似与GAN,VAE 将可微分的生成器网络与第二个神经网络配对,不过VAE的第二个网络是执行近似推理的识别模型。GAN需要对可见单元的微分,因此无法对离散数据建模,而VAE需要隐藏单元的微分,因此不能具有离散的隐变量。
之前也有利用判别准则训练生成模型的例子,但对深度生成模型而言这些准则难以计算。由于使用了概率的比值,也很难估计深度模型,因为概率之比不能使用降低概率的变分估计。噪声对比估计也有局限性。
也有一些使用两个神经网络进行竞争的工作,如可预测性最小化。GAN与可预测性最小化也有很多不同。
生成器产生的数据分布为
下面需要分析这样的训练准则可以产生足以恢复数据的
在学习的早期,
考虑对任意给定生成器
假设生成模型有足够的表现能力使得
还可以证明,如果
实践中通过优化
In recent years, supervised learning with convolutional networks (CNNs) has seen huge adoption in computer vision applications. Comparatively, unsupervised learning with CNNs has received less attention. In this work we hope to help bridge the gap between the success of CNNs for supervised learning and unsupervised learning. We introduce a class of CNNs called deep convolutional generative adversarial networks (DCGANs), that have certain architectural constraints, and demonstrate that they are a strong candidate for unsupervised learning. Training on various image datasets, we show convincing evidence that our deep convolutional adversarial pair learns a hierarchy of representations from object parts to scenes in both the generator and discriminator. Additionally, we use the learned features for novel tasks - demonstrating their applicability as general image representations.
介绍DCGAN,适合进行无监督学习。实验表明,深度卷积对抗对从目标中学习到了层次表示。学习到的特征可以用于图像表示。
从无标签数据中学习特征表示有待研究。训练GAN可以得到好的图像表示,生成器和判别器可以作为监督任务的特征提取器。GAN很难训练,会生成无意义图像。对GAN学习到的东西及中间层表示的研究还很少。
本文的贡献有:
以往将CNN引入GAN的尝试不成功。经过一番探索,得到了比较稳定的方法。核心是采用和修改最近对CNN结构的改进。
首先是全卷积,使用跨步卷积代替确定的空间池化,使得网络学习自己的空间降采样。用到了生成器中,学习它自己及判别器的空间降采样。
其次是减少卷积层上的FC层,如SOTA图像分类任务中的全局平均池化。全局平均池化提升了稳定性,降低了收敛速度。直接将最高层的卷积特征连接到生成器的输入和判别器的输出上比较好。GAN的第一层使用噪声作为输入,矩阵相乘后重整型到4维张量,作为卷积的输入。判别器最后的卷积层被展平,输入进sigmoid。
最后是BN。解决了初始化的问题,帮助梯度在更深的网络中流动。对深度生成器很重要,防止其坍缩到一点。应用BN到全部卷积层并不好,生成器的输出层与判别器的输入层并不需要。
生成器使用ReLU激活,不过输出层使用tanh。判别器使用Leaky Rectified 激活。原始GAN使用maxout激活。