微软亚洲研究院刘铁岩博士:迎接深度学习的「大」挑战(文末赠书)

2018 年 2 月 21 日 AI科技评论 给你送书的

AI 科技评论按:本文根据刘铁岩博士在中国人工智能学会 AIDL 第二期人工智能前沿讲习班*机器学习前沿所作报告《迎接深度学习的「大」挑战》编辑整理而来,发文前已得到刘铁岩博士的亲自删减校正。

刘铁岩

刘铁岩博士,微软亚洲研究院首席研究员,领导机器学习和人工智能方向的研究工作。同时他也是美国卡内基-梅隆大学(CMU)客座教授、英国诺丁汉大学荣誉教授、中国科技大学、中山大学、南开大学的博士生导师。刘博士的的先锋性工作促进了机器学习与信息检索之间的融合,被国际学术界公认为「排序学习」领域的代表人物,他在该领域的学术论文已被引用近万次,并受 Springer 出版社之邀撰写了该领域的首部学术专著(并成为 Springer 计算机领域华人作者十大畅销书之一)。近年来,刘博士在博弈机器学习、深度学习、分布式机器学习等方面也颇有建树,他的研究工作多次获得最佳论文奖、最高引用论文奖、研究突破奖;被广泛应用在微软的产品和在线服务中、并通过微软认知工具包(CNTK)、微软分布式机器学习工具包(DMTK)、微软图引擎(Graph Engine)等项目开源。他曾受邀担任了包括 SIGIR、WWW、KDD、ICML、NIPS、AAAI、ACL 在内的顶级国际会议的组委会主席、程序委员会主席、或领域主席;以及包括 ACM TOIS、ACM TWEB、Neurocomputing 在内的国际期刊副主编。他是国际电子电气工程师学会(IEEE)院士,美国计算机学会(ACM)杰出会员,中国计算机学会(CCF)学术工委,中文信息学会(CIPS)信息检索专委会副主任。

以下为刘铁岩博士所做的现场演讲的第一部分,主要介绍了近年人工智能所取得的应用成果;什么是深度神经网络以及它所带来的挑战等问题。

非常荣幸今天有机会和大家分享我们的研究成果。我知道这几天课程安排得特别满,一天四场报告,大家有点废寝忘食的感觉,非常辛苦。希望大家听了我们的报告,能够有所收获。

今天我们跟大家分享的题目是:「迎接深度学习的大挑战」。

为什么要讲这个题目呢?深度学习这几年改变了很多行业的状态,今天上午张老师应该也讲了很多关于神经网络的话题,包括怎么学习深度神经网络的结构。今天我会从另一个角度看一看深度学习到底有哪些挑战,这些挑战怎么用学术研究的方式加以解决。

微软亚洲研究院介绍

在此之前,我准备了两张 PPT,介绍一下微软亚洲研究院。

微软亚洲研究院成立于 1998 年,有 200 多名全职的研究人员,和来自于各大高校的实习生。微软亚洲研究院虽然隶属于公司,但是日常运营的形式很像大学,有很多非常有水平的研究员做导师,有非常高质量的学生跟我们做研究。我本人在微软亚洲研究院负责人工智能和机器学习的领域,我们有十几位全职的研究人员从事这方面的研究,如果大家对我们组感兴趣或者想进行合作,欢迎和我联系。

我们组的研究方向很宽,包括排序学习、大规模机器学习、深度学习、增强学习、机器学习理论等等。除了发表了百余篇论文,被引用万余次以外,我们还致力于把研究成果分享给同仁,所以在过去几年间我们主导、或者参与了多个开源项目,比如微软认知工具包(CNTK),微软分布式机器学习工具包(DMTK)、微软图引擎(Graph Engine) 等等。如果大家对我们的最新动态感兴趣,关注我们的公众号、微博,了解很多新鲜出炉的微软亚洲研究院的故事。

近年来人工智能所取得的应用成果

接下来我们进入今天报告的正题。

