1986年1月,我开始在加州大学伯克利分校学习。我所做的第一件事,就是整理有关智能和大脑功能理论研究的历史。我阅读了上百篇由解剖学家、生理学家、哲学家、语言学家、计算机科学家和心理学家所著的论文。来自于不同领域的研究者们发表了大量关于思维和智慧的见解,各个领域都有专门的刊物和术语。然而,我发现这些见解既不一致,也不完整。当谈到智能时,语言学家总是会使用“句法”和“语义”等术语,在他们眼中,大脑和智能只同语言有关;视觉科学家习惯于谈论2D、2.5D和3D图像,大脑和智能对他们来说,只与视觉模式识别有关;计算机科学家们则津津乐道于由他们所提出的“模式”和“框架”等表征知识的新术语。没有人提及大脑的构造,也没有人关心这些理论在大脑中究竟如何实现。另一方面,解剖学家和神经生理学家撰写了大量有关大脑构造和神经元作用机理的论文,但对于建构大规模理论却退避三舍。毕竟,想要从各种研究方法以及随之而来的堆积如山的实验数据中寻找方向,实在是一件让人头痛的事。
就在此时,一种新的智能机器研究途径开始崭露头角,为人们带来了希望。虽然早在20世纪60年代后期,神经网络就已经开始以这样或那样的面目出现,但在当时,它同人工智能研究在投资份额和关注度方面存在着激烈的竞争。人工智能就像一只体重800磅的大猩猩,将神经网络研究压制得无法抬头。神经网络的研究者在许多年间一直被列于投资方的黑名单上,只有少数人还在继续关注他们。直到20世纪80年代中期,这一领域才终于得以重见天日。我们很难确切地知道,神经网络为何突然变成了热点,但人工智能的节节失败无疑是其中的因素之一。人们在寻找人工智能的替代品,而最终在神经网络领域看到了希望。
相对于人工智能的方法,神经网络算得上一个真正的进步,因为它的架构建立在真正的神经系统之上,尽管根基尚浅。与计算机程序员不同,神经网络的研究人员(也被称为联结主义者)的兴趣在于了解,如果将一群神经元聚在一起,它们会表现出何种行为。大脑由神经元组成,因此构成了一个神经网络,这是铁一样的事实。联结主义者们希望通过研究神经元之间的相互作用,弄清智能那难以捉摸的特性;他们还希望通过复制神经元群之间的连接,解决那些令人工智能一筹莫展的问题。神经网络与计算机的不同之处在于,它没有CPU,也不需要中央存储。整个网络中的知识和记忆都分散在它的连接上——就像真正的大脑一样。
从表面上看,神经网络似乎非常符合我的兴趣。但很快我对这一领域的希望就又幻灭了。那时,我已经形成了一个自己的看法:对于大脑的理解,有3个标准是必不可少的。第一个标准是,对于大脑功能的理解,必须考虑时间因素。真正的大脑始终在处理快速变化的信息流。在进出大脑的信息流中,没有什么是静止不动的。
第二个标准是,反馈的重要性。神经解剖学家一早就发现,大脑中充满了反馈连接。比如说,在新大脑皮层和丘脑之间连接的神经回路中,反馈连接(信息传递朝着输入的方向)的数目要比前馈连接多出将近10倍!也就是说,对于每一束向大脑皮层传递信息的神经纤维,都对应着10束向感觉器官传递信息的神经纤维。大脑皮层中的神经连接也绝大多数具有反馈功能。虽然反馈的确切作用尚无人知晓,但从已发表的研究报告中可以看出,它无处不在。据此我认为,反馈一定非常重要。
第三个标准是,任何理论或有关大脑的模型,都应该能够解释大脑的物理结构。新皮层并不是一个简单的构造,大家在后面的章节中将会看到,它有着不断重复的层级结构。任何不同于这一构造的神经网络,必定无法像大脑一样工作。
然而,神经网络刚一亮相,就定位于一些极为简单的模型上。这些模型对于上述三个标准无一满足。绝大多数神经网络都是由相互连接的三排神经元组成的。第一排神经元接受某种模式(输入),接着这些输入神经元同下一排神经元相连,我们称这些为“隐藏单元”。“隐藏单元”再与最后一排神经元(输出单元)相连。神经元之间的连接强度有强有弱,按照连接强弱的不同,一个神经元的活动可能会促进另一个神经元的活动,也可能会减弱第三个神经元的活动。神经网络就是通过改变这种连接强度,来学习如何将输入模式映射到输出模式上。
这些简单的神经网络只能用来处理静态模式,不涉及反馈,同大脑也没有任何相似之处。有一种最常见的神经网络,被称为“反向传播(back propagation)”网络,它能将一个错误从输出单元向输入单元传播来进行学习。你可能会认为这是反馈的一个形式,而事实上它不是。这种对错误的反向传送只发生在学习阶段。当神经网络经过训练,工作状态正常时,信息便只会向一个方向传送。在输出到输入的方向上,并无反馈发生。除此之外,这些模型中没有时间:一个静态输入模式被转化为一个静态的输出模式,紧接着又出现另一个输入模式。在这些网络中,哪怕对于刚刚发生的事情也不留存任何历史记录。最后,与大脑的复杂性及其层级结构相比,神经网络的构造显得太小儿科了。
我本以为神经网络领域会飞快地往更加仿真的网络发展,但它并没有。由于简单的神经网络已经能够做出一些有趣的事情,因此许多年后,研究还一直停留在这个层面。这种新鲜有趣的工具,一夜之间让成千上万的科学家、工程师和学生获得了资助、博士学位,发表了著作。利用神经网络进行股票市场预测、处理贷款申请、核对签名以及执行上百种其他模式分类应用的公司,也如雨后春笋般纷纷成立。尽管神经网络创建者的意图可能在于更为广泛的应用,然而当时在该领域居于主导地位的人们,对理解大脑如何工作以及什么是智能等问题,丝毫没有兴趣。
大众媒体对神经网络与智能之间的差别也不甚明白。报纸、杂志和电视科学节目将神经网络介绍为“像大脑一样”或是“以大脑工作原理为蓝本”。与处处需要编程的人工智能不同,神经网络通过事例进行学习,这让它多少看起来更智能一些。NetTalk即为其中的一个突出代表,它能够学着将字母顺序同读音一一匹配。由于这个神经网络是用印刷文本来训练的,因此它乍听起来就是用计算机的声音在朗读单词。不难想象,用不了多久,神经网络就可以同人类对话了。在全国新闻中,NetTalk被错误地介绍为一种能够学习阅读的机器。它虽然是神经网络的一个精彩展示,但所做的事情仍微不足道。它不会阅读,不能理解,且没有什么实用价值。它所做的只是将字母组合同预定的声音模式相匹配。
请允许我用一个类比来说明神经网络与真正的大脑之间差得有多远。想象一下,我们要研究的不是大脑的原理,而是一台数字计算机。经过多年研究后,我们发现计算机中的一切都是由晶体管构成的,亿万的晶体管以精确而又复杂的方式连接在一起。然而我们仍然不明白计算机是如何工作的,也不明白这些晶体管为什么要以这种方式相连。于是某一天,我们决定将几个晶体管连接起来看个究竟。结果我们发现,瞧,将区区三个晶体管以某种方式连接在一起,就构成了一个放大器,一端输入的信号在另一端就会被放大。(收音机和电视机里的放大器就是用晶体管以这种方式制成的。)这是一个重大的发现,一夜之间,使用晶体管放大器制造收音机、电视机和其他电子设备的新工业产生了。这固然是好事,但它还是没能告诉我们计算机是如何工作的。尽管放大器和计算机都是由晶体管构成的,但它们之间几乎再没有别的共同之处。同理,尽管真正的大脑同三排的神经网络都由神经元构成,它们也几乎完全不同。
我在1987年夏天遇到的一件事,又在我对神经网络本来就不太大的兴趣上泼了盆凉水。当时我参加了一个有关神经网络的会议,其间观看了一家名为Nestor的公司的展示。Nestor推出了一种在平板电脑上识别手写文字的神经网络应用,要价100万美元。这引起了我的注意。虽然Nestor大力鼓吹它的神经网络算法多么复杂精妙,甚至将其吹捧为另一个重大性突破,但我却觉得手写识别问题其实可以通过更为简单、传统的方法解决。那天我回到家里,反复思考这个问题。两天后,我设计出了一款速度更快、体积更小、使用更灵活的手写识别器。我的解决方案里并没有使用到神经网络,其工作原理也同大脑完全不同。尽管那次会议引发了我对设计带有触控笔界面的电脑的兴趣(并最终成就了10年后的PalmPilot掌上电脑),但它同样也使我更加确信,神经网络相对传统方法而言,并无太大的改善。我设计的手写识别器最后成为了Graffiti文本输入系统的基础,被广泛应用于第一代Palm产品上。我想Nestor在这场商业竞争中应该是被淘汰了。
简单的神经网络走到了尽头。尽管它们的大多数功能都能被其他方法轻易取代,最终媒体的关注热情也逐渐消散。但至少,神经网络的研究者们并没有宣称他们的模型是智能的,毕竟它们只是些极其简单的网络,功能上也没有超越人工智能。我在此并不想给大家留下一种印象,认为所有的神经网络都只有简单的三层变化。一些研究人员仍在继续研究设计不同的神经网络。如今,这个名词被用来描述一系列不同模型的集合,其中一些从生物学看来是精确的,另一些则不是,但它们几乎都没有抓住新皮层的总体功能和结构。
在我看来,大多数神经网络的最根本缺陷在于——这也是它与人工智能共有的特点——太注重行为。这是一个致命的负担。无论他们将这些行为称为“答案”、“模式”,还是“输出”,人工智能和神经网络研究者都假定智能存在于一个程序或神经网络处理输入信息之后而产生的行为中。计算机程序或神经网络最重要的属性就在于它是否能给出正确的、令人满意的输出,就像阿兰·图灵所给出的启示,智能等同于行为。
然而,智能并不单是指表现出智能的动作或行为。行为是智能的一种表现,但它既不是智能的核心特征,也不是智能的基本定义。片刻的思考就可以证明这一点:即使躺在黑暗中什么都不做,只是思考和理解,你也是智能的。忽略头脑中的活动而只关注于行为,对理解智能和建造智能机器造成了极大的障碍。
在进一步探索智能的新定义之前,我想先介绍另一种与真正大脑的工作原理更为接近的联结主义方法。问题是,似乎没有人认识到这项研究的重要性。
就在神经网络大出风头之时,一小部分研究神经网络理论的学者从主流领域中分离出来,构建了一种不以行为为中心的网络,称之为“自—联想”记忆网络。它同样由相互连接的简单神经元构成,这些神经元在达到一定刺激阈值时会激活。然而它们之间的连接方式与一般的神经网络不同,其中使用了大量的反馈。与只能正向传输信息的神经网络不同,自—联想记忆与反向传播网络类似,能将每个神经元的输出传回给输入——就像自己给自己拨电话。这种反馈回路造成了一些有趣的特点。当一种活动的模式被加予人造神经元时,它们会对这种模式形成记忆,这种网络将外界活动模式同它自身关联在一起,因此被称为“自—联想”记忆。
初看起来,这种回路所导致的结果似乎很荒谬。想要检索一个被存储于这种记忆中的模式,你必须先提供这个模式。这就好比你去杂货店买香蕉,当店主问你如何付款时,你说用香蕉。你可能会问:“这样的设计有什么好处呢?”然而,自—联想记忆所拥有的一些重要特征,在大脑中亦有体现。
其中最重要的一个特征是,如果想要检索某个模式,你不必事先拥有这个模式的全部,只要有其中的一部分甚至一个乱作一团的样子就可以。即使从一个混乱的版本开始,自—联想记忆也可以检索到最初存储时的正确模式。这就好比拿着吃剩的半把褐色香蕉去杂货店换回了一整把绿色香蕉一样。或是你拿着残破得无法辨认的钞票来到银行,柜台职员对你说:“我看得出这是一张破损的百元大钞,来把它给我,我给你换一张崭新的。”
第二个特征是,与大多数其他的神经网络不同,自—联想记忆可被设计用来存储模式序列,或称为时序模式。这一功能可以通过在反馈中加入延时来实现。有了这个延时,你便可以向该网络呈现一个模式序列,类似于一段旋律,自—联想记忆就可以记住它。当我输入“一闪一闪亮晶晶”的前几个音符时,自—联想记忆马上就可以返回给我整首曲子。当输入序列的一部分时,该记忆便能够回忆起其余的部分。我们将会看到,这同人们学习几乎所有模式序列时的方式如出一辙。我认为,大脑就是使用与自—联想记忆相似的回路来实现这种学习的。
自—联想记忆提示了反馈和随时间变化的输入的潜在重要性。遗憾的是,绝大多数的人工智能、神经网络和认知科学家都忽视了这两者。