与明斯基和派珀特的断言相反的是,神经网络研究人员多年来一直认为,神经网络能够展现出新的能力,并且解决罗森布拉特感知器的问题,但前提是在网络输入和输出之间放置额外的“隐含”神经元层。不幸的是,没人知道如何训练这些多层神经网络。著名物理学家约翰·霍普菲尔德(JohnHopfield)为具体应当如何做提供了建议。
霍普菲尔德说:“放弃一个错误的思想十分困难,毕竟我们已经研究一年了。”但是,在计算机内部创造一个生命模型的想法却一直都在。他对一个想法十分着迷,即用神经网络完成大脑能够迅速且轻松完成但计算机却不能完成的任务。霍普菲尔德最终选择了联想记忆,联想记忆是指大脑如何以交互的方式工作,也就是看见一个人就能联想起他的名字,或者听到他的名字就能想起他的长相。联想记忆背后的数学运算使霍普菲尔德想到“自旋系统”的数学运算,该运算描述的是固体磁性的复杂形式。他的脑海中突然产生了一个想法。霍普菲尔德回忆道:“神经生物学和我所了解的物理系统之间突然产生了一种联系。一个月之后,我已经开始写论文了。”
1982年这篇论文发表后,一种全新的神经网络产生了。霍普菲尔德网络比罗森布拉特的感知器中的单层模拟神经元复杂得多。他的思想再次激发了人们对神经网络的热情,这也使他成为这一过程中出人意料的英雄。加州理工学院的一组追随者开始以“霍普集会”(Hop-Fest)的名义召开会议。霍普菲尔德的发现吸引了一些世界上最伟大的理论物理学家参与到神经网络的研究当中。该领域的研究人员多年来头一次感觉到热血沸腾。
然而,事情并没有我们想象得那么容易。正如我们在第一章中看到的,20世纪80年代早期是“专家系统”的天下,资金也是空前的充裕。尽管后来这些“专家系统”的发展将遭遇困境,但在当时却是十分强大,人们根本不认为它们会失败。世界领先的神经网络专家特里·谢伊诺斯基(TerrySejnowski)当时正在普林斯顿大学读霍普菲尔德的博士,他回忆道:“我们当时好像是生活在恐龙时代的只有毛皮的哺乳动物,在这些长着麟甲的巨兽的脚下混日子,他们有数百万美元的机器和庞大的预算。那时,所有人都专注于计算逻辑,但是我们明白,他们忽视了推动人工智能向前发展所面临的真正困难。”
幸运的是,神经网络吸引了许多年轻且富有热情的研究人员,其中就包括圣地亚哥加州大学的认知科学家戴维·鲁梅尔哈特(DavidRumelhart)和詹姆斯·麦克兰德(JamesMcClelland),他们成立了一个“并行分布处理”小组,并产生了令人难以置信的影响力。
说到这里就不得不提到另外一个人,他就是杰夫·辛顿(GeoffHinton)。
神经网络的守护神
杰夫·辛顿出生于1947年,是现代神经网络最重要的人物之一。作为一名谦逊的英国计算机科学家,他对其所在领域的发展产生的影响很少有人能企及。他出生于一个数学家家庭:他的曾祖父是著名的逻辑学家乔治·布尔(GeorgeBoole),他的布尔代数曾为现代计算机科学奠定了基础。另一位亲戚是数学家查尔斯·霍华德·辛顿(CharlesHowardHinton),因提出“四维空间”这一理念而闻名,阿莱斯特·克劳利(AleisterCrowley)在其小说《月之子》中曾经两次提到了辛顿。
许多古希腊人都支持苏格拉底的一个观点,即深奥且令人费解的思想是上帝创造的。如今,对这些漂泊无定的人而言,甚至概率神经元都相当于上帝。很有可能的是,神经元行为的随机性的提高是癫痫病患者和醉酒的人的问题,而不是聪明人的优势。
人们对温斯顿的思想十分不屑,但是他当时对神经网络的类似于宗教信仰般的看法并不是完全错误的。辛顿对人脑必须以某种方式工作这一认识十分欣慰,很明显,这是无法用传统的符号人工智能来解释的。他说:“大多数常识推理都是凭直觉或以类比的方式做出的,其中并不涉及意识推理。”辛顿认为,传统人工智能的错误之处在于:其认为,任何事都是由一系列基本规则和有意识推理组成的。对符号人工智能研究人员来说,如果我们不能理解某一部分的意识,这是因为我们还没有弄懂其背后的推理。
毕业以后,辛顿暂时在英国苏塞克斯从事博士后工作,之后收到了一份来自美国的工作邀请。于是,辛顿打点行装,搬到了加州大学,不久以后,又搬到了卡内基–梅隆大学。在接下来的几年里,他一直积极努力在神经网络领域取得开创性进展,即便到了今天,其成就仍对人工智能的研究产生着影响。
他最重要的贡献之一,要算是他对另一位研究人员戴维·鲁梅尔哈特的帮助,帮助他再次发现“反向传播”流程,这大概是神经网络中最重要的算法,之后他们首次以可信的方式证明,“反向传播”使神经网络能够创建属于自己的内部表征。当输出与创造者希望的情况不符时,“反向传播”使神经网络能够调节其隐藏层。发生这种情况时,神经网络将创建一个“错误信号”,该信号将通过神经网络传送回输入节点。随着错误一层层传递,网络的权重也随之改变,这样就能够将错误最小化。试想一下,有一个神经网络能够识别图像,如果在分析一张狗的图片时,神经网络错误地判断为这是一张猫的图片,那么“反向传播”将使其退回到前面的层,每层都会对输入连接的权重做出轻微调整,这样一来,下次就能够获得正确的答案。
20世纪80年代创建的“NETtalk”项目是“反向传播”的一个经典案例。NETtalk的一个共同创建者特里·谢伊诺斯基将其描述为用于了解电脑是否能够学习大声朗读书面文字的“夏季项目”。该项目面临的最大挑战在于语言一点也不简单。项目刚刚开始的时候,谢伊诺斯基去图书馆借了一本有关音韵学的书,即诺姆·乔姆斯基(NoamChomsky)和莫里斯·哈雷(MorrisHalle)所著的《英语语音模式》。谢伊诺斯基说:“这本书里都是各种事情的规则,例如字母e出现在单词末尾的时候应该如何发音等。书中提到了例外情况,之后又列举了例外情况中的例外。英语就是大量的复杂关联。我们似乎选择了世界上在规则性方面最糟糕的语言。”
一直以来,传统人工智能都在不断尝试将这些单独的例子插入到一个专家系统中。谢伊诺斯基和一位名为查尔斯·罗森伯格(CharlesRosenberg)的语言研究人员决定通过创建一个由300个神经元组成的神经网络来实现这一目标。当时,辛顿正在实验室访问,他建议他们在项目的最开始使用儿童书籍来训练该系统,这本书的词汇量一定要小。起初,这项任务十分艰难,计算机一次只能读一个单词,而他们必须为每个字母都标注正确的音素。例如,字母e在“shed”、“pretty”、“anthem”、“café”或“sergeant”中的发音各不相同。谢伊诺斯基和罗森伯格每次进行说明的时候,他们创建的神经网络都悄悄地调节对每个连接的权重。该系统面临的最大挑战是使机器能够正确发出每个单词中间部分的音节。为了做到这一点,神经网络必须使用中间字母左边和右边的字母给出的提示。
一天下来,NETtalk已经全部掌握了书中的100个单词。这一结果令他们感到震惊。接下来,他们让NETtalk使用有20000个单词的韦伯词典。幸运的是,词典中的所有音素都已经标注出来了。他们下午把单词输入到系统中,然后就回家休息了。当他们第二天早上回到办公室时,系统已经完全掌握了这些单词。
最后的训练数据是一本对儿童说话内容进行誊写的书,以及一位语言学家记录的儿童发出的实际音素的清单。这就意味着,谢伊诺斯基和罗森伯格能够将第一个誊写本用于输入层,将第二个音素清单用于输出层。使用“反向传播”以后,NETtalk能够学习如何像孩子那样说话。一段NETtalk的录音说明了该系统在这方面取得了飞速的进展。在训练之初,系统只能够区分元音和辅音,其发出的噪声则像是歌手表演前做的发声练习。在训练了1000个单词以后,NETtalk发出的声音更接近人类发出的声音了。谢伊诺斯基说道:“我们完全震惊了,尤其是在当时计算机的计算能力还不如现在的手表的情况下。”
联结主义者
有了杰夫·辛顿等人的帮助,神经网络开始蓬勃发展。当时有一个传统,那就是继任的一代都会给自己重新命名,新研究人员们称自己为“联结主义者”,因为他们对复制大脑中的神经联结十分感兴趣。到1991年,仅在美国就有1万名活跃的联结理论研究人员。
忽然之间,各个领域都取得了突破性的进展。例如,人们发明了专门用于预测股市的神经网络。大多数情况下,投资公司使用不同的网络预测不同的股票,然后由交易商来决定投资哪只股票。然而,有些人在此基础上更进一步,赋予网络本身自主权,使其能够自行买卖。无独有偶,金融领域迅速涉足电子游戏领域,时刻准备着为人工智能研究人员进行投资。算法交易时代轰轰烈烈地开始了。
当时神经网络领域的另一个引人注目的应用就是自动驾驶汽车。发明自动驾驶汽车一直是技术人员的梦想。1925年,发明家弗朗西斯·霍迪纳(FrancisHoudina)展示了一款无线电控制的汽车,他操控汽车行驶在曼哈顿的街头,而车中无须人来操控方向盘。之后,自动驾驶汽车测试使用导丝和车载传感器使汽车能够按照路上画好的白线行驶,或通过识别出地下电缆发出的交流电行驶。1969年,约翰·麦卡锡发表了一篇标题为“计算机控制汽车”的论文极具挑战性。麦卡锡所提议的方案基本上是设计一个“自动化司机”。他的项目需要一个能够进行公路导航的计算机,计算机上仅带有一个电视摄像机来输入信息,该输入使用与人类司机相同的视觉输入。麦卡锡假设用户能够使用键盘输入地点,并要求汽车立即载他们过去。紧急情况下,用户可以使用额外的命令变更目的地,要求汽车停在洗手间或宾馆门口,在有紧急情况时减速或加速。
15年后,谷歌在2010年10月发布了自己的无人驾驶汽车项目。然而,我们仍要感谢波默洛在神经网络领域做出的开创性贡献,他证明了自己的观点。
欢迎来到深度学习领域
神经网络在21世纪中叶迎来了又一次重大进展。2005年,杰夫·辛顿在多伦多大学任教,此前不久,他一直在英国伦敦大学学院工作,在那里建立了盖茨比计算神经科学组。这时,人们已经清楚地认识到,互联网能够生成大量数据集,这在10年前是想都不敢想的。如果说以前的研究人员面临的问题是没有足够的数据来对系统进行适当的训练,那么互联网的兴起则大大改善了这一状况。如今,据国际数据公司等研究公司估测,目前网上在线数据量约为4.4泽字节a。记者史蒂夫·洛尔(SteveLohr)在其所著的极为有趣的《数据论》一书中指出,如果能将这些数据输入iPadAir(苹果超薄平板电脑)中,那么产生的堆栈将能够覆盖地球到月球距离的2/3。
然而,就像地球虽然有大量的水,但并不是所有水都可以喝一样,这些数据中好多都是未标记的。当数据集较小时,研究人员可以将主要精力放在正确标记所有数据上,这对训练系统来说更加有用。然而,随着数据量的增加,研究人员就无法再这样做。例如,2013年3月,网络相册Flickr共有8700万注册用户,他们每天上传超过350万张新图片。从理论上看,这对那些想要建造一个能够识别图片的神经网络的人们来说是一个天大的好消息,但同样也提出了挑战。正如我们所看到的,训练神经网络最简单的方法就是向其展示大量图片,然后指出每张图片都是什么。通过标记图片,训练员既提供了输入(图片),又提供了输出(描述)。神经网络就可以反向传播,以纠正错误。这就是我们所了解的“监督式学习”。但是,流通中还有许多未标记或没有正确标记的图片,计算机如何对其进行识别呢?
幸运的是,杰夫·辛顿掀起了一场“非监督式学习”的革命,这种学习方式无须向计算机提供任何标记。机器能够访问的只有输入,无须解释它看到的是什么。首先,这听起来像是机器无法通过这种方式学习。如果没有得到明确的解释,即使是最智能的神经网络也不会知道某物到底是什么。实际上,辛顿发现的是“非监督式学习”可以用来训练上层特征,而且每次只能训练一层。这一发现成为“深度学习”的催化剂,而“深度学习”就是当前人工智能最炙手可热的领域。
辛顿解释道:“训练这些特性检测器时,每次训练一层,这一层都试图在下面一层找到结构模式。之后,就可以在顶部贴上标签并使用反向传播来进行微调。”结果深深震撼了人工智能界。辛顿回忆道:“其中涉及一些数学问题,这总会给人们留下深刻的印象。”
有关深度学习的消息迅速传开。辛顿实验室的两名成员乔治·达尔(GeorgeDahl)和阿卜杜勒–拉赫曼·穆罕默德(Abdel-rahmanMohamed)迅速论证了该系统不仅能够进行图像识别,还能够进行语音识别。2009年,俩人将其新创建的语音识别神经网络与已经使用了30多年的行业标准工具放到一起一较高下,结果是,深度学习网络获得了胜利。这时,谷歌邀请辛顿的一位博士生纳瓦迪普·杰特列(NavdeepJaitly)修补谷歌的语音识别算法。看了一眼之后,他建议用深度神经网络取代整个系统。尽管一开始持怀疑态度,但杰特列的老板最终同意让他尝试一下。事实证明,新的程序比谷歌精心调试数年的系统表现还要出色。2012年,谷歌将深度学习语音识别程序嵌入安卓移动平台,错误率与之前相比立刻下降了25%。