我们这次整个 AIDL 都是关于人工智能和机器学习的,类似的 PPT 应该已经出现了很多次,所以关于什么是人工智能,人工智能曾经走过什么道路,这里我不想再重复。总之,人工智能在过去的 60 年里,几起几落,每一次所谓的人工智能寒冬多半都是因为公众和政府对人工智能的期望值太高。因此,作为人工智能行业的参与者,我们有必要提醒公众、提醒政府、提醒产业,对于人工智能技术保持冷静,不要把它过早捧杀。

不过话说回来,回顾过去的十几年,人工智能确实取得了一些前所未有的成果。接下来我们就来看几个例子。深度学习的成功最早是在类似语音图像这些领域取得的。

首先,语音识别,因为有了大量的训练数据,有了 Deep Learning 的方案,逐步达到了人类的精度。这张 PPT 展示的是去年 10 月份我们微软研究院对外宣布的一个语音识别方面的突破性进展。


这是历史上第一次,机器达到了和人没有区别的程度,在个人对话的场景下,取得了非常低的错误率(5.9%)。这个模型是用微软认知工具包(CNTK)训练出来的,大家如果对语音的研究有兴趣,可以试用一下 CNTK,它是语音识别领域被最广泛使用的深度学习工具包。

其次,图像方面最近也取得了很大的进展、2015 年,来自我们微软亚洲研究院的 ResNet 技术,在 ImageNet competition 里取得了冠军,并且超过了人类的识别精度。像 ImageNet 这样包含上千个类别的图像数据,识别起来其实还是有难度的。即便是人,看一眼也不一定都能分辨出来。

有研究表明,人类的错误率大约是 5.1%,而 ResNet 达到了将近 3.5%的错误率。也就是说对于特定领域、特定类别的问题,机器已经超过了人的图像识别能力。这个成功后来又延续到了图像分割领域,图像分割是比图像识别更复杂的任务,不仅要告诉大家这张图像有什么,还要把它圈出来、把边界找到。2016 年微软亚洲研究院的技术再次在这个更难的任务上力拔头筹、获得冠军。


上面提到的人工智能技术大多已经被微软产业化,下面给大家放一个视频,是介绍微软认知服务的,之前网上几个很出名的爆款应用,比如 How old 测颜龄,都是基于微软认知服务开发出来的。

 

视频中展示场景,包括了前面提到的语音识别、图像识别、文字识别等等。有了微软认知服务,大家如果想做一个创新应用,就不需要对深度学习有非常深的了解,不需要在云上构架一个庞大的服务器集群来训练模型,只要调用一下认知服务的 API,就可以实现很多神奇的功能。

除了前面提到的语音和图像以外,在文本理解、机器翻译等方面,人工智能技术最近也取得了很大的进展。

微软有很多与此相关的产品,比如 Skype translator、Microsoft translator,可以同时支持多人、多点语音、多语言的实时同声传译。接下来给大家展示的视频是关于 Skype translator 的,讲的是一个外国摄影师和他的中国向导之间的故事。

其实这项技术早在2012年微软亚洲研究院主办的「21 世纪计算大会」上就被展示过。当时我们的研究副总裁 Rick Rashid 用英文做了一个主题演讲,大家听到的是机器自动同声传译出来的中文表达,听起来就像他真的会讲中文一样。

除了上述认知方面的进展,最近人工智能在博弈方面也取得了很大的进步。比如用人工智能来打电子游戏,用人工智能来下围棋等等。当年 AlphaGo 战胜李世乭的时候街头巷尾都在讨论。而今 master 横扫几十位人类高手,又掀起了大家对人工智能的新认识。

左边这张图是关于用人工智能技术来玩 Atarti game 的。当使用强化学习技术不断地尝试玩这个游戏,一开始机器只会学到一些基本技能,玩着玩着逐渐发现一些高级的策略,甚至获取了超过常人的技巧,比如把小球打到砖块上面去,通过不断回弹实现得分。

