学习世界模型,通向AI的下一步:Yann LeCun在IJCAI 2018上的演讲
https://baijiahao.baidu.com/s?id=1606296521706399213&wfr=spider&for=pc
机器之心整理,机器之心编辑部。
人工智能顶会 IJCAI 2018 的主要议程于昨日在瑞典首都斯德哥尔摩开始。昨天上午,Facebook 首席人工智能科学家、纽约大学教授 Yann LeCun 在会上发表了近一个小时,以《Learning World Models: the Next Step towards AI》为主题的演讲,引起了人们的广泛关注。本文将对 LeCun 的演讲进行简要介绍。
Yann LeCun 开场介绍说,当前几乎所有的机器学习从业者在实践中使用的都是监督式学习:向机器展示大量的样本,然后告诉机器正确的答案与内部参数,然后就能做图像识别之类的任务。而过去几年,监督式学习有了极大的成功,应用也非常广泛。下图对比了传统机器学习与深度学习各自的特点。
深度学习的演讲回溯到 20 世纪 50 年代,当时 AI 社区尝试构建神经网络。建立这样略为复杂的系统,你需要两个基础的运算:线性的加权和与非线性的激活函数。这里,Yann LeCun 回顾了他们在 80 年代末期提出的用来识别数字的卷积神经网络 LeNet5,从最初的识别单个目标发展到了识别多个目标。
很快,他们就建立了一个识别手写文件的系统。在 1995 年,他们在 AT&T 完成了一个商业系统来读取支票账号。经历了如下图展示的过程。Yann LeCun 介绍了,这是上一波人工智能浪潮下的极大成功示例。之后,人们就对神经网络的研究失去了兴趣。一方面是准确率的原因,还因为很多领域当时没有足够多的数据来训练学习系统。
接着,Yann LeCun 介绍说,实际上在 1996-2001 年这段时间内,他并没有研究机器学习,而是在研究其它东西,尤其是图像压缩。
下图是在 21 世纪初加入 NYU 之后用模仿学习做的研究。这个研究激发了 DARPA 的 LAGR 项目。
Yann LeCun 随后回顾了卷积神经网络在不同任务中的应用,包括用于自动驾驶汽车的目标检测与语义分割等。这些基于视觉的任务绝大部分都需要卷积神经网络的支持,当然也离不开并行计算设备的支持。
第一个得到广泛关注与应用的卷积神经网络是 2012 年提出来的 AlexNet,它相比于 LeNet-5 最大的特点是使用更深的卷积网络和 GPU 进行并行运算。AlexNet 还应用了非常多的方法来提升模型性能,包括第一次使用 ReLU 非线性激活函数、第一次使用 Dropout 以及大量数据增强而实现网络的正则化。除此之外,AlexNet 还使用了带动量的随机梯度下降、L2 权重衰减以及 CNN 的集成方法,这些方法现在都成为了卷积网络不可或缺的模块。
随后在 ImageNet 挑战赛中,卷积网络的深度与性能都逐年提升。从 12 年到 16 年,参赛者使用的卷积神经网络不断加深,错误率也逐年下降。
如下所示,牛津大学 2014 年提出了另一种深度卷积网络 VGG-Net,与 AlexNet 相比,它的卷积核更小,层级更深。谷歌同年提出了 GoogLeNet(或 Inception-v1),该网络共有 22 层,且包含了非常高效的 Inception 模块。后来到了 15 年,何恺明等人提出的深度残差网络骤然将网络深度由十几二十层提升到 152 层,且性能大幅提高。
此外,去年提出的 DenseNet 进一步解决了 ResNet 遗留下的梯度问题,并获得了 CVPR 2017 的最佳论文。DenseNet 的目标是提升网络层级间信息流与梯度流的效率,并提高参数效率。它也如同 ResNet 那样连接前层特征图与后层特征图,但 DenseNet 并不会像 ResNet 那样对两个特征图求和,而是直接将特征图按深度相互拼接在一起。
那么为什么卷积神经网络在计算机视觉任务上如此高效?Yann LeCun 随后就对深度卷积网络的表征方式做了介绍。他表明对于图像数据来说,数据的信息与结构在语义层面上都是组合性的,整体图像的语义是由局部抽象特征组合而成。因此深度网络这种层级表征结构能依次从简单特征组合成复杂的抽象特征,如下我们可以用线段等简单特征组合成简单形状,再进一步组合成图像各部位的特征。
卷积神经网络在目标识别、目标检测、语义分割和图像描述等领域都有非常多的应用,而这些实现很多都依赖于深度学习框架。LeCun 随后重点介绍了 PyTorch 与 Detectron,其中 PyTorch 因为采用了动态计算图而受到了广泛的关注,它也是当前发展最快的框架之一。
如下所示,Facebook AI 研究院开源的 Detectron 基本上是业内最佳水平的目标检测平台。据 LeCun 介绍,该项目自 2016 年 7 月启动,构建于 Caffe2 之上,目前支持目标检测与语义分割算法,其中包括 Mask R-CNN(何恺明的研究,ICCV 2017 最佳论文)和 Focal Loss for Dense Object Detection(ICCV 2017 最佳学生论文)等优秀的模型。
最后,作为对卷积神经网络的总结,LeCun 带我们回顾了卷积神经网络的应用,包括医疗影像分析、自动驾驶、机器翻译、文本理解、视频游戏和其它学科研究。
Yann LeCun 谈到当前深度学习缺乏推理能力,因此未来的一个重点发展方向就是深度学习和推理的结合。
人们已经在多个方向上进行尝试。例如,在网络中增加记忆增强模块,典型的工作在下图中列出,这是实现推理的第一步。在对话模型中,由于对话的轮换和非连续的特点,通过增强记忆,有助于预测能力的提高,进而能实现长期而有效的对话。
为什么要强调记忆建模的重要性呢?在强化学习中,无模型的强化学习训练需要大量的尝试才能学会一项任务。
因此此类方法在游戏中表现良好,如 FAIR、DeepMind、OpenAI 等之前都已在许多游戏上实现接近甚至超越人类的 AI 系统,但这些系统并没有达到现实应用的水平。
因为现实环境远远比游戏中的环境要复杂得多,无论是变量复杂度还是不确定性方面,对此,无模型的强化学习系统面对的探索空间是相当巨大的。而且,不像 AlphaGo 那样可以在计算机上模拟成千上万次比赛,现实世界环境是无法被「加速」的,有些试验还涉及很大的风险,这也大大限制了系统的训练资源。
那么目前来看,人工智能到底缺少了什么?监督学习需要太多的样本,强化学习需要太多的尝试,AI 系统缺乏常识。
Yann LeCun 总结了一下这两类系统的缺点:缺乏独立于任务的背景知识;缺乏常识;缺乏预测行为后果的能力;缺乏长期规划和推理的能力。简言之就是:没有世界模型;没有关于世界运行的通用背景知识。用更一般的语言来讲就是,目前的机器无法在心里想象(表征)世界,而只是像僵尸一样被气味驱使着(无意识地)行动。记忆建模只是一方面,建立完整的世界表征才是我们真正需要的。
在现实应用层面,Yann LeCun 总结道,利用现有的监督学习和强化学习技术,我们可以在自驾汽车、医疗图像分析、个性化医疗、语言翻译、聊天机器人(有用但还很蠢)、信息搜索、信息检索、信息过滤以及其它领域中取得不错的进展,但仍然无法实现常识推理、智能个人助理、智能聊天机器人、家庭机器人以及通用人工智能等。
然后,Yann LeCun 指出我们可以从婴儿的学习方式上获得启发。婴儿对外部世界的概念学习大部分是通过观察,仅有小部分是通过交互,而视觉比触觉、体感等能捕获更多、更完整的外部信息。那么机器如何做到这一点?其实,这种情况不止发生在人身上,动物也是如此。LeCun 随后展示了一幅婴儿和大猩猩观看魔术的图,并解释说,当违反世界模型,也就是当我们观察到一些不寻常、与世界模型不匹配的东西时,我们的注意力就会被调动(如婴儿和大猩猩看到魔术表演会大笑就是因为世界模型被违反了)。
接下来,LeCun 解释了突破强化学习现状的解决方法:自监督学习,它能通过输入的某一部分预测其它部分。在空间层面上包括图像补全、图像变换等,在时间层面上包括时序数据预测、视频帧预测等。
Yann LeCun 总结了三类学习范式,分别是强化学习、监督学习和自监督学习,相比于强化学习和监督学习,自监督学习将输入和输出当成完整的整体。它们的区别和联系在于反馈信息的逐渐增多,模型表征复杂度、适用任务类型也大幅增加,同时任务中涉及的人类工程比重也大大减少,意味着自动化程度的增加。
LeCun 还用之前经常使用的蛋糕比喻来说明三者的关系,之前蛋糕胚代表的是无监督学习,现在则被换成自监督学习。
Hinton 在自监督学习领域探索了多年,LeCun 之前一直持怀疑态度,现在终于认可了这个方向。
机器学习的未来不会是监督学习,当然也不会纯粹是强化学习,它应该是包含了深度模块的自监督学习。
那么下一个问题是,自监督学习能够产生一般的背景知识吗?这里重点是模型需要推断出背景知识,它需要从真实世界收集的背景知识推理出当前它希望预测的任务。如下 LeCun 举了一个例子,如果接收到一个自然语句,模型应该推断出当前场景的各种背景知识。
对于基于模型的经典最优控制,我们可能需要初始化一个序列来模拟世界,并通过梯度下降调整控制序列来最优化目标函数。而目前我们可以通过强化学习的方式模拟世界,这些模型不仅需要预测下一个可能的动作,同时还需要预测一系列可能的未来。
接下来 Yann LeCun 介绍了使用对抗训练的视频预测。他首先展示了预测无监督学习。人类是很擅长预测的,然而机器很难预测未来会发生什么。近年来的研究中出现了一些使用「对抗训练」的成功案例,但是仍有很长的路要走。Yann LeCun 用一个纽约公寓的视频示例进行举例说明。
语义分割空间的视频预测
这部分 Yann LeCun 介绍了当前语义分割预测的现状。
Latent-Variable Forward Models for Planning and Learning Policies
下图展示了用于推断动作和潜在变量的模型架构。
然后 Yann Lecun 展示了一个现实世界的真实案例。
最后,Yann Lecun 总结了技术和科学之间的互相驱动和促进,如望远镜和光学、蒸汽机和热力学、计算机和计算机科学等。并提出了疑问:什么相当于智能的「热力学」?
人工智能和自然智能背后是否存在底层原则?学习背后是否存在简单的准则?大脑是否是进化产生的大量「hack」的集合?
学习世界模型,通向AI的下一步:Yann LeCun在IJCAI 2018上的演讲的更多相关文章
- PlaNet,使用图像输入来学习世界模型
Google AI团队与DeepMind合作,上周宣布了一个名为PlaNet的新的开源“Deep Planning”网络. PlaNet是一个人工智能代理,它只使用图像输入来学习世界模型,并使用这些模 ...
- 对话Facebook人工智能实验室主任、深度学习专家Yann LeCun
对话Facebook人工智能实验室主任.深度学习专家Yann LeCun Yann LeCun(燕乐存),Facebook人工智能实验室主任,NYU数据科学中心创始人,计算机科学.神经科学.电子电气科 ...
- Yann LeCun清华演讲:深度学习与人工智能的未来
2017年3月22日下午,Facebook人工智能研究院院长.纽约大学终身教授Yann LeCun在清华大学大礼堂为校内师生以及慕名而来的业内人士呈现了一场主题为<深度学习与人工智能的未来(De ...
- tensorflow学习笔记——模型持久化的原理,将CKPT转为pb文件,使用pb模型预测
由题目就可以看出,本节内容分为三部分,第一部分就是如何将训练好的模型持久化,并学习模型持久化的原理,第二部分就是如何将CKPT转化为pb文件,第三部分就是如何使用pb模型进行预测. 一,模型持久化 为 ...
- 【转载】如何自学深度学习技术,大神Yann LeCun亲授建议
编者按:Quora 上有网友提问:自学机器学习技术,你有哪些建议?(What are your recommendations for self-studying machine learning), ...
- ASP.NET MVC学习之模型验证篇
一.学习前的一句话 在这里要先感谢那些能够点开我随笔的博友们.慢慢的已经在博客园中度过一年半了,伊始只是将博客园作为自己学习的记录本一样使用,也不敢将自己的随笔发表到博客园首页,生怕自己的技艺不高,反 ...
- .NET MVC学习之模型绑定
ASP.NET MVC学习之模型绑定(2) 继ASP.NET MVC学习之模型绑定继续 3.手工调用模型绑定 很多情况下我们都是通过形参的方式接收来自http流中的数据,这看似是完美的,但是缺少了 ...
- openpose模型在AI challenge人体骨骼关键点检测的表现
因为之前正好看了CMU在CVPR2017上的论文<Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields>, ...
- ASP.NET MVC学习之模型验证详解
ASP.NET MVC学习之模型验证篇 2014-05-28 11:36 by y-z-f, 6722 阅读, 13 评论, 收藏, 编辑 一.学习前的一句话 在这里要先感谢那些能够点开我随笔的博友们 ...
随机推荐
- Western Subregional of NEERC, Minsk, Wednesday, November 4, 2015 Problem A. A + B
Problem A. A + B 题目连接: http://opentrains.snarknews.info/~ejudge/team.cgi?SID=c75360ed7f2c7022&al ...
- 初始化collectionViewCell
#import <UIKit/UIKit.h> @interface TonyCollectionViewCell : UICollectionViewCell @property UII ...
- springmvc.xml 上传文件的配置
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.Comm ...
- Sublime Text下使用SFTP/FTP插件
一.前言 本文主要记录了Sublime Text编辑器下的SFTP/FTP的安装使用,方便linux和windows下的文件编辑,只是简单的记录,有不足之处,还望指教. 二.Linux和windows ...
- Java中的锁(转)
Java中的锁 锁像synchronized同步块一样,是一种线程同步机制,但比Java中的synchronized同步块更复杂.因为锁(以及其它更高级的线程同步机制)是由synchronized同步 ...
- POJ 1386 Play on Words (有向图欧拉路径判定)
Play on Words Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 8768 Accepted: 3065 Des ...
- swddude -- A SWD programmer for ARM Cortex microcontrollers.
Introducing swddude I love the ARM Cortex-M series of microcontrollers. The sheer computational po ...
- error: internal error: unable to execute QEMU command 'migrate': this feature or command is not cur
感谢朋友支持本博客,欢迎共同探讨交流,因为能力和时间有限.错误之处在所难免,欢迎指正. 假设转载.请保留作者信息. 博客地址:http://blog.csdn.net/qq_21398167 原博文地 ...
- javascript:addEventListener
addEventListener 用于注册事件处理程序,IE 中为 attachEvent,我们为什么讲 addEventListener 而不讲 attachEvent 呢?一来 attachEve ...
- 下载java生成PDF
/** * 下载打印PDF * @param request * @param response * @throws ServletException * @throws IOException * ...