《Improved Techniques for Training GANs》阅读总结

特征匹配:

特征匹配解决了GANs的不稳定性,通过为生成器指定一个新的目标,防止它在当前鉴别器上过度训练。
新的目标不是直接最大化鉴别器的输出,而是要求生成器生成与真实数据的统计相匹配的数据,在这里,
我们只使用鉴别器来指定我们认为值得匹配的统计数据。具体地说,我们训练生成器以匹配鉴别器中间
层上的特性的期望值。这是生成器匹配的统计数据的自然选择,因为通过训练鉴别器,我们要求它找到
那些最能区分真实数据和当前模型生成的数据的特性

让f(x)表示在鉴别器的中间层上的激活,我们的新目标为生成器定义为。
||E x~p data f(x) ? E z~p z (z) f(G(z))|| 2
鉴别器,也就是f(x),按照通常的方式进行训练。与常规的GAN训练一样,目标有一个固定的点,G正好匹配训练数据的分布。

Minibatch discrimination:

GAN的主要失效模式之一是生成器总是崩溃,而且它总是从参数设置相同的点。当单一模式的崩溃迫在眉睫。
多类似的点上可能指向相同的方向。鉴别器的梯度在许因为鉴别器独立处理每个例子,所以它的梯度之间没
有协调,因此没有机制来告诉生成器的输出不同于其他。相反,所有的输出都朝向一个单一的点,这个鉴
别器现在认为是非常现实的。在发生崩溃后,鉴别器知道这个单点来自于生成器,但是梯度下降不能分离相
同的输出。鉴别器的梯度将发生器产生的单点永久地推到空间周围,并且该算法不能收敛到具有正确熵值的
分布。避免该类失败的明显的策略是允许鉴别器查看多个数据示例,并执行我们所说的minibatch discrimnation。

minibatch discrimnation的概念是相当普遍的:任何鉴别模型都可以看作结合了多个样本,而不是孤立的,
这可能有助于避免发生器的崩溃。实际上,从这个角度很好地解释Radford等人成功地将batch-normalization
应用在鉴别器中的成功。但是,到目前为止,我们已经将实验限制在明确旨在识别特别紧密的发生器样本的模型中。
下面是一个成功的模型,用于模拟最小化batch样本之间的紧密关系:

接下来,我们将minibatch层的输出o(xi)与它所输入的中间特性f(xi)连接起来,然后将结果输入到鉴别器的下一层。
我们分别从生成器和训练数据中分别计算这些小批量特性。与以前一样,识别器仍然需要为每个示例输出
一个单独的数字,这表明它来自于训练数据的可能性。

鉴别器的任务仍然有效地将单个示例分类为真实数据或生成的数据,但是现在能够使用在其他示例中
使用minibatch作为辅助信息。 minibatch的分辨使我们能够非常快速地生成视觉上吸引人的样本,在这方面,
它优于特征匹配(第6节)。但有趣的是,如果目标是使用第5节中介绍的半监督学习方法获得强分类器,
那么发现特征匹配效果会更好。

3.3 Historical averaging

当我们应用这种技术时,我们修改每个玩家的成本以包含一个项||θ1 t P t i = 1θ[i] || 2,
其中θ[i]是过去时间i的参数值。参数的历史平均值可以通过在线方式进行更新,这样该学
习规则可以很好地适应长时间序列。这种方法松散地由虚构游戏[16]算法启发,该算法可以
在其他类型的游戏中找到均衡。我们发现我们的方法能够找到低维连续的非凸面博弈的均衡,
例如一个控制x的控制者,另一个控制y的值以及值函数(f(x)1)(y 1),其中f(x)= x(x <0),
否则f(x)= x 2。对于这些相同的玩具游戏,梯度下降由于无法接近平衡点的扩展轨道而失败。

3.4 One-sided label smoothing