右边这张图是关于围棋的。围棋本身的策略空间非常大,每落一子,棋盘上都有很多不同的选择,如果再考虑到后手,则对应于一个非常庞大的搜索树。对这个搜索树进行遍历是远远超过目前计算机的计算能力的,所以大家曾一度认为在围棋这件事情上机器很难战胜人类。但是,最新的人工智能技术巧妙地回避了遍历,像人一样使用了 value network 来对搜索树进行有效的剪枝,从而在以高概率保留好棋的前提下,把计算的复杂度降低到计算机可以承受的范围内,并且最终战胜了人类的世界冠军。

深度学习技术

前面回顾的所有这些人工智能领域的大事件,背后都离不开「深度学习」技术。

深度神经网络及其优化方法简介

那么什么是深度学习呢?虽然早期大家提 DeepLearning 这个概念的时候,会联想到很多不同的模型,但是经过多年的演化,目前最主流的深度学习模型就是所谓的深层神经网络。深层神经网络指的是一个有至少包含两个隐层的神经网络。很多实用的深层神经网络甚至会包含成百上千个隐层。

简单起见,我们先举一个有三个隐层的深层神经网络作为例子。从图中可以看到,神经网络包含很多神经元,以及它们之间的拓扑连接。每个神经元做的事情非常简单,就是把上一层所有跟它相连的神经元的输出放在一起,做加权求和,然后再进行非线性变换(激活函数)。在神经元,以及神经元之间的连边上都可以有参数,比如边权和偏差等。

那么有了深层神经网络以后,怎么对它进行学习呢?常用的方法叫做经验风险最小化,也就是最小化神经网络在训练集里所有样本上的损失函数之和。为了最小化经验风险,一个最简单的方法是梯度下降法。但是,我们知道梯度下降法很容易陷入局部极小点,而且它的随机版本可能不收敛,需要通过减小学习率来控制训练过程的收敛性。为了解决这些问题,人们又提出了很多变种的优化算法,比如 SVRG 等等。

两种特殊的深度神经网络

了解了什么是深度神经网络,以及如何对其进行优化,我们来介绍两种特殊的深层神经网络。

首先是卷积神经网络,之所以称其为卷积神经网络,是因为它的一些基本单元非常像信号处理里的卷积操作。其实,卷积神经网络的提出,也有很多仿生学的背景在里面。咱们回想一下自己做图像识别的过程:

如果给你一幅很大的图片,要在里面识别出某个特定的人,比如张三。假定我们的脑子里有张三的形象,但是不知道他到底在图片的哪个部位,我们会怎么做呢?一个很简单的方式就是从这张图像左上角开始扫描,每次扫描都用我们脑子里的模式去匹配一下看有没有张三,没有的话往后移动一个位置,再进行下一次扫描。整个图像扫描过程中,我们对张三识别的模式是没有改变的,参数是固定的,只是在空间不断平移,这其实是所谓卷积神经网络最基本的思想。

具体来讲,卷积神经网络有三个特点:

  • 一是使用卷积滤波器;

  • 二是参数共享;

  • 三是通过pooling操作实现平移不变性。

如果我们把卷积操作和 Pooling 操作级联在一起,不断循环往复地构建网络结构,这就会形成深层的卷积神经网络。给大家看一个例子,LeNet,它在输入图像的基础上,进行了多次卷积和 pooling 操作,最后在实现有效的信息抽取之后,使用全连接的网络对这些信息进行最终的分类。

第二个特殊的深层神经网络叫做循环神经网络。它的提出也和仿生学有关。咱们想一下自己是如何读书看报的。我们一般是从每段文字的第一个字开始,一边往后看,脑子里一边利用之前看过的内容的记忆,对当前看到的文字进行理解。如此循环往复,最后把整个段落的意义全都弄清楚。循环神经网络也做了同样的事情,它在标准神经网络的基础上引用了一个 memory unit,用来存储和之前输入有关的信息,以帮助我们更好地理解未来的输入。

