从NIPS2014大会看机器学习新趋势

微软杰出科学家 John
Platt
本文译自:Machine Learning Trends fromNIPS
2014
编者按:John
Platt是微软的杰出科学家,也是微软在机器学习领域的领军人物。加入微软17年,一直在机器学习领域埋首耕耘。Platt也是SVM最快的加速算法SMO的提出者。NIPS大会是机器学习领域两大重要学习会议之一,另外一个是ICML。接下来的文章中Platt将和大家分享他所观察到的领域内令人激动的三大趋势。
深度学习和神经网络研究继续保持快速增长的势头
深度学习是通过数据自动构建深度模型的过程。之所以称之为“深度”是因为这些模型的计算需要经过多个步骤,而不是仅仅通过一两个简单步骤就可以解决的。深度学习一般都是利用神经网络,通常都使用矩阵乘法和非线性构建建立它们的功能模型来完成的。
自2011年以来,深度学习的发展速度变得十分迅速。比如在图像识别方向,深度学习取得了里程碑式的进展,对于图像中物体的识别的错误率以每年40%的比例下降。深度学习在图片方面的运用已不再仅限于图片分类。
但是,目前机器学习面临的一大挑战是对强耦合输出的整体估计。比如说,当你在翻译一句话的时候,你并不会一个词一个词地翻译,而是会从整体的句子结构出发。
之前,当机器学习算法估算出耦合输出时,一般会再次进行显式的推理计算,这样就会导致运行速度十分缓慢。最近出现了一些能让神经网络进行隐式推理计算的研究成果,实在令人激动。在这次的NIPS大会中,IlyaSutskever演示了如何用深度LSTM模型进行机器翻译,结果十分令人满意,可以与目前最先进的机器翻译系统媲美。Ilya的系统相对来说更综合一些,它可以将输入和输出的顺序进行对应。此外,大会上研究者们还展示了一些其它对跨时间、空间进行耦合输出的研究。
JasonWeston就在大会上展示了一篇论文,介绍了如何利用“内容寻址(content-addressable)”记忆来进行智能问答。神经图灵机(Neural
Turing Machine)也有类似的工作原理。
如今深度学习备受关注,研究员们也在努力探索它背后的奥秘。Ba和Caruana的一篇NIPS论文中解释道,一旦深度网络系统开发完备后,浅网络便可以根据深度网络的输出来学习相应功能。浅网络无法直接根据数据进行功能学习,这也意味着深度学习是关键所在。
很多人(包括我们)在相关任务中都采用深神经网络的中间层作为特征探测器。此次NIPS大会有一个很精彩的演讲,演讲者做了一系列各种各样的实验来研究这种模式。他们培养了一组有500个视觉类别的深度网络,保持前N层不变,然后再培训的一组不同的500个类别
。他们发现,如果使用中间层再培训上层,你会由于次优的训练而失去准确度。而如果你使用顶层,你则会由于功能过于具体而失去准确度。微调一下都会所有东西都会失去一些准确度。知道这一点是很有用的。
大规模的学习将变得更加可行
大规模的训练(涉及各种模型)会持续成为一个很有趣的研究分支。虽然很多人都没有1TB以上的训练集,但是使用大规模的数据模型往往是非常有商业价值的。
机器学习的训练是参数优化的一种形式:一个机器学习模型可以被看作一组具有被调节到最佳状态旋钮的训练集。
大规模的训练就会变成大规模的最优化。尤里涅斯捷罗夫(Yurii
Nesterov) ,著名优化专家,在一个有意思的演讲中谈及了关于如何解决某些机器学习中参数的数量出现对数的优化问题。
当机器训练在多台计算机分别进行时,要尽量减少在计算机之间的通信量是十分具有挑战性的一件事。训练时间通常是由通信时间决定的。
这次大会上还有一个很不错的演讲,介绍了通过分布特征进行筛选的方法,所有节点之间只需要两个阶段的通信模式。
在我看来其前景十分可观。
对机器学习实践中限制因素的研究
我在这次NIPS大会上发现的另一个令人惊喜的趋势是,如今越来越多的算法和理论研究者开始研究解决机器学习实践者在实践过程中遇到的问题。
在过去的几年里,对抗性训练(adversarial
training)一直是让人饶有兴趣的研究主题。在对抗训练中,研究人员不会试图通过一个概率分布来为这个世界建模,而是扮演一个试图让算法表现不佳的反方。这样研究人员便可以通过最佳状态的反方的数据训练来衡量自己的模型。
很多对抗性的训练工作都相当有趣。在此次NIPS
大会上,我看到了一些体现了对抗性训练实用性的展示。对抗性的训练的本质便是提供有可能出现的最坏情况。如果你创建了一个适用于“简单数据(easydata)”
的算法,通常情况下你不会得到最坏的情况。但是,在大会主会场上展示的一篇论文却提到,你可以有你的蛋糕(在简单数据上表现良好)并且吃掉它(却也能得到最坏的情况)。此外,德鲁·巴格内尔(Drew
Bagnell)在强化学习研讨会(Reinforcement Learning
workshops)的演讲中提到要学会在现实世界中的控制策略,对抗性学习是必须的(因为你应该把你自己的错误决定如同反方因素来对待)。
在一个关于软件工程的机器学习研讨会上,有来自LinkedIn
,Microsoft,
Netflix,和Facebook的演讲者,分享他们是如何将机器学习运用于产品开发的经历。一些来自谷歌的工程师合写了一篇关于机器学习带来的科技债务的犀利论文,我强烈推荐相关领域的人能读一读这篇文章。
------------------------------------------------------------------------------------------
欢迎关注
微软亚洲研究院官方网站:http://www.msra.cn
微软亚洲研究院人人网主页:http://page.renren.com/600674137
微软亚洲研究院微博:http://t.sina.com.cn/msra
微软亚洲研究院微信:搜索“微软研究院”或扫描下方二维码:

从NIPS2014大会看机器学习新趋势的更多相关文章
- 系统架构:Web应用架构的新趋势---前端和后端分离的一点想法
最近研究servlet,看书时候书里讲到了c/s架构到b/s架构的演变,讲servlet的书都很老了,现在的b/s架构已经不是几年前的b/s架构,其实b/s架构就是web应用开发,对于这样的架构我们现 ...
- Web应用架构的新趋势
系统架构:Web应用架构的新趋势---前端和后端分离的一点想法 最近研究servlet,看书时候书里讲到了c/s架构到b/s架构的演变,讲servlet的书都很老了,现在的b/s架构已经不是几年前 ...
- 掌握新变革,解密新趋势|msup第29届MPD软件管理工作坊成功召开
由msup主办的第29届MPD软件管理工作坊于7月9日-7月10日在北京国家会议中心举行,25位一线讲师,近500名软件研发工作者共同探讨软件研发与科技发展趋势. 随着移动互联网的发展,软件开发行业的 ...
- LiveVideoStack Meet|深圳 多媒体开发新趋势
2018年初始,音视频技术生态并不平静,Codec争夺愈加激烈,新一代标准的挑战一浪高过一浪:WebRTC的定版也为打通浏览器.移动端乃至IoT带来了机会:此外AI.区块链技术的兴起,催化着与多媒体领 ...
- Alink漫谈(二) : 从源码看机器学习平台Alink设计和架构
Alink漫谈(二) : 从源码看机器学习平台Alink设计和架构 目录 Alink漫谈(二) : 从源码看机器学习平台Alink设计和架构 0x00 摘要 0x01 Alink设计原则 0x02 A ...
- 《2016ThoughtWorks技术雷达峰会----雷达新趋势》
雷达新趋势 徐昊,ThoughtWorks中国区CTO 1.Open Source open source 已经从一个简简单单的软件代码组织方式变成一种文化,一种运动.当谈到Open Sour ...
- [转]Web3.0时代,企业知识管理新趋势
[转自http://www.amt.com.cn/html/ManageFront/AMTPoint0/2014/0716/1370.html] Web3.0时代,企业知识管理新趋势 2014-07- ...
- java web框架发展的新趋势--跨界轻型App
“跨界(cross over)在汽车界已然成风,将轿车.SUV.跑车和MPV等多种不同元素融为一体的混搭跨界车型,正在成为汽车设计领域的新趋势.从个人而言,当包容.多元的审美要求和物质要求越来越强烈时 ...
- Baccarat凭什么能成为DeFi后时代火爆新趋势?
在各币种经历涨涨跌跌以后,DeFi后时代已然来临.那么,当前DeFi市场中哪个项目更被市场生态建设者看好呢?毫无疑问,Baccarat会成为最被看好的DeFi项目. Baccarat采用了独特的共识算 ...
随机推荐
- JavaScript学习总结(七)
这一讲我们来学习DOM编程(十分重要),有了DOM编程,我们就可以操作任意的HTML元素了. DOM,文档对象模型 一个html页面被浏览器加载的时候,浏览器就会对整个html页面上的所有标签都会创建 ...
- 在mybatis框架中,延迟加载与连表查询的差异
1.引子 mybatis的延迟加载,主要应用于一个实体类中有复杂数据类型的属性,包括一对一和一对多的关系(在xml中用collection.association标签标识).这个种属性往往还对应着另一 ...
- OracleXE 11g user莫名过期
参考大大的 环境sqlplus 1.sysdba登陆 SQL>conn sys as sysdba password 2.查看用户状态 SQL>select username,accoun ...
- JavaSE--对象克隆
当拷贝一个变量时,原始变量与拷贝变量引用同一个对象,这就是说,改变一个变量所引用的对象将会对另一个变量产生影响. 如果创建一个对象的新的 copy,他的最初状态与 original 一样,但以后将可以 ...
- 洛谷 P3371 【模板】单源最短路径(弱化版)(dijkstra邻接链表)
题目传送门 解题思路: 传送门 AC代码: #include<iostream> #include<cstdio> #include<cstring> using ...
- 利用GetCharWidth32获取字符串宽度2
/////////////////////////////////////////////////////////////// // 04FirstWindow.cpp文件 #include < ...
- vi——终端中的编辑器
vi--终端中的编辑器 目标 vi 简介 打开和新建文件 三种工作模式 常用命令 分屏命令 常用命令速查图 01. vi 简介 1.1 学习 vi 的目的 在工作中,要对 服务器 上的文件进行 简单 ...
- 多标签图像分类任务的评价方法-mAP
http://blog.sina.com.cn/s/blog_9db078090102whzw.html 多标签图像分类(Multi-label Image Classification)任务中图片的 ...
- elasticsearch minhash 测试应用
上一章看了代码实现,算是搞明白了各参数的意义,现在开始测试,为方便以ik分词示例(对elasticsearch支持较好,测试操作简单) 首先建index,自定义 analysis ik分词用 ik_s ...
- Django静态文件配置-request方法-ORM简介-字段的增删改查
app的创建注意事项: 在Django新创建的app要在seetings.py中添加注册,才会生效 创建app:django-adminapp an startapp app名称 或者 python3 ...