参考博客:https://blog.youkuaiyun.com/zijin0802034/article/details/58643889
https://blog.youkuaiyun.com/shenxiaolu1984/article/details/75736407
paper:Improved Techniques for Training GANs
code:Theano实现
摘要
我们提出了一些新的结构特征和训练过程可以用到GAN上。我们关注两点应用:半监督学习和生成视觉上真实的图像。我们的主要目标不是训练一个模型给测试数据赋值最大似然,也不要求模型能不用任何标签学得很好。使用我们的方法,可以在MNIST,CIFAR10,SVHN上达到最好的半监督效果。生成图像有很高的质量:生成的MNIST人眼无法区分,CIFAR10错误率21.3%。在ImageNet高分辨率样本上显示了我们的方法可以让模型学到可识别的特征。
1、介绍
GAN是基于博弈论的生成模型方法。GAN训练一个生成网络来生成尽可能真实的图像,一个判别网络尽可能区分真是图像和生成图像。
训练GAN要求找到在连续高维参数下非凸博弈的纳什均衡。但是通常GAN用梯度下降方法去寻找损失函数的最小值,而不是纳什均衡。
本文,我们介绍了几个方法去鼓励GAN博弈的收敛。这些方法的灵感来源于非凸问题的启发式理解。可以帮助提升半监督学习性能和提升采样生成。
2、相关工作
我们结合了最近一些关于稳定训练和提升样本质量的工作,例如使用了DCGAN。
我们的方法之一,特征匹配(feature matching),在本质上类似于使用最大平均偏差(maximum mean discrepancy)。另一个方法,小批量特征(minibatch features),基于批量标准化的部分思想,我们提出的虚拟批量标准化(virtual batch normalization) 是批量标准化的直接扩展。
我们工作的主要目标是提升生成对抗网络在半监督学习上的效果(在这种情况下,通过学习额外的未标记的例子来提高监督任务的性能,在这里是分类)。
3、模型改进
假设是判别网络的损失函数,
是生成网络的损失函数。纳什均衡点就是参数空间的点
,
对于
取得最小值,
对于
取得最小值。对抗网络中,
的更新减少了
,但是同时又增加了
,
的更新减少了
,同样又增加了
。例如下面的例子,一个网络想要通过修改
来最小化
,另一个网络想要通过修改
来最小化
,使用梯度下降的方法会进入一个稳定的轨道中,并不会收敛到(0,0)(0,0)点。
对抗网络的目的需要在高维非凸的参数空间中,找到一个纳什均衡。但是GAN网络使用梯度下降的方法只会找到低的损失,不能找到真正的纳什均衡。本论文中,作者通过引入了一些方法,提高网络的收敛。
3.1 特征匹配(feature matching)
原始的GAN网络的目标函数需要最大化判别网络的输出。作者提出了新的目标函数,motiva