雷锋网 AI 科技评论按:时隔半年,终于等来了 Yann LeCun 回忆杀视频。
去年 8 月时,随着 deeplearning.ai 深度学习教学网站和系列课程的发布,吴恩达也在「the Heros of Deep Learning」系列视频中采访了 7 位深度学习界重要人物,其中包括「深度学习教父」Geoffery Hinton、「GANs 之父」Ian Goodfellow、「深度学习三驾马车」中另一位 Yoshua Bengio 、UC 伯克利教授 Pieter Abbeel 、百度研究院院长林元庆 、「深度学习网红」Andrej Karpathy、苹果机器学习总监 Ruslan Salakhutdinov。我们也听译了采访林元庆和 Ian Goodfellow 的视频。
不过令人奇怪的是,当时的这组采访对象中居然缺了绝对不可忽视的 Yann LeCun。现在吴恩达终于为大家补上了这个遗憾,和 Yann LeCun 一起回忆了曾经和深度学习一起经历的风风雨雨。雷锋网 AI 科技评论把采访听译如下。中字视频见文末。
吴恩达:Yann 你好,很久以来你都是深度学习领域的领军人物,谢谢你参与这次采访。
Yann LeCun:谢谢你采访我。
吴恩达:你研究神经网络已经有很长的时间了,我想听听你的个人经历,你是如何开始研究 AI 、如何开始研究神经网络的?
Yann LeCun:我对「智慧」这个总体概念一直都有很深的兴趣。当我还小的时候就想知道人类的智慧是怎么回事、人类是如何进化的,那时候我还在法国,大概还在读中学。我对科技啊、太空啊这种东西都很感兴趣,我最喜欢的电影是《2001 太空漫游》,里面有有智慧的机器、有太空旅行等等;还有人类进化,这些都是我很喜欢的东西。「有智慧的机器」这个概念深深吸引着我。
后来我在大学学习了电子工程,大概就在工程学院的第二年,我遇到了这么一本书,它其实是一本讲哲学的书,是关于 MIT 的计算语言学家 Noam Chomsky 和瑞士的儿童发展心理学家 Jean Piaget 之间的辩论。他们辩论的根本观点是语言是天生的还是后天发展的。Noam Chomsky 的论点是语言里有很多内在结构,Jean Piaget 认为这些结构都是可以学习的,等等。
站在 Jean Piaget 的观点这一边的还有一篇打印稿,收集了很多支持这个观点的人的言论来帮助讨论,其中包括 MIT 的 Seymour Papert,Perceptron(感知机)模型就是他研究出来的,这也是世界上第一个可以运行的机器。我以前从来没有听说过 Perceptron,然后读了他的论文以后发现,这种机器是可以运行的,听起来棒极了。然后我就去了好几个大学的图书馆,想要找到所以和 Perceptron 有关的资料,结果却发现即便同样是 Papert 合著的书,1950 年代之前的书会谈到它,但 1960 年之后的书就再也没有提到的了。
我和学校里的一些数学教授一起做了一些项目,基本上就像神经网络那样的,但是我找不到任何做过神经网络的人可以讨论,因为这个领域大概就是在这个时候,1980 年前后消失了,没有人研究这个。我们当时做实验都是编写、运行一些模拟软件,读一些神经科学的论文,类似这种。
当我读完工程学位以后,我去学习了电子芯片设计,半导体设计,这是一些完全不同的事情。当我学完以后,我特别想做这方面的研究,因为当时就有重要的问题,如何训练多层神经网络。在 1960 年代的文献里明显可以感觉到这是一个重要问题,而且也并没有被解决。比如对于层级这种概念,我读了福岛邦彦关于新认知机(Neocognitron)的文章,里面有层级化的结构,和我们今天称作卷积网络的结构很像,只不过没有反向传播这样的学习算法。
我还遇到了法国一个小实验室里的一群人,他们感兴趣的东西那时候叫做自动机网络(Automata Networks)很感兴趣,他们还给我看了几篇关于霍普菲尔德网络(Hopfield Networks)的论文。这些网络现在已经不流行了,但是它是第一次把存储和神经网络联系到了一起。这也说明了我们在 80 年代早期就可以重新唤起部分研究者对神经网络的兴趣,多数是凝聚态物理学家,还有一些心理学家。其实即便到了现在,工程师和计算机科学家讨论神经网络都不是一件完全被接受的事情。
他们还给我看了一篇论文,那时候才刚刚作为预印本发布,标题是「最优感知机推理」(Optimal Perceptual Inference)。这是第一篇关于玻尔兹曼机的论文,作者是 Geoffrey Hinton 和 Terrence Sejnowski。其中谈到了隐层神经元、如何学习有多个层的神经网络,这要比线性分类器强大多了。我当时就觉得,我一定要见见这群人,因为他们已经找到了正确的问题。
几年以后当我读博士的时候,我在 La Douche 参加了一个 workshop。这个 workshop 是我共事的人组织的,Terrence 是那天的演讲者之一,也就是这次我跟他遇到了。在 1985 年 La Douche 的这个 workshop 上我不仅遇到了 Terrence,早期研究神经网络的很多人都在那里,还有很多研究理论神经科学的。那个 workshop 非常棒。我也遇到了几个贝尔实验室的人,就是这群人最后把我招进了贝尔实验室,不过这也是我博士毕业几年之后的事情了。
当时我就和 Terrence 聊起自己在做某种形式的反向传播,这时候任何关于反向传播的论文都还没有发表, Terrence 演讲里也谈到了反向传播。Rumelhart、Hinton 和 Williams 的关于反向传播的论文这时候也还没发表,不过他也和 Hinton 是朋友,信息一直在沟通,所以他就已经在研究了,想办法让它成功。不过这些都不是他当时就告诉我的。他回到了美国,然后告诉 Hinton 说在法国也有个小孩在和我们研究一样的东西。(笑)
过了几个月,6 月的时候另一个别的会在法国开,Hinton 是会上的演讲者,他讲的内容是玻尔兹曼机,但他肯定在写反向传播那篇论文。他做完演讲之后,周围围了好几十个人想要跟他说话,然后他跟会议组织者说的第一句话就是,有个叫 Yann LeCun 的你认识吗?因为他在会议论文集里看到我的论文了,论文是用法语写的,但是他能看懂一些,能看懂里面的公式,能看懂这就是反向传播。我们就一起吃了午饭,从此就成朋友了。
吴恩达:也就是说你们基本上是几组人同时各自独立地创造了反向传播。
Yann LeCun:对。我们都意识到了链式规则,也就是做最优控制的人在他们的领域里叫 joint state method 的东西,本质思想就是反向传播。 它的实质就是多阶段的梯度下降。这个概念在很多不同的语境里都前后出现过很多次,但我觉得让它变得热门的就是 Rumelhart、Hinton 和 Williams 的这篇论文。
吴恩达:这之后过了几年,你来到了 AT&T 的贝尔实验室,在这里你发明了很多东西,其中就包括 LeNet,我的课程里也有讲到。我还记得我在 AT&T 的贝尔实验室做暑期实习生的时候都还听他们谈起你的研究。跟我们详细讲讲你在 AT&T 研发 LeNet 的经历吧。
Yann LeCun:其实我在多伦多大学跟着 Hinton 做博士后的时候就已经开始研究卷积网络了,我写了代码,做了最早的实验。当时还没有 MNIST 这种东西,所以我就用鼠标画了一批字符作为训练数据集,用的也是当时最好的个人电脑;画了一些数字,然后做了数据扩增增多了一些样本以后,就用它做了测试。我们当时对比测试了全连接卷积网络、局部连接卷积网络、没有共享权值和有共享权值的网络,这也就是最早的卷积网络的样子。实验结果挺不错的,表明了如果你有一个很小的数据集就可以得到(比以往的方法)更好的表现,借助卷积网络的结构也不会过度训练。
当我 1988 年 10 月去了贝尔实验室的时候,我做的第一件是就是扩大网络规模,因为那时候的电脑也更快了。就在我去贝尔实验室的几个月前,我当时的 boss、后来也做了贝尔实验室的主管的 Larry Jackel 说,在你来之前要给你买一台新电脑,你想要什么样的。我说多伦多大学有一台 Sun 4,很厉害,如果贝尔实验室也能有一台就好了。所以他们就买了一台,专门买给我用的。要知道,在多伦多大学的时候一台 Sun 4 是整个学院用的,在这里一台就我一个人用!Larry 说,在贝尔实验室没有谁是能靠省钱省出名的。这真是棒极了。
我去的时候他们研究字母识别已经研究了一阵子了,他们有一个非常大的数据集叫做 USPS ,里面有 500 0 个训练样本。(笑)所以我马上就拿这个数据集训练了卷积网络,也就是当年的第一代 LeNet,得到了非常好的结果,比当时其他在这个数据集上试过的方法都要好。我们有预感这可能是某件更大的事的开始,而这时候我加入贝尔实验室也只有三个月。
在当时第一版的卷积网络中,我们用了条带(stride)卷积,没有用分开的子采样和池化,所以每个卷积操作都是直接做子采样。之所以这样做,就是因为如果在每个位置都做卷积的话计算量太高了,我们承担不了。到了第二版的时候有了分别的卷积、池化层以及子采样。这也就是大家称作 LeNet 1 的网络了。我们发表了好几篇关于这个的论文,包括在 NIPS 上。
关于这项研究有件有意思的事情,当时我在 NIPS 上演讲的时候 Hinton 就坐在下面听。我讲完以后就坐在他旁边,他说,你的演讲里透露出了一条信息,就是如果你做了所有合理的事情,那它就能真的成功。(笑)
吴恩达:这之后没过多久历史就被它改写了,卷积网络的概念很快在识别支票之类的事情上流行了起来。
Yann LeCun:是的,不过这只是在 AT&T 内部,AT&T 之外没有怎么用这个。其实我一直不是很明白为什么,到了 80 年代后期的时候,有电子邮件和 FTP,但还没有因特网,那时候世界上就没有哪两个实验室用的软硬件平台是一样的,有的人用的是 Sun 的工作站,有的人用的别的牌子的,也有人用个人电脑。也没有 Python、Matlab 等等这些东西,每个人都是写自己的代码。我和我的学生 Leon Bottou 花了一年半时间才写出一个神经网络模拟器。而且因为那时候没有 Python、Matlab,你还需要自己写解释器才能控制它,所以我们又写了 Lisp 的解释器。所以整个 LeNet 都是用 Lisp 写的,搭配一个数值化的后端,和我们现 Python、PyTorch、TensorFlow 等等里非常熟悉的可以互相连接的块状结构、有共享结构的网络架构已经很像了。
然后我们就开发了一批应用,我们和一群工程师一起合作,他们很聪明,里面有的人是理论物理学家但是来了贝尔实验室做工程师,Chris Burgess 就是其中一位,后来在微软研究院也做出了很多成果。我们和他们一起,把理论成果变成实际产品。我们开发了字符识别系统,把卷积网络和类似我们现在叫做 CRF 的东西结合在一起,它能识别一连串的字符,而不只是单个单个的字符。
吴恩达:在 LeNet 论文里你们完善了神经网络,然后又完善了自动机,然后把两者结合了起来。
Yann LeCun:对的,论文的前一半讲的是卷积神经网络,很多人都喜欢的是这一部分;后一半就很少有人读了,它讲的是序列级别的辨识学习和结构预测,而且不需要正则化,实际上和 CRF 很像。PC 的 CRF 再过几年也出现了。
当时我们做的很成功,唯一的一点就是,刚才提到的工程师做的是整个系统的工程,还有一个产品小组在另一个地点工作,他们属于 AT&T 拆分后的公司 NCR,他们做大型的 ATM 机,也做支票识别系统,他们算是我们的客户吧,用我们的支票识别技术,然后部署在银行。系统部署那天我们实验室的人去了一家很好的餐厅庆祝,就在这时候 AT&T 宣布拆分。那时候是 1995 年,AT&T 拆分成了三个公司,AT&T、朗讯和 NCR。工程团队分到了朗讯,产品团队分到了 NCR。很让人难过的是,我们当时给卷积网络申请了专利,好在现在专利已经在 2007 年过期了(笑),但那时候 AT&T 的律师们有无穷的智慧,专利当时分给了 NCR,而 NCR 的人连一个知道卷积网络是什么的都没有。所以专利就这样握在了一群根本不知道自己拿着的是什么的人手里。我们则在另一个公司里,没法继续开发这个技术;工程团队也在另一个公司。这事提起来还是有点郁闷的。
吴恩达:在你早期的、卷积网络起飞之前的工作之外,你也一直在坚持研究神经网络,即便是在神经网络的冬天。那时候的感觉如何?
Yann LeCun:可以说我坚持了,也可以说我某种程度上没坚持。我一直坚信这些方法总有一天会回到大家的视野中,大家会学会如何用它们,解决一些实际问题。我一直有这个信念。但是到了 1995 年 AT&T 拆分以后,我们在字符识别方面的研究成果也跟着失散了。我也成为了实验室主管,需要考虑要研究什么问题。这时候还是因特网刚刚萌发的时候,我有个想法就是,因特网的出现带来的一个问题就是如何把我们印在纸上的各种知识搬到数字世界里来。我就带头做了 DjVu 这个项目,压缩扫描的文档,这样方便它们在网络上分享。做这个项目的时候我们有很多乐趣,也获得了一定的成功,虽然后来 AT&T 并不知道应该怎么处理它。
吴恩达:我也还记得这个项目,方便在网上查看论文。
Yann LeCun:对的,就是这样的。我们把 NIPS 的所有收录论文都扫描出来放在了网上,也算是延时了它的效果。高分辨率的文章经过我们压缩以后只有几百 KB。
吴恩达:你充满自信的早期研究成果现在已经基本占据了整个计算机视觉领域,而且也开始对其它的领域产生巨大的影响。你当时预见到了这样的发展吗?
Yann LeCun:(笑)我先说说我一开始的预想的是怎么样的。一开始我就相信这是可行的,虽然它需要运算很快的计算机和很多数据,但我一直相信这是一种正确的做法。当时我还在贝尔实验室的时候就觉得,随着计算机变得越来越强大,沿着这个方向做下去可以做出一连串的成果。我们在贝尔实验室甚至设计了专门用来运行卷积网络的芯片,有两种不同的芯片可以非常高效地运行卷积网络。我们觉得这是一个很好的开端,整个领域对卷积网络的兴趣也会越来越浓厚,不断做出新的进展。但是实际上因为 90 年代中期的时候根本没人对神经网络感兴趣了,所以这些设想都没实现,1995 年到 2002 年的这六七年算是一段非常黑暗的时光,没有人研究这个。
其实也有一点点研究,微软在 2000 年早期的时候用卷积网络识别中文字符。在法国也有人做面部检测这样的任务,但规模都很小。而且我最近才发现,也有几个小组想出了本质上和卷积网络非常相似的东西,用来做医学影像分析,但是他们并没有机会像我们这样发表论文,都是直接用在了商业化系统里面,没有发什么文章。在我们的第一篇卷积网络论文发表以后他们也知道了这件事,发现差不多就是跟我们同时做着类似的研发。所以其实有很多人都有类似的想法,各自分别在做。
接下来我是真的对大家产生兴趣的速度感到惊讶,就从 2012 的 ImageNet 开始。2012 年底的时候,在法国召开的 ECCV 上有这么一个很有意思的活动,是关于 ImageNet 的 workshop,大家都已经听说了 Hinton 团队以及 Alex Krizhevsky 以很大优势赢得了比赛,所以都在期待 Alex Krizhevsky 的演讲,而这时候计算机视觉领域的大多数人都还没听说过卷积网络是什么。实际上听过的那些人也是听我在 CVPR 2000 上讲的,但是并没有引起大多数人的注意。做了很长时间研究的人会知道,但是年轻一些的就没听说过了。
到了 Alex Krizhevsky 讲的时候,他根本没有解释卷积网络是什么,因为他是研究机器学习出身的,默认了所有人都知道卷积网络。然后他就直接讲,这里是个全连接层,我们是怎么怎么传输数据的,然后得到了这样的结果。现场听的人里有很多都很惊讶,大家的观念也以肉眼可见的速度在改变。
吴恩达:你觉得这就是卷积网络改写了计算机视觉领域的标志性时刻?
Yann LeCun:没错,就是这时候发生的。
吴恩达:现在你不仅保留着纽约大学(NYU)的教职,而且也是 Facebook 人工智能实验室(FAIR)的负责人(雷锋网 AI 科技评论注:今年 1 月 LeCun 已把负责人职位转交给 JérômePesenti,同时升任 Facebook 首席人工智能科学家,专注于学术/技术研究)。我听说你对如何在企业做研究的观点很独特,可以给我们讲讲吗?
Yann LeCun:过去 4 年里我在 Facebook 享受到的一件很美妙的事情就是,我有很大的自由可以按照我自己觉得合适的方式来构建 FAIR。这是 Facebook 的第一个研究机构,而 Facebook 是一个以工程为中心的企业,在此之前关注的重点都是在如何生存或者其它一些短期的东西上。在这个公司成立快要 10 年了、成功 IPO 的时候,也要开始考虑下一个 10 年要怎么办,Mark Zuckerberg 需要想想未来 10 年里什么东西最重要。既然生存已经不是问题了,虽然当时 Facebook 还没那么大,5000 个人左右,但也确实是一个转型成大公司思路的时刻,思考什么技术未来比较重要。
Mark 和他的团队就认为,AI 对于 Facebook 的宗旨「连接不同的人」来说会是一项非常重要的技术。他们尝试了一些不同的方式想在 AI 方面有所作为,他们构建了一个内部团队研究卷积网络这些东西,在人脸识别等一些任务上获得了非常好的成果。他们也考虑了要不要招聘一些年轻研究员,或者收购别的公司,最终决定从领域内招聘一位资深学者,成立一个正式的研究机构。
一开始文化方面的冲突还是挺大的,因为在公司内做研究的方式和做工程有很大区别,做工程要有时间表、路线图,但是研究者对于自己研究节奏的选择就会很保守。而且我也是在很早的时候就明确表示,做研究需要开放,不仅要鼓励研究者公开发表成果、甚至要求他们公开发表,而且对成果的评价标准也要和学术界的研究者一样。Mark 和 Facebook 的 CTO、现在我的上司 Mike Schroepfer 就说,Facebook 是一个非常开放的公司,我们的很多东西都是开源发布的;Mike Schroepfer 自己也是来自开源世界的,之前他在 Mozilla,所以开源就在公司的 DNA 里。这也让我们很有信心可以建成一个开放的研究机构。
并且,Facebook 对于知识产权没有别的公司那么严格,这也让我们更方便和大学合作,以及一个人可以同时参与学术和企业的事情。
吴恩达:这对你自己也有很大好处,可以在纽约大学任教。
Yann LeCun:没错。如果你看看我过去 4 年里发表的论文的话,其实大多数是和我在纽约大学的学生们一起做的。我在 Facebook 做的其实很多是整个实验室的管理、招人、做指导这些事情,但是我没办法参与到一个个具体的研究项目里面去,也就没办法在论文里署名了 —— 当然了我现在也不在乎能不能在论文里署名。
吴恩达:就是帮助别人做出很好的成果,然后自己做自己的研究。
Yann LeCun:对,你自己不应该特别参与,应该就在幕后看着,让实验室里的人自己形成竞争。
吴恩达:下面这个问题相信很多人都问过,现在在看这个视频的人也很想知道答案,那就是,对于想要进入 AI 领域的人,你有什么建议可以给他们吗?
Yann LeCun:(笑)AI 这个领域和我刚刚进入的时候已经完全不一样了。我觉得这个领域现在有一点很棒,就是想要在一定程度上参与进来是很简单的一件事。我们现在有很多简单好用的工具,TensorFlow、PyTorch 等等一大堆,自己家里随便一个什么电脑就能运行得起来,然后训练一个卷积网络或者循环神经网络做任何想做的事情。除了这些工具,也还有很多线上的教学资源可以学习,没有什么门槛,高中生都能玩得转,我觉得这棒极了。而且现在的学生里对机器学习、AI 感兴趣的也越来越多,年轻人也能喜欢真的很好。
我的建议是,如果你想要进入这个领域的话,做出一些帮助,比如在开源项目里贡献一些代码,或者实现某个网上找不到代码的标准算法,这样别人就有得用了。你可以就找一篇你觉得重要的论文,把算法实现出来,然后做成开源的代码包,或者贡献到别的开源代码包里。如果你写的东西有趣、有用,就会有别人注意到你,你非常想去的公司可能会发 offer 给你,你很想读博的地方也可能给你回信,之类的。我觉得这是一种很好的开头方式。
吴恩达:参与开源项目是进入这个领域的一种很好的途径。这个过程里也可以学习。
Yann LeCun:是的。
吴恩达:谢谢你,真的很棒。虽然从媒体看了不少报道,但是听你亲自讲以前的这些故事细节还是很精彩。
Yann LeCun:这样的故事还有很多,而且直到十几二十年后你去回想的时候,才会发现这些事其实有多重大。
(完)
via YouTube,雷锋网 AI 科技评论听译