zoukankan      html  css  js  c++  java
  • [译]2016年深度学习的主要进展(译自:The Major Advancements in Deep Learning in 2016)

    译自:The Major Advancements in Deep Learning in 2016 建议阅读时间:10分钟

    https://tryolabs.com/blog/2016/12/06/majoradvancementsdeeplearning2016/

    在过去的十多年来,深度学习一直是核心话题,2016年也不例外。本文回顾了他们认为可能会推动这个领域发展或已经对这个领域产生巨大贡献的技术。(1)无监督学习有史以来便是科研人员所面临的的主要挑战之一。由于大量产生式模型的提出,2016年对于这一领域来说是收获巨大的一年。(2)为了使得机器具备能与人自然交流的能力是理想中的目标,一些商业巨头,如Google和Facebook,提出的一些解决方法。在这个背景下,2016年都是围绕这个目标的自然语言处理中的关键问题的创新。

    (一)无监督学习

    无监督学习指的是那些从原始数据中抽取模式和结构,而不需要额外的信息。这一点与有监督学习是对立的,因为它需要额外的标注信息。经典的基于神经网络的无监督学习方法是Autoencoder。最基本的版本是由多层感知机组成,输入与输出层具有相同的神经元数目,隐层中神经元数目要相对少些,用此来恢复出输入信号。一旦训练结束,隐层的输出即对应数据的表示,能够用于聚类,维度归约,改善有监督的分类任务,甚至是数据压缩。

    2014年Ian Goodfellow提出用于解决无监督学习的Generative Adversarial Networks (GAN)。直到2016年,这项技术的潜力才凸显。GAN是一项真正的变革。它的影响力将在本文阐述。深度学习创始人之一Yann LeCun曾经说过,GAN是近20年来机器学习中最重要的思想。2016年引入的改进技术(Deep Convolutional GAN)修正了之前结构和训练算法的一些不足,新的应用的涌现揭示了GAN模型及其改进版的强大与灵活。

    GAN起源于直观的思想。假设有一个画家伪造艺术品记为G,另外有一些人以鉴别画作的真伪为生记为D。开始时,给D展示一些Picasso的画作,然后G为了欺骗D伪造了一些画作,使得D相信这就是Picasso的画作。有时候,G成功欺骗了D,但是随着D开始通过多看一些画作来学习Picasso的风格,G越来越难骗到D,所以G也要伪造的越来越好。随着学习的推进,不但D变得越来越擅长区分画作是否是Picasso的,而且G也越来越擅长伪造。这就是GAN背后的思想。

    技术上来讲,GANs由生成网络Generator(G)和判别网络Discriminator(D)两个网络的持续推动(对抗)构成。给定一个训练样本的集合,如图像,假设它们的潜在分布为x。采用GANs,G负责生成输出,D负责判断这些输出是否与训练样本来自同一分布。G始于一些噪音z,生成图像G(z)。D获得真实分布的图像和来自于G的伪造图像,并能区分他们(D(x)与D(G(x)))是否属于训练集。D与G同时学习,一旦G训练好后,它就能够知道关于训练样本分布的足够多的知识来产生具有一些相似性质的新样本。这些新样本可能并不能与真实的样本一一对应,但是确实捕捉到了训练样本中实际存在的一些概念信息。以CIFAR10为例,从远处看,可以看到有局部的神似。

    下面介绍GAN为基础的几个变种:

    (1)InfoGAN。GAN不但可以近似数据的分布,而且可以用来学习可解释的,有用的数据的向量表示。(题外话:确实,用vector representations of data,比用representations of data更能让人理解。)理想的向量表示不但能够捕捉丰富的信息,就像autoencoder那样,而且能够可解释,也就是说能够区分向量的哪部分是对应哪种类型的形变才导致最后的输出。OpenAI的研究员们8月的时候为了解决这个问题提出了InfoGAN模型。InfoGAN能够采用无监督的方式学习到数据的的表示。以MNIST数据为例,InfoGAN能够推断数字的形状,旋转,以及宽度,而不需要额外的人工标注数据。

    (2)Conditional GANs.这类模型考虑额外的信息,如类标签,文本,或其他图像等,来产生样本,用此来迫使G产生特定类型的输出。一些应用浮现:a. Text-to-Image.将文本作为额外的输入,用character level CNN or LSTM编码的向量表示,然后基于此来产生图像。b. Image-to-Image. 将输入图像映射为输出图像。c.Super Resolution. 采用Downsampled图像作为样本,生成器G试图近似他们以得到更加自然清晰的版本。

    (二)自然语言处理

    为了能够与机器进行流畅的对话,一些问题必需要首先解决:文本理解,问答,翻译。

    (1)文本理解。Salesforce Metamind构建了一个新的模型,称为多任务联合(Joint Many-Tasks),目标在于构建一个单一的模型能够同时完成以下五个常见的NLP的任务:词性标注、分块、依赖分析、语义相关、文本蕴含。该模型的神奇之处在于它是可以端到端的训练的(end-to-end trainable)。这就意味着不同层间是可以协作的,从而实现用高层(复杂任务)的结果来改善低层(简单任务)的结果。以往的思想认为,只有低层可以用来改善高层。JMT思想恰好是反向的,因此是新颖的。因此,该模型得到的词性标注的结果是state-of-the-art的。

    (2)问答。MetaMind也提出了用于解决问答问题的新的模型,称为 Dynamic Coattention Network (DCN)。该模型背后的思想也是非常直观的。假设我给你一段长文本和一些问题(就像阅读理解),你是倾向于先阅读整段文本,然后再回答问题,还是先看问题在阅读文本?很自然的,我们应该更倾向于预先知道问题,将之作为条件,使得我们在阅读文本的时候能够将注意力集中在这些地方。否则,我们将要对整段文本中每个细节和依赖都同等关注,以应对未来可能的各种问题。DCN就是做这样的事情。首先,它产生一些以问题作为条件的文本的内部表示,来试图回答问题;然后,浏览可能的答案列表,最后收敛到最终的答案。

    (3)机器翻译。9月份的时候,Google提出了一个被他们的翻译系统所采用的新的模型,成为Google Neural Machine Translation (GNMT)。该模型为每对语种(如中-英)单独训练一个模型。最新版本的GNMT在11月份发布。与初级版本相比,更进了一步,多个语种对的翻译采用统一的模型来训练。与之前模型的唯一不同在于,多了一个用于指定目标语种的输入。新版本的GNMT能够zero-shot translation,也就是说能够翻译一对没有训练过的语种。结果表明,同时训练多个语种对,比训练单一语种对的效果要好。这表明翻译知识是可以迁移的,从一个语种对到另外一个。

    参考文献

    1. Generative Adversarial Text to Image Synthesis, Jun 2016
    2. Image-to-Image Translation with Conditional Adversarial Nets, Nov. 2016
    3. Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network, Nov 2016

    相关阅读

    1. 深度学习:2016年的进展综述及2017年的预测 http://mp.weixin.qq.com/s?__biz=MzA5NzkxMzg1Nw==&mid=2653161579&idx=1&sn=e1d157cb4c6e9610be78ebf79eb4379c&chksm=8b493505bc3ebc1323b2d0a673e479d4bb9321748c62c9ad613260936849ea76c48902249868#rd
    2. 10 Deep Learning Trends and Predictions for 2017  https://medium.com/@IntuitMachine/10-deep-learning-trends-and-predictions-for-2017-f28ca0666669
  • 相关阅读:
    HDU 2639 Bone Collector II (01背包,第k解)
    POJ 2184 Cow Exhibition 奶牛展(01背包,变形)
    hihoCoder #1165 : 益智游戏 (挑战赛11 B题)
    UVA 562 Dividing coins 分硬币(01背包,简单变形)
    POJ Charm Bracelet 挑饰品 (常规01背包)
    hiho一下 第四十四周 博弈游戏·Nim游戏(直接公式解)
    UVA 624 CD(01背包,要记录路径)
    118 Pascal's Triangle 帕斯卡三角形 杨辉三角形
    117 Populating Next Right Pointers in Each Node II 每个节点的右向指针 II
    116 Populating Next Right Pointers in Each Node 每个节点的右向指针
  • 原文地址:https://www.cnblogs.com/shuzirank/p/6171969.html
Copyright © 2011-2022 走看看