标签平滑法,一种80年代的技术,最近由Szegedy et.al重新发现,用平滑的值取代了0和1的目标,
比如,9或1,最近被证明可以减少神经网络对对抗例子的脆弱性。
用α代替正分类目标,用β代替负分类,最优鉴别器变为D(x) =
分子中Pmodel的存在是有问题的,因为在Pdata近似为零且Pmodel大的区域中,来自Pmodel的错误样本已经
没有动力接近数据。因此,我们只将正标签平滑到α,而负标签设置为0。

批量标准化大大提高了神经网络的优化性能,并且已经证明其在DCGANs上非常有效[3]。
但是,它导致输入示例x的神经网络的输出高度依赖于同一小批中的其他几个输入x,。
为了避免这个问题,我们引入了虚拟批量规范化(VBN),其中每个示例x都是基于在训练开始时和在训练开始时选
定的 reference batch 中收集的统计数据进行规范化的。reference batch 仅使用自己的统计数据进行标准化。
VBN的计算成本很高,因为它需要在两个minibatches数据上正向传播,所以我们只在发生器网络中使用它。

4 Assessment of image quality

生成对抗网络缺乏目标函数,这使得难以比较不同模型的性能。 一个直观的性能指标可以通过让人类注释者
判断样本的视觉质量来获得[2]。 我们用Amazon Mechanical Turk(MTurk)自动处理,使用图中的Web界面图片,
我们曾让注释者区分生成的数据和真实的数据。我们的模型的结果质量评估在第6节中描述。
使用人类注释器的缺点是,度量的变化取决于任务的设置和注释这的动机。
我们还发现,当我们向注释者反馈他们的错误时,结果发生了巨大变化:通过从这些反馈中学习,
注释者能够更好地指出生成图像中的缺陷,从而给出更悲观的质量评估。图2中的左栏显示了注释
过程中的一个屏幕,而右栏显示了我们如何通知注释人员他们的错误。

作为人工注释的一种替代方法,我们提出了一种自动评价样本的方法,我们发现该方法与人类的评价相关联:
我们将inception模型[19]应用于每个生成的图像,以获得条件标签分布p(y|x)。
包含有意义的对象的图像应该具有低熵的条件标签分布p(y|x)。而且,我们预计该模型会生成不同的图像。
而在它的边缘的熵会很高。结合这两个要求,我们提出的度量标准是:exp(ExKL(p(y|x)||p(y)))
我们在这里指数化结果,因此这些值更易于比较。 我们的inception评分与用于训练CatGAN生成模型的目标密切相关[14]
虽然我们只用这样的目标训练取得了小小的成功,但我们发现这是的一个很好的评估指标,它与人的判断非常相近。
我们发现,作为此度量标准的一部分,在足够多样本(即50k)上的评估度量是非常重要的。

5 Semi-supervised learning

考虑一个标准的分类器,用于将数据点x分类为K个可能的类之一。这样的模型以x作为输入,并输出一个k维的逻辑向量。
通过应用softmax,可以将其转化为类概率。在监督学习中,然后通过最小化观察到的标签和模型预测分布
p(y|x)之间的交叉熵来训练这样的模型。我们可以用任何标准分类器进行半监督学习,方法是简单地将来自
GAN生成器G的样本添加到我们的数据集中,用新生成的类y=K+1标记它们,并相应地将分类器输出的维数从K增加到 K+1。

然后,我们可以使用Pmodel(y = K + 1 | x)来提供x是生成数据的概率,
对应于原始GAN框架中的1-D(x)。我们现在也可以从无标签的数据中学习
我们现在也可以从未标记的数据中学习,只要我们通过最大化log Pmodel(y {1,…,K} | x)
知道它对应于K类真实数据中的一个,假设我们的一半数据集由实际数据组成并且其中另
一半是生成的(这是任意的),那么我们用于训练分类器的损失函数变成:
我们分解总的交叉熵损失到我们的标准监督损失函数Ls(标签的负对数概率,给的数据是真实的
)和一个无监督损失Luns,事实上当我们 D(x)= 1-Pmodel(y = K + 1|x)表达时,标准GAN对抗值变得明显,

