Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks
这篇文章最主要的目的是把GAN作为一种representation learning的方法(对Generator和Discriminator都是这个目的,而不是生成图片),然后用学到的 features 用于supervised learning(classification等)。做了相关的实验验证(用学到的 features 在其它数据集上进行分类,对学到的features进行可视化)representation learning的效果很好。
Motivation
无标数据比有标数据多得多,如果能利用这些数据提取 features,然后用于
supervised任务,会很有帮助用于
supervised learning的CNN在CV方面取得了取得了很好的成绩,如果用于unsupervised learning是不是也可以取得比较不错的成绩。最近的
GAN很火,那是不是可以把GAN的结构用到CNN中(所以从这个角度看是:用GAN改进CNN,而不是用CNN改进GAN),把CNN改成一种可以用于unsupervised learning任务的结构。convincing evidence 表明:提出的 model 可以 learns a hierarchy of representations from object parts to scenes
1 INTRODUCTION
提出
DCGAN,训练更稳定如何?
为何?
3 Approch and Model Architecture
把CNN应用到GAN遇到了很多的问题,但是作者在经过很多的实验后,找到了一些比较好的 tricks,resulted in stable training across a range of datasets and allowed for training higher resolution and deeper generative models。 看下面:
CNN architecture的3个改变
把
pooling换成strided convolutions,原因:allowing the network to learn its own spatial downsamplingGenerator: strided convolutionsDiscriminator: fractional-strided convolutions
使用
global average pooling,但是发现提高了stability,收敛速度变慢。Generator,Discriminator都用了生成数据的那一层当成是
FC,因为就是矩阵相乘,然后 reshpae 成一个 4 维的 tensor 作为接下来卷积层的输入。对于
Discriminator,把最后一个卷基层 flatten,输入 single sigmoid 中。
使用
Batch Normalization,尽量的避免Generator崩溃。Generator,Discriminator都用了解决 poor initialization 的问题
information flow更通畅
Activation
Generator: ReLU activation , Tanh function for output layerDiscriminator: leaky rectified activation
4.1.1 DEDUPLICATION
- 没看懂是什么意思
5.1 CLASSIFYING CIFAR-10 USING GANS AS A FEATURE EXTRACTOR
- 评价 the quality of unsupervised representation learning 的一个方法是把它们当做
features extractor,然后用于supervised learning中,看效果。
Empirical validation of DCGANS capabilities
SGD and a small learning rate 根据之前的实验,都没有 evidence 显示会
overfitting使用 discriminator’s convolutional features from all layers 对其它的数据集进行分类。检验它 extract features 的能力。
可以试一下,unsupervised learning 的方法 extract features,然后用学到的 features 进行分类。
通过训练一个具有相同结构的
CNN,验证 CNN architecture used in DCGAN is not the key contributing factor of the model’s performance
6.3.1
Generator学习到了什么? major scene components
待完善。。。。