夏乙 栗子 发自 凹非寺
量子位 出品
最近,这位AI领域的传奇大牛,接受了另一位大牛吴恩达的视频专访。在这次对话中,LeCun回顾了卷积神经网络、反向传播的历史,以及他如何从一个默默无闻的“法国小孩”,一步步走到今天。
这是一段激荡四十年的故事。
是一段AI科学家的个人奋斗,也是一段AI复兴的历史进程。
这场访谈,也是DeepLearning.ai课程的一部分。
以下,就是吴恩达对话LeCun的主要内容,量子位听译整理,并且在不改变原意的基础上,进行了调整和注释。
完整访谈视频,文末有传送门。
入行记
吴恩达:你投入神经网络的研究已经很久,我想听听你自己的故事,你是怎么开始入行的?怎么投入了AI、神经网络之中?
LeCun:我一直都对智能这件事感兴趣,例如人类的智能是如何出现的,我在孩提时代就对人类的进化很感兴趣。
吴恩达:当时你还在法国?
LeCun:对。
(量子位注:LeCun生于1960年,临近巴黎的一个地方。以下括号内文字,皆为量子位添加的注释。)
大概在初中左右,我开始对科技、宇宙等感兴趣,我最喜欢的电影是《2001太空漫游》(1968年上映),那里面有智能机器、星际旅行、人类进化等等让我着迷的东西。其中关于智能机器的概念特别吸引我。
后来我学了电气工程,在大二的时候无意中看到一本讨论哲学的书,是关于MIT计算语言学家乔姆斯基(Avram Noam Chomsky)和儿童心理学家皮亚杰(Jean Piaget)之间的一场辩论。
(这场辩论发生在1975年10月,就在法国巴黎附近的Royanmont。二人的辩论主题是:从人的语言机制和语言习得角度来探讨儿童发展问题)
这本质上是一场关于自然(先天)还是使然(后天)的辩论。
乔姆斯基认为语言是基于一套天赋的习得机制(语言器官),而皮亚杰认为语言是后天练习的结果。
在皮亚杰这一边,还有来自MIT的Seymour Papert(人工智能先驱、LOGO语言创始人),他一直在研究感知器(Perceptron)模型。
我之前从来没听说过感知器,读了报道之后,才知道这是一个能学习的机器,这听起来太赞了。然后我开始在各个大学的图书馆里,寻找一切关于感知器的内容。
看了Seymour Papert那本合写的书(《感知器》,另一位作者是明斯基),我才知道很多论文都来自50年代,然后在60年代停滞了。
吴恩达:这是哪年?
LeCun:大约是1980年。当时在学校跟教授做过一些关于神经网络的项目,但基本上找不到人一起讨论,因为这个领域那时基本消失了。1980年,没人研究这些。与此相关的实验就是编写各种仿真软件,读神经科学的书。
当我完成工程方向的学习后,开始学习芯片设计。毕业之后,对我吸引力最大的一个问题是:如何训练多层的神经网络?
60年代的文献并没有解决这个问题。我读了福岛邦彦关于新认知机(Neo-cognition)的文章,里面讲述了分层结构,跟我们现在的卷积网络很像,但是没有反向传播学习算法。
后来我在法国一个很小的独立实验室里,遇到一群人,他们对自动机网络(Automata Networks)很感兴趣,他们给了我几份研究霍普菲尔德网络(Hopfield Networks)的论文。
霍普菲尔德网络第一次结合了存储系统和神经网络,这让一些研究人员在80年代初,重新燃起对神经网络的热情,其中大部分是物理学家、凝聚态物理学家和一些心理学家。那时工程师和计算机科学家才不会谈论神经网络。
他们还给我看了另一篇论文,当时还是预印版本,题目是:Optimal Perceptual Inference,这是第一篇关于玻尔兹曼机(BM)的论文,作者是Geoffrey Hinton和Terrence Sejnowski。
其中讨论了隐藏单元、多层神经网络等,虽然只是一个简单的分类器。但是看完之后,我说我十分想见作者,因为他们已经找到正确的方向。
几年之后,我开始读博的时候,在La Douche(位于加勒比海,法属瓜德罗普岛上)参加了一个workshop。Terry(即Terrence Sejnowski)是其中的一个演讲者,那是我们第一次见面。
吴恩达:当时是80年代初?
LeCun:1985年初。那是一个非常有趣的workshop,我还遇见了一些来自贝尔实验室的人,后来我也去了贝尔实验室,不过这是几年后的事情了。
我跟Terry说,我正在研究反向传播,那时还没有写出来反向传播的论文。他当时的谈的也是这个话题。那时Rumelhart、Hinton和Williams关于反向传播的论文还没发布。
(这篇论文即:Learning representations by back-propagating errors,1986年发布于《Nature》)
Terry是Hinton的朋友,信息都是互通的,所以他那会儿已经开始研究如何应用反向传播。但他当时没跟我说这些。
后来他回到美国,跟Hinton说法国有个小孩,也在研究跟我们一样的东西。几个月后,6月的法国又举办了另一个会议,Hinton发表了主题演讲,谈论了玻尔兹曼机以及他正在研究的反向传播论文。
演讲结束后,大约有50个人围住他想要交流。不过他跟主办方说的第一句话是:你们知道Yann LeCun么?因为他读了我的法语论文。Hinton能读一点法语,而且其中的数学部分他能看出来是哪种反向传播。
然后我们一起吃了午餐,从此变成朋友。
Hinton和LeCun在2006年的一次相聚
吴恩达:我明白了。因为你们各自独立地(重新)发明了反向传播。
LeCun:是的。我们发现,其实反向传播最早是60年代,在最优控制的研究中发明出来的,它出自链式法则,或者按照搞最优控制的那些人的说法,叫joint state method。
反向传播的实质,是你可以将梯度下降用在很多阶段上的一个想法,这个概念在各个领域、各个时期出现了很多次。
但是我认为,是Rumelhart、Hinton、Williams那篇论文让这个概念流行了起来。
贝尔实验室的日子
吴恩达:你在AT&T贝尔实验室的时候,开发了许多东西,包括LeNet。还记得有一年夏天我在贝尔实验室实习的时候,还听说过你当年的战绩。可以帮我讲讲AT&T和LeNet的故事吗?
LeCun:故事要从我在多伦多大学做Geoff Hinton博士后的时候说起,那也是我开始研究卷积网络的时候。我最早写的代码和最早做的实验都在多伦多。
当年,数据集很小,也没有Endless之类的东西,我自己用鼠标画了一堆字母,然后做扩增,来测试系统的表现。
我对比了全连的网络,本地连接且无权值共享的网络与共享权值的网络,这就是最早的卷积网络。发现它对小数据集非常友好,有了卷积结构,就不会过度拟合。
1988年10月,我到了贝尔实验室,第一件要做的事就是扩展网络,因为有了更快的计算机。
在我入职的几个月前,老板Larry Jackel问我想要什么电脑。我说现在Sun 4最牛B,要是能来一台就好了。然后,我就有了一台,回想在多伦多整个系只有一台Sun 4。Larry告诉我,贝尔实验室没有省钱的风俗。简直不要太好。
我来之前,贝尔实验室已经在做字符识别的事情了。它们有一个巨大的数据集叫USPS,包含5000个训练样本。于是,我就设计了一个卷积网络,其实就是LeNet的前身。训练效果非常好,比之前其他人用其他方法得出的结果都要好。
这样一来,我们就知道自己有了一个非常超前的东西。我才到了贝尔三个月,就有了这样的成果。
那时的卷积网络,没有分开子采样和池化层,所以每个卷积都是直接做的子采样。之所以没有,是因为计算量太大了,每个位置都要一个卷积的话,我们承受不起。
不过,第二个版本就有了分开的池化层和子采样,我觉得这真的就是LeNet 1了。我们在这上面发表了挺多论文的。
有一个好玩的故事。关于LeNet,我在NIPS做过一个演讲,当时Geoff Hinton就坐在观众席。等我讲完回到座位,他就在我旁边。Hinton说,你的演讲只有一丢丢信息,那就是——如果把所有合理的事情都做了,就会有效果。
吴恩达:LeNet后来改写了历史,那个时候AT&T就已经开始用它来读支票了。
LeCun:是啊。它在AT&T内部大规模使用,但在外面就没有。
我也不知道为什么,可能是80年代还没有互联网,FTP上有电子邮件,但不是互联网。随便两个实验室之间,用的硬件和软件平台都不一样。
那个时候,没有Python和MATLAB之类的东西,大家自己写自己的一套代码。我和Leon Bottou花了一年半,才写出一个神经网络模拟器。还要写一个翻译器,然后我们就写了自己的LISP翻译器。所以LeNet都是用LISP写的,后端和现在的TensorFlow之类已经很像了。
我们还开发了一堆别的应用。那时候,我们和一群高智商的工程师合作,比如Chris Burgess后来在微软研究院有了一片天地。和这些人在一起,我们开发了一些字符识别系统,和现在的CRF很像,可以读取一系列字符,而不只是单个字母了。
吴恩达:所以说LeNet论文是将神经网络和自动机结合了起来。
LeCun:对,论文的前半部分讲的是卷积神经网络,很多人都认为这部分很一颗赛艇;后半部分可能没几个人读过,讲的是一种不需要正则化的序列级判别学习和基本结构预测,实际上和CRF很像。
这个系统当时很成功。不过,就在我们和一家大银行达成合作部署了这个系统,吃饭庆祝的时候,当时是1995年,AT&T宣布拆分成3家公司:AT&T、朗讯和NCR。
我们实验室属于AT&T,技术团队去了朗讯,产品团队却在NCR。
特别特别不幸的是,AT&T的律师们使出了他们无穷的智慧,给卷积神经网络申请了一个专利,归属于NCR。可是NCR那些人甚至根本不知道卷积神经网络是怎么回事,我们和技术团队也没法继续开发这个系统。挺郁闷的。
谢天谢地这个专利2007年过期了。