为了更形象地理解循环神经网络,我们把它展开来看。展开之后这些输入就带有时间标签了,比如说这个是你看到的第一个词 X0,接下来看到第二个词 X1,不断的往下移动。每次看到一个新输入之后,就会对它做某种处理,产生一些对它的认识,并且放到 memory 里,当看到下一个词的时候,不仅仅针对这个词本身进行理解,还会参照上一个词对应的 memory;这样不断地循环下去,就得到了所谓的循环神经网络。循环神经网络和卷积神经网络有点类似,也会在不同阶段共享参数。

理论上,循环神经网络可以展开成无限深的网络,但是这会带来学习的麻烦。实践中,我们通常进行有限深度的展开,也就是所谓的 BPTT 技术。展开之后就可以把它当成标准的神经网络用梯度下降的方法来进行参数学习了。

深度神经网络所带来的挑战

到此为止,我们做了一个快速的神经网络简介:我们介绍了什么是神经网络,两个特殊的网络结构,以及如何学习它们的参数。不管是全连接的网络、卷积网络还是循环网络,实际中常常会用到很深的层次,比如成百上千层,那么当深度增加的时候,有什么好处,又是否会带来一些新的挑战呢?

前面我们提到过神经网络的 universal approximation theorem, 它似乎告诉我们只要有一个隐层,神经网络已经可以具备几乎无限的表达能力了。那为什么还要使用那么多的隐层呢?近几年有很多的理论研究表明,当层数增加时,想要取得同样的表达能力,对隐节点总数的要求会变小很多,因此也就会带来更高的学习效率和更小的学习难度。 

反过来看,当隐节点的个数相同的时候,深层网络的表达能力会比浅层网络更强,因此学习能力也就更强。当然,天下没有免费的午餐,深层网络的好处是有代价的,当网络很深的时候,用梯度下降来进行学习时,常常会遇到一些技术难题。接下来这张PPT就展示了两个常见的麻烦。

  • 第一个麻烦是 Overfitting,它和表达能力是一体两面。当你的网络有非常强的表达能力的时候,就更容易过拟合训练数据,而在未见的测试数据上表现变差。

  • 第二个麻烦叫 Gradient vanishing,当网络很深的时候,预测误差很难通过梯度有效地传导到网络的底层,从而使得网络参数训练不充分。

为了更好地解释这种现象,我给大家举一个例子。这是一个细长型的深度神经网络。网络参数包括边权 w 和偏差 b。我们以 b1 这个参数为例,损失函数对它求导的结果如图所示。在这个连乘式里,sigma‘是激活函数的导数,每经过一个隐层,就会出现一项 sigma‘。

这里画了一个常见的 sigmoid function 的导数,它的最高点是在输入为0的时候取得的,最高点取值是 0.25,如果你的输入不是 0,其取值会更小。大家知道,当我们把一长串很小的数连乘起来,它的结果会很快衰减到接近 0,而在当前的参数上加上一个几乎为 0 的梯度,对模型是不会有什么改变的,这就解释了为什么深层网络经常训练不充分。

为了解决这两个典型的麻烦,人们提出了一系列的技术手段。比如:

DropOut/DropConnect,其基本思想是在训练过程中引入一些随机因素,让神经网络模型不会那么狠地拟合到训练集上去。为此,可以在训练过程中随机删除一些神经元节点,或者随机删除一些连边。有人证明了,通过 DropOut,可以有效降低神经网络的容量(Rademacher Average),从而避免过拟合,取得更好的泛化能力。

另外一个技术是 Batch Normalization,也可以有效缓解 overfitting 和 Gradient vanishing 的问题。它其实是受到早期人们对神经网络的输入进行白化处理的启发。不同点在于它对深层神经网络的每一层都进行白化处理,而且是参数化的白化。也就是在一个 mini batch 里计算均值和方差,然后对信号进行 0 均值、标准方差的变换。这样做的好处是可以去除不同 mini batch 之间的差异,使得数据变得更加统一,提高泛化性能;同时,由于激活函数的输入被 0 均值化,也会提高其导数的幅度,从某种程度上减缓 gradient vanishing 的问题。

