[译]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,一会 ...
随机推荐
- cctype头文件中的一些内容
1. string 标准库 1.1初始化 string s1; 默认构造函数s1为空 string s2(s1); 将s2初始化为s1的一个副本 string s3(“value”); 将s3初始化为 ...
- xp和win7安装telnet服务
xp: 有些ghost版本的xp会精简掉telnet服务 首先telnet服务需要的几个文件: tlntadmn.exe tlntsess.exe tlntsvr.exe tlntsvrp.dll 文 ...
- 关于Core Animation(转载部分内容)
读者在浏览技术博客的时候,看到一篇关于Core Animation的介绍,觉得挺有用的,想分享给大家.原作者不知道是谁,嘿,所以就先不标注了,如有冒犯敬请原谅.不过笔者从中摘录部分内容分享一下. 其中 ...
- 字符串怎么换行 || 字符串中使用单引号时应该怎么写 || 保留两位小数 || 数字0在if中的意思是false || 什么情况下会会报undefined || null和undefined的区别 ||
换行的字符串 "This string\nhas two lines" 字符串中使用单引号时应该怎么写 'You\'re right, it can\'t be a quote' ...
- js的数据类型
关于js中的几大数据类型,估计大家都很熟悉:String.Number.Array.Bollean.Null.Undifine.Object: 从这其中,可以延伸出一个感念:基本数据类型和引用类型: ...
- C语言中如何产生随机数
今天看到一段小程序 ,里面用到随机数.才发现在C语言中产生随机数不像matlab中那么简单. C中也有rand()函数,但是rand()函数产生的数不是真正意义上的随机数,是一个伪随机数,是根据一个数 ...
- 控制input框不能更改里面的内容
<input type="text" disabled="true"/> 这个是给input设置一个属性.控制它可以不能改变里面的内容.已经试过了! ...
- 为eclipse添加tomcat插件(eclipse tomcat plugin)
打开站点:http://marketplace.eclipse.org/content/eclipse-tomcat-plugin 把Install拖到打开的eclipse的工作区中,即可下载安装. ...
- ASP.NET Misconfiguration: Request Validation Disabled
Abstract: Use the ASP.NET validation framework to prevent vulnerabilities that result from unchecked ...
- 利用nginx来屏蔽指定的user_agent的访问以及根据user_agent做跳转
对于做国内站的我来说,我不希望国外蜘蛛来访问我的网站,特别是个别垃圾蜘蛛,它们访问特别频繁.这些垃圾流量多了之后,严重浪费服务器的带宽和资源.通过判断user agent,在nginx中禁用这些蜘蛛可 ...