在实践中,不受监督只会帮助我们,如果Lunsup这对于我们的分类器来说是不重要的,我们需要训练G来近似数据分布。
一种方法是通过训练G来最小化GAN的游戏值,使用我们的分类器定义的鉴别器D。
这种方法引入了G和我们尚未完全理解的分类器之间的相互作用,但从经验上我们发现,
在半监督学习中,优化G使用特征匹配的方法是非常有效的,而在GAN使用minibatch来训练G和判别法是完全行不通的。
这里我们用这种方法来展示我们的实证结果;对D和G之间的相互作用进行充分的理论理解,以便今后的工作。

最后,请注意,具有K + 1个输出的分类器是过度参数化的:从每个输出logit中减去一个通用函数f(x),
不会改变softmax的输出。这意味着我们可能等同于解决l K + 1(x)= 0∀x,在这种情况下Lsup变成了标准的监督损失函数的
原始K类分类器,我们的判别器D已经给出 ,这里的Z(x)= 。

5.1 Importance of labels for image quality
除了在半监督学习中获得最先进的结果之外,上述方法还在提高生成图像质量上取得了令人惊讶的效果,
即通过人工注释器的判断。原因似乎是,人类的视觉系统对图像统计有很强的协调能力,可以帮助推断
出图像所代表的对象类别,而对于对图像的解释不那么重要的本地统计数据,则可能不那么敏感。
这是由我们在第4节中提出的人类注释器所报告的质量和我们在第4节中开发的初始inception score
之间的高相关性所支持的。明确构建来度量生成图像的“目标性”的。通过用判别器D对图像中显示的
对象进行分类,我们将其偏向于开发一种内部表示,它强调了人类所强调的相同特征。这种效应可以被
理解为一种转移学习的方法,并且有可能被广泛应用。我们将进一步探讨这种可能性,以便今后工作。

6 Experiments

我们对MNIST、cifar-10和SVHN进行了半监督实验,并对MNIST、cifar-10、SVHN和ImageNet
进行了样本生成实验。我们提供代码来实现我们大部分的实验。

6.1 MNIST

MNIST数据集包含60000个标记的数字图像。
我们在半监督训练中随机抽取一小部分,考虑设置20、50、100和200个标记的样本。
结果平均超过10个被标记数据的随机子集,被选择的每个类有一个平衡数量的例子。
剩下的训练图像没有标签。我们的网络各有5个隐层我们利用权值归一化[20]并将高
斯噪声添加到鉴别器的每一层的输出中。表1总结了我们的结果。

6.2 CIFAR-10

cifar-10是一个小数据集,它研究32*32的自然图像的数据集。
我们使用这个数据集来学习半监督学习,以及检查样本可以达到的视觉质量。
在我们的GAN判别器中,我们使用了一个9层的深度卷积网络,并进行了dropout
和权值归一化。该生成器使用了一个4层深度CNN和batch normalization。
表2总结了半监督学习任务的结果。

所有的模型,甚至部分崩溃都有相对较低的分数。我们注意到,初始分数应作为一种粗略的指导,
以评价通过一些独立标准训练的模型;直接优化初始分数将导致产生对抗的样本。

6.3 SVHN

7 总结

生成的对抗性网络是一种很有前途的生成模型,尽管依然被不稳定的训练和缺乏适当的评估指标所阻碍。
这项工作为这两个问题提供了部分解决方案。我们提出了一些稳定训练的技术,使我们能够训练那些以
前无法训练的模型。此外,我们提出的评价指标(Inception score)为我们比较这些模型的质量提供了基
础。我们将我们的技术应用到半监督学习的问题上,在计算机视觉上实现了许多不同数据集的最先进的
结果。这项工作所作的贡献具有实际意义;我们希望在今后的工作中,能有更严谨的理论理解。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值