福利来了!

本次我们为大家准备了 3 本深度学习的精选好书!留言点赞数前 3 的用户可以获得由华章科技提供的赠书 1 本,可从以下 3 本图书中挑选,活动截止时间为 2 月 24 号 12 点

《认知计算与深度学习:基于物联网云平台的智能应用》

一本书解决你的技术焦虑,适合多门前沿计算机课程

机器学习、深度学习、认知计算、5G、大数据、云计算、物联网……技术热点层出不穷,站在计算机产业的风口,我们学什么?怎么用?书中全面涵盖这些热点的必备知识,为深入学习奠定基础。内容新颖有趣,实例丰富。可纵览不同技术的特点和发展趋势,开阔视野。

《白话深度学习与TensorFlow》

技术畅销书《白话大数据与机器学习》姊妹篇,YY大数据专家撰写,李学凌、朱频频、王庆法、王海龙联袂推荐。以插图、类比和大量示例趣说深度学习网络的关键理念、算法与TensoeFlow实践,涵盖BP网络、CNN、RNN、受限玻尔兹曼机、深度残差网络、强化学习、对抗学习,以及多个有趣应用。

《自然语言处理与深度学习:通过C语言模拟》

本书详细介绍了将深度学习应用于自然语言处理的方法,并概述了自然语言处理的一般概念,通过具体实例说明了如何提取自然语言文本的特征以及如何考虑上下文关系来生成文本。

出版社介绍

华章科技成立于 1995 年,是机械工业出版社华章公司创立最早的子品牌,专注于为计算机、电子工程等 IT 领域的专业读者提供学习解决方案。

—————  AI 科技评论招人了  —————


—————  给爱学习的你的福利  —————

Fintech 年终思想盛宴

28 天『AI+金融』学习特惠

跟着民生技术总监、前瑞银大牛、四大行一线操盘手们一起充电

区块链、智能投顾、CCF ADL 智能商业课等都参与特惠

与大咖们碰撞思维

扫码或点击阅读原文了解活动详情

————————————————————

登录查看更多
3

相关内容

微软研究院首席研究员。ACM TOIS,TWEB副主编。卡内基梅隆(CMU)客座教授、诺丁汉荣誉教授。IEEE院士,ACM杰出会员。研究兴趣:机器学习、信息检索。个人主页:https://www.msra.cn/zh-cn/people/tie-yan-liu
【新加坡国立大学】深度学习时代数据库:挑战与机会
专知会员服务
33+阅读 · 2020年3月6日
【CAAI 2019】自然语言与理解,苏州大学| 周国栋教授
专知会员服务
62+阅读 · 2019年12月1日
清华朱军教授:机器学习未来的几大挑战与目前进展
DeepTech深科技
4+阅读 · 2018年10月29日
书单 | 深度学习修炼秘籍 (文末赠书)
七月在线实验室
18+阅读 · 2018年4月9日
报名 | 知识图谱前沿技术课程(苏州大学站)
PaperWeekly
12+阅读 · 2017年11月27日
SIGGRAPH 2017:深度学习与计算机图形学的碰撞
机器学习研究会
5+阅读 · 2017年8月18日
Mesh R-CNN
Arxiv
4+阅读 · 2019年6月6日
Neural Approaches to Conversational AI
Arxiv
8+阅读 · 2018年12月13日
Feature Denoising for Improving Adversarial Robustness
Arxiv
15+阅读 · 2018年12月9日
VIP会员
相关VIP内容
【新加坡国立大学】深度学习时代数据库:挑战与机会
专知会员服务
33+阅读 · 2020年3月6日
【CAAI 2019】自然语言与理解,苏州大学| 周国栋教授
专知会员服务
62+阅读 · 2019年12月1日
Top
微信扫码咨询专知VIP会员