- 1.Introduction
- 背景:因为传统的辨别模型能够利用反向传播函数和退出算法(backpropagation and dropout algorithms)获得较好的结果。但对于生成模型来说在最大似然估计和相关策略中难以逼近许多棘手的概率计算,以及在生成上下文中难以利用分段线性单元的好处。简单来说就是因为训练辨别模型是可以产生良好的梯度对模型进行修正,但生成模型由于概率计算的复杂性使得训练效果很差。
- 文章简介:该对抗网络为一个判别模型和一个生成模型。判别模型判断一个对象是否存在于数据集,生产模型生成一个无法被检测出来的数据。竞争促使两模型改进他们的方法,直到赝品与真正的物品无法区分。在本文中,我们探讨了生成模型通过一个多层感知器传递随机噪声来生成样本的特殊情况,并且该判别模型也是一个多层感知器。我们把这种特殊情况称为对抗性网。这种情况下,我们可以只使用非常成功的反向传播和退出算法来训练这两个模型,并且只使用正向传播从生成模型中提取样本。不需要近似的推理或马尔可夫链。
- 补充:
- GAN的思路是先固定前者(标准高斯分布)作为网络输入,再慢慢调整网络输出去匹配后者(复杂样本分布)。
- Adversarial Autoencoder(对抗自编码器)却采取了相反的思路!它是先固定后者(复杂样本分布)作为网络输入,再慢慢调整网络输出去匹配前者(标准高斯分布)。Adversarial Autoencoder的编码器将原始输入转变为标准高斯分布,解码器将标准高斯分布重构原始输入,判别器判断是否为标准高斯,有判别思路但与GAN不同。
- InfoGAN主要是能从样本重构中选取指定重构维度,这有机会观察到有些维度具有非常显著的语义信息。
- PM主要是通过原始数据提取之后进行解耦,获得高质量的特征,而在预测端进行对抗网络使得每一个维度特征去逼近真实特征,其重点在于相互解耦。因此GAN是生成器和判别器在假数据生成的对抗(侧重于真假数据混合来生成数据),而PM是编码器和预测器在假特征的对抗(侧重于特征间无关性来生成特征)。
- 2.Related Work
- deep Boltzmann machine-深度玻尔兹曼机
- 通过构造模型去估计函数分布,同时通过最大似然函数来进行模型训练。
- 缺点:似然函数通常比较复杂,需要大量近似运算
- Generative stochastic networks
- 通过反向传播训练,来消除马尔科夫链以及很多运算上的近似操作。公式是生成一个满足正态分布的噪声在x处的平均梯度期望从而获得x处梯度。
- VAE
- 该方向后续进行补充
- NCE
- 使用预先训练模型来产生噪声,主要使用固定噪声来训练生成模型,相比GAN没那么正式。NCE的关键限制是它的“鉴别器”是由噪声分布的概率密度和模型分布的比值来定义的,因此需要通过这两种密度进行评估和反向传播的能力。
- predictability minimization
- PM 模型通过极小极大策略训练一个编码器,从而得到高质量的中间表征,该表征是可以生成为对应样本。而 GAN 看起来正好相反,它根据随机的中间表征,学习一个能生成真实样本的编码器。PM 模型使用基于梯度的极小极大策略学习数据的编码器,从而使中间表征与数据的分布保持一致。而 GAN 却使用基于梯度的极小极大策略直接学习给定中间表征的解码器。因此,PM 模型编码器的输入类似于 GAN 解码器的输出,PM 模型编码器的输出类似于 GAN 解码器的输入。
- 1.在这项工作中,网络之间的竞争是唯一的训练标准,并且它本身就足以训练网络。可预测性最小化只是一种正则化器,它鼓励神经网络的隐藏单元在完成其他任务时在统计上独立;这不是一个主要的训练标准。
- 2.竞争的性质有所不同。在可预测性最小化过程中,需要比较两个网络的输出,一个网络试图使输出相似,另一个网络试图使两个输出不同。问题中的输出是一个单个标量。在GANs中,一个网络产生一个丰富的、高维的向量,用作对另一个网络的输入,并试图使另一个网络不知道如何处理这个输入。
- 3.可预测性最小化被描述为一个有一个目标函数要被最小化的优化问题,并且学习接近于目标函数的最小值。GANs是基于极大极小博弈而不是优化问题,并且有一个值函数,一个代理寻求最大化,另一个代理寻求最小化。游戏终止于鞍点,一个玩家的策略最小值,另一个玩家的策略最大值。
- adversarial examples
- 简单看了下,应该是通过构造相似的特征,使得一些完全不能被人类观测的异同被计算机观测,从而给出有悖于人类直觉的观测结果。
- deep Boltzmann machine-深度玻尔兹曼机
- 3.Adversarial nets
- 辨别器将尽可能地将真数据x与随机噪声z生成的假数据G(Z)分辨出来。minmax的意义是两个对象交互 固定与最值化 的操作,即D不变时G要使V下降,G不变时D要使V上升。因此需要循环反复训练G和V两个模型。由此的结果就是使得x与g(z)分布一致。注:之前我一直疑惑当生成器去拟合同一个真实数据的话会出现问题,这种情况p(x,y)/p(x)=p(y|x)会出现改点为0,其他区域为1的情况。In the space of arbitrary functions G and D, a unique solution exists, with G recovering the training data distribution and D equal to 1/2 everywhere. GAN的重点在于p(y|x)利用神经网络训练为1/2,即通过x无法分辨y的真假,此时假y便成了真y。注2:既然分布一致,为什么GAN会出现与原图相似却不同的图片?数据集的大小和神经网络的结果约束了判别能力,以及一些激活函数的近似能力。
- 该公式目前版本可能导致梯度为0的情况出现,而且收敛可能比较困难。
- 4.Theoretical Results
- 4.1 Global Optimality of pg = pdata
- 主要是证明(1)式的驼点就是pg = pdata,即生成数据与原始数据分布一致,主要是数学证明,包括KL散度。
- 此处主要是将g(z)换算为x,由于对应关系,z的分布对应着x的分布。
- 4.2 Convergence of Algorithm 1
- 主要是说明(1)式为凸函数,所以存在极值点可以收敛。
- 4.1 Global Optimality of pg = pdata
整理一下GAN模型的论文笔记
最新推荐文章于 2024-08-22 23:35:53 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)