社会焦点

从自编码器到生成对抗网络:一文纵览无监督学习研究现状(2)

字号+ 作者: 来源: 2017-05-07

尽管这个鉴别器是一个标准的神经网络。具体的细节可以参考下文提及的代码。 关键是要并行地去训练这两个网络,同时不要完全过拟合,因此才会复制数据集。学习到的特征需要泛化在未知的样本上,所以学习数据集将不会

  从自编码器到生成对抗网络:一文纵览无监督学习研究现状

尽管这个鉴别器是一个标准的神经网络。具体的细节可以参考下文提及的代码。

关键是要并行地去训练这两个网络,同时不要完全过拟合,因此才会复制数据集。学习到的特征需要泛化在未知的样本上,所以学习数据集将不会有用。

在 Torch7 上训练 DCGAN 的代码(https://github.com/soumith/dcgan.torch)也被提供了。这需要大量的实验,相关内容 Yann LeCun 在 Facebook 中也分享过:https://www.facebook.com/yann.lecun/posts/10153269667222143

当生成器和鉴别器都被训练之后,你可以同时使用两者。主要的目标就是训练出一个能够被用于其他任务的鉴别器网络,例如在其他数据集上可以分类。生成器可以用来从随机向量中生成图片。这些图片有着非常有趣的属性。首先,它们从输入空间中提供了平滑的变换。如下所示的例子展示了在 9 个随机输入向量中移动而生成的图片:

  从自编码器到生成对抗网络:一文纵览无监督学习研究现状

输入向量空间也提供了数学属性,证明学习到的特征是按照相似性来组织的,如下图所示:

  从自编码器到生成对抗网络:一文纵览无监督学习研究现状

生成器学习到的平滑空间启示鉴别器也要有类似的属性,这使得鉴别器在编码图像时成了一个很棒的通用特征提取器。这有助于解决 CNN 在训练不连续图像的时候由于对抗噪声而造成的失败(详见 Christian Szegedy 等人的文章《Intriguing properties of neural networks》,https://arxiv.org/abs/1312.6199)。

GAN 最新的进展,在仅有 1000 个标签样本的 CIFAR-10 数据集上实现了 21% 的错误率,参见 OpenAI 的 Tim Salimans 等人的论文《Improved Techniques for Training GANs》,论文链接:https://arxiv.org/pdf/1606.03498v1.pdf。

最近关于 infoGAN 的论文《InfoGAN: Interpretable Representation Learning by Information Maximizing Generative Adversarial Nets》(链接:https://arxiv.org/abs/1606.03657)中,能够产生特征非常清晰的图像,并且这些图像具有更加有趣的意义。然而,他们并没有公布学习到的特征在某项任务或某个数据集中的性能对比。

在如下所示的博客和网站中也有关于生成对抗模型的总结,参见 OpenAI 的技术博客 https://blog.openai.com/generative-models/ 和网页 https://code.facebook.com/posts/1587249151575490/a-path-to-unsupervised-learning-through-adversarial-networks/。

另一个非常有趣的例子如下,在例子中,作者用生成对抗训练去学习从文本描述中生成图像。参见论文《Generative Adversarial Text to Image Synthesis》,链接:https://arxiv.org/abs/1605.05396。

  从自编码器到生成对抗网络:一文纵览无监督学习研究现状

我最欣赏这项工作的地方在于它所使用的网络用文本描述作为生成器的输入,而不是随机向量,这样就可以精确地控制生成器的输出。网络模型结构如下图所示:

  从自编码器到生成对抗网络:一文纵览无监督学习研究现状

生成对抗模型的缺点和优点

优点:

  • 对整个网络的全局训练

  • 易于编程和实现

  • 缺点:

  • 难以训练和转换问题

  • 在某些情况下可以比得上监督学习的性能

  • 需要提升可用性(这是所有无监督学习算法面临的问题)

  • 可以从数据中学习的模型

    通过设计不需要标签的无监督学习任务和旨在解决这些任务的学习算法,这些模型直接从无标签的数据中学习。

    在视觉表征中通过解决拼图问题来进行无监督学习确实是一个聪明的技巧。作者将图像分割成了拼图,并且训练深度网络来解决拼图问题。最终得到的网络的表现足以比肩最好的预训练网络。详见论文《Unsupervised Learning of Visual Representations by Solving Jigsaw Puzzles》,链接:https://arxiv.org/abs/1603.09246

    在视觉表征中通过图像补丁和布局来进行无监督学习也是一个聪明的技巧。他们让同一幅图像上的两个补丁紧密分布。这些补丁在统计上来讲是同一个物体。第三个补丁选择随机的图像,并且布局在随机的位置,从统计上来讲与前两个补丁并不是同一类物体。然后训练一个深度网络来区分两个属于同一类的补丁和另一个不同类别的补丁。最终得到的网络具有和最高性能精调网络之一相同的性能。详情参见论文《Learning visual groups from co-occurrences in space and time》,链接:https://arxiv.org/abs/1511.06811。

    从立体图像重建中进行的无监督学习模型采用立体图像作为输入,例如图像一帧的左半部分,然后重建出图像的右半部分。虽然这项工作并不针对无监督学习,但是它可以用作无监督学习。这种方法也可以用来从静态图片生成 3D 电影。参见论文《Deep3D: Fully Automatic 2D-to-3D Video Conversion with Deep Convolutional Neural Networks》,链接:https://arxiv.org/abs/1604.03650,github 上的 Python 源码:https://github.com/piiswrong/deep3d。

    利用替代类别的无监督学习视觉表征使用图像不行来创建非常大的替代类。这些图像补丁然后被增强,然后被用来训练基于增强替代类的监督网络。这在无监督特征学习中给出了最好的结果。详情参见论文《Discriminative Unsupervised Feature Learning with Exemplar Convolutional Neural Networks》,链接:https://arxiv.org/abs/1406.6909。

    使用视频的无监督学习视觉表征采用了基于 LSTM 的编码器-解码器对。编码 LSTM 运行在视频帧的序列上以生成一个内部表征。随后这些表征通过另一个 LSTM 被解码以生成一个目标序列。为了使这个变成无监督的,一种方法是预测与输入相同的序列。另一种方式是预测未来的帧。详情参见论文《Unsupervised Learning of Visual Representations using Videos》,链接:https://arxiv.org/abs/1505.00687。

    另一篇使用视频的文章出自 MIT 的 Vondrick 和 Torralba 等人(http://arxiv.org/abs/1504.08023),有着非常惹人注目的结果。这项工作背后的思想是从视频输入中预测未来帧的表示。这是一种优雅的方法。使用的模型如下:

    转载请注明出处。


    1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

    相关文章