[译]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,也就是说能够翻译一对没有训练过的语种。结果表明,同时训练多个语种对,比训练单一语种对的效果要好。这表明翻译知识是可以迁移的,从一个语种对到另外一个。
参考文献
- Generative Adversarial Text to Image Synthesis, Jun 2016
- Image-to-Image Translation with Conditional Adversarial Nets, Nov. 2016
- Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network, Nov 2016
相关阅读
- 深度学习:2016年的进展综述及2017年的预测 http://mp.weixin.qq.com/s?__biz=MzA5NzkxMzg1Nw==&mid=2653161579&idx=1&sn=e1d157cb4c6e9610be78ebf79eb4379c&chksm=8b493505bc3ebc1323b2d0a673e479d4bb9321748c62c9ad613260936849ea76c48902249868#rd
- 10 Deep Learning Trends and Predictions for 2017 https://medium.com/@IntuitMachine/10-deep-learning-trends-and-predictions-for-2017-f28ca0666669
[译]2016年深度学习的主要进展(译自:The Major Advancements in Deep Learning in 2016)的更多相关文章
- 0.读书笔记之The major advancements in Deep Learning in 2016
The major advancements in Deep Learning in 2016 地址:https://tryolabs.com/blog/2016/12/06/major-advanc ...
- (转) The major advancements in Deep Learning in 2016
The major advancements in Deep Learning in 2016 Pablo Tue, Dec 6, 2016 in MACHINE LEARNING DEEP LEAR ...
- 深度学习笔记之关于总结、展望、参考文献和Deep Learning学习资源(五)
不多说,直接上干货! 十.总结与展望 1)Deep learning总结 深度学习是关于自动学习要建模的数据的潜在(隐含)分布的多层(复杂)表达的算法.换句话来说,深度学习算法自动的提取分类需要的低层 ...
- 吴恩达《深度学习》-课后测验-第一门课 (Neural Networks and Deep Learning)-Week 3 - Shallow Neural Networks(第三周测验 - 浅层神 经网络)
Week 3 Quiz - Shallow Neural Networks(第三周测验 - 浅层神经网络) \1. Which of the following are true? (Check al ...
- 深度学习基础 Probabilistic Graphical Models | Statistical and Algorithmic Foundations of Deep Learning
目录 Probabilistic Graphical Models Statistical and Algorithmic Foundations of Deep Learning 01 An ove ...
- 吴恩达《深度学习》-课后测验-第一门课 (Neural Networks and Deep Learning)-Week 2 - Neural Network Basics(第二周测验 - 神经网络基础)
Week 2 Quiz - Neural Network Basics(第二周测验 - 神经网络基础) 1. What does a neuron compute?(神经元节点计算什么?) [ ] A ...
- 吴恩达《深度学习》-课后测验-第一门课 (Neural Networks and Deep Learning)-Week 4 - Key concepts on Deep Neural Networks(第四周 测验 – 深层神经网络)
Week 4 Quiz - Key concepts on Deep Neural Networks(第四周 测验 – 深层神经网络) \1. What is the "cache" ...
- 学习的矩阵微积分The matrix calculus you need for deep learning
学习的矩阵微积分The matrix calculus you need for deep learning https://explained.ai/matrix-calculus/index.ht ...
- [深度学习大讲堂]从NNVM看2016年深度学习框架发展趋势
本文为微信公众号[深度学习大讲堂]特约稿,转载请注明出处 虚拟框架杀入 从发现问题到解决问题 半年前的这时候,暑假,我在SIAT MMLAB实习. 看着同事一会儿跑Torch,一会儿跑MXNet,一会 ...
随机推荐
- TreeMap
TreeMap的put() ,remove() ,containsKey(), get() 全都尊重compareTo() 或者 compare() 是否返回0的结果 如果compareTo() 或者 ...
- ffmpeg relocation error
在向imx6移植ffmpeg后,一般的编解码操作没有问题,但是当从摄像头录视频时, ffmpeg -f video4linux2 -s 640*480 -r 10 -i /dev/video0 tes ...
- 基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系。
(转自:http://blog.sina.com.cn/s/blog_5eca668b01018949.html)定义一个类,来对远程X.509证书的验证,进行处理,返回为true.我们要自己定义一个 ...
- 前端学习实践笔记--JavaScript深入【1】
这一年中零零散散看过几本javascript的书,回过头看之前写过的javascript学习笔记,未免有点汗颜,突出“肤浅”二字,然越深入越觉得javascript的博大精深,有种只缘身在此山中的感觉 ...
- Zepto 使用过程中遇到的问题总结
简言之,zepto 是移动端的 jQuery,虽然很多地方不完全相同,不过详细的内容就不介绍了,主要把使用 zepto 时遇到过的问题总结一下. zepto 是分成多个模块的,最基础的文件不包含 to ...
- MacBook Pro/Air 下使用 linux ubuntu 系统 波浪号“~”变成其他 符号 的完美解决办法
打开终端,输入: sudo su - > /sys/module/hid_apple/parameters/iso_layout sudo su -需要root权限,所以使用前请注意已下载roo ...
- 自动获取MyEcilipse注册名和注册码的方法
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; //在MyEc ...
- HL7 2.6解析转XML(C#版)
HL7 2.6解析转XML(C#版) 项目中需要解析HL7,所以在网上找到解析代码,但错误很多,所以我修改了一下,测试好用. using System; using System.Collection ...
- 实数---Currency讲解
Currency 实际上是 Int64 的变体,Int64/10000 就是实际的值
- 编程模式之装饰模式(Decorator)
装饰模式由四个角色组成:抽象组件角色,抽象装饰者角色,具体组件角色,具体装饰者角色. 抽象组件角色:给出一个抽象接口,以规范"准备接受附加功能"的对象. 抽象装饰者角色:持有一个组 ...