天天看点

Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks 论文阅读笔记1 背景2 创新点3 核心方法4 DCGAN能力的经验验证5 网络内部的可视化分析6 将来的工作

Paper: Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks 
Author: Alec Radford, et al。
Publication: arXiv, 2015。
           

文章目录

  • 1 背景
  • 2 创新点
  • 3 核心方法
    • 3.1 为稳定DCGAN的训练作出的选择
    • 3.2 实验经验的参数选择
    • 3.3 数据集的选择
  • 4 DCGAN能力的经验验证
    • 4.1 使用GAN分类CIFAR-10来作为特征提取器
    • 4.2 使用GAN分类SVHN来作为特征提取器
  • 5 网络内部的可视化分析
    • 5.1 内部空间分析
    • 5.2 判别器特征的可视化
    • 5.3 生成器的特征表达
      • 5.3.1 试图不去构建特定的物体
    • 5.3.2 人脸样本的向量计算
  • 6 将来的工作

1 背景

  1. 当前无监督的表征学习被广泛的研究。

    比较经典的有KNN等聚类算法;后有人提出了基于卷积的自编码器;还有深度信念网络也被用于层次的表征学习。

  2. 生成自然的图像。

    非参模型主要是将大量的图像用来作匹配的思路;

    参数模型被广泛地研究,比如有变分采样、拉普拉斯图像金字塔扩展方法等,但是目前似乎都没有获得较大的成功。

  3. CNN的内部可视化

    如何将黑盒CNN的内部进行可视化和具体分析也是一个问题。

2 创新点

  1. 针对CGAN的限制和不稳定的训练,提出DCGAN结构。
  2. 使用训练好的判别器作图分类任务,达到了比别的无监督方法更好的精度。
  3. 将学习到特定目标部分特征的GAN的滤波器可视化展示。
  4. 展示了生成器在样本生成方面的一些特性。

3 核心方法

3.1 为稳定DCGAN的训练作出的选择

  1. 使用strided convoluations(判别器中)和fraction-strided convolutions(生成器中),取代了会影响稳定性的各种池化层。
  2. 使用批正则化稳定学习训练。
  3. 为了达到更深的结构去除了全连接层。
  4. 生成器中的输出层使用Tanh激活函数,其它层使用了ReLu激活函数。
  5. 判别器都使用了LeakyReLU激活函数。

3.2 实验经验的参数选择

预训练:无

梯度下降方式:SGD

批的大小:128

权重初始化方式:0.02std的正态分布

LeakyReLU的斜率:0.2

优化器:Adam

学习率:0.0002

动量项beta1:0.5

其他基本为默认值。

3.3 数据集的选择

  1. LSUN

    卧室数据集,包含了超过三百万个训练样本。

    证明DCGAN不是通过过拟合和记忆性来生成高质量的样本。

    进一步的,作者为了降低生成器对输入样本进行记忆的可能性,还使用了基于3072-128-3072去噪dropout和RELU的自编码器,在32*32的降采样的训练样本上进行学习。

  2. Faces

    通过dbpedia获取的名字搜索并在随机的网站上获取人脸图像,得到了一万个人的三百万张图片。

    然后使用opencv的人脸检测器进行检测,返回了350,000个face boxes。用其进行训练。

    不使用数据增强。

  3. IMAGENET-1K

    使用32*32的大小,无数据增强。

下图是DCGAN生成器的主要模型结构:

Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks 论文阅读笔记1 背景2 创新点3 核心方法4 DCGAN能力的经验验证5 网络内部的可视化分析6 将来的工作

4 DCGAN能力的经验验证

4.1 使用GAN分类CIFAR-10来作为特征提取器

一种典型的评估无监督学习算法的技术就是将其作为特征提取器应用于监督数据,然后评估利用这些特征进行拟合的线性模型的表现。

将从Imagenet-1k上进行预训练的网络,结合SVM,用于CIFAR-10的分类,结果如下:

Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks 论文阅读笔记1 背景2 创新点3 核心方法4 DCGAN能力的经验验证5 网络内部的可视化分析6 将来的工作

可以看出,DCGAN用了较少的单元数却达到了较好的结果。

4.2 使用GAN分类SVHN来作为特征提取器

也使用了StreetView House Numbers dataset(SVHN)进行了实验。

Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks 论文阅读笔记1 背景2 创新点3 核心方法4 DCGAN能力的经验验证5 网络内部的可视化分析6 将来的工作

5 网络内部的可视化分析

5.1 内部空间分析

Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks 论文阅读笔记1 背景2 创新点3 核心方法4 DCGAN能力的经验验证5 网络内部的可视化分析6 将来的工作

5.2 判别器特征的可视化

Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks 论文阅读笔记1 背景2 创新点3 核心方法4 DCGAN能力的经验验证5 网络内部的可视化分析6 将来的工作

5.3 生成器的特征表达

5.3.1 试图不去构建特定的物体

去掉“窗口”滤波器,看看会如何?

Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks 论文阅读笔记1 背景2 创新点3 核心方法4 DCGAN能力的经验验证5 网络内部的可视化分析6 将来的工作

5.3.2 人脸样本的向量计算

向量计算的思想是,假设每一种概念如“男人”、“女人”、“汽车”等都由一个特定的向量来表达,那么会产生一种有意思的向量运算。

即向量的概念在某种层面“相加”了,如:

与 “男人”向量 + “女人”向量 + “国王”向量 的结果最接近的向量是“女王”这个向量。

作者使用Z特征,以这种思想做出的实验结果如下:

Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks 论文阅读笔记1 背景2 创新点3 核心方法4 DCGAN能力的经验验证5 网络内部的可视化分析6 将来的工作
Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks 论文阅读笔记1 背景2 创新点3 核心方法4 DCGAN能力的经验验证5 网络内部的可视化分析6 将来的工作

6 将来的工作

作者提出,将来的工作可以着眼于:

  1. 解决该模型仍旧存在的少量不稳定问题。
  2. 将本研究扩展到视频和语言等领域。
  3. 深度学习潜在空间的学习。

继续阅读