人工智能的诱惑与计算机的局限

我们如今看到的计算机发展的这个历程,并不是当初精心设计好的。人类当初的设想其实是另外一个样子。

现代电子数字计算机的出现,使得人类第一次有了功能足够强大并且灵活介入人的智力活动的辅助智能的工具。辅助智能与具有智能之间并没有清晰的分界。辅助智能,必然也要完成一些原本只能由人脑才能完成的“精神”层面的工作,所以这些工作当然可以称之为智能活动。这样,计算机被称之为具有智能,也并非是夸张之词。

但真正的问题在于,人类的智能活动是极为复杂、也极其多样性的。计算机在理论上能够完成哪些人类的智能活动,既取决于计算机自身的本质性限,也取决于人类各种智能活动的特质。

上个世纪50年代起,人们被计算机能够完成的智能活动所鼓舞,将巨大的热情和资源投入到了让计算机全面具有人的智能的努力之中。这个努力一直持续到20世纪90年代而发生了转折。

在这个过程中,人们真正关注的焦点不是像今天这样不断努力让计算机越算越快,而是如何让计算机拥有真正的智能,而这显然并不完全与“算”的快慢有关。所以,当时的设想是未来的计算机将拥有与人一样的智能,而不是像今天这样,每年大家在比哪个国家的超级计算机运算的速度是最快的。

显然,当初设想的这条路并没有走通。在当年学者们让计算机拥有智能的努力过程中,有几个标志性的事件。

1.“人工智能”的正式诞生及学者们的乐观预言

1956年夏,在美国达特茅斯学院(Dartmouth College)举行的一个持续两个月的讨论会上正式确立了“人工智能”这一研究领域。JohnMcCarthy(1927-2011,计算机科学家,LISP(全名LISt Processor,即表处理语言)语言发明人,达特茅斯学院/麻省理工学院/斯坦福大学任职)提出的“人工智能”(Artificial Intelligence,AI)一词被正式接受作为这个领域的学术名称。会议的参加者在接下来的数十年间都是AI研究的领军人物。他们中有许多人预言,经过一代人的努力,与人类具有同等智能水平的机器将会出现。同时,大量的投资被投入到AI研究中以期实现这一目标。

当时大家的乐观情绪从下面的预言中可以充分地体现出来:

1958年,H.A.Simon(1916-2001,心理学家,1978年获诺贝尔经济学奖,卡耐基–梅隆大学任职),Allen Newell(1927-1992,计算机科学家,兰德公司/卡耐基–梅隆大学任职):“十年之内,数字计算机将成为国际象棋世界冠军。”“十年之内,数字计算机将发现并证明一个重要的数学定理。”

1965年,H.A.Simon:“二十年内,机器将能完成人能做到的一切工作。”

1967年,Marvin Minsky(1927-,认知科学家,麻省理工学院AI实验室任职):“一代之内……创造‘人工智能’的问题将获得实质上的解决。”

1970年,Marvin Minsky:“在三到八年的时间里我们将得到一台具有人类平均智能的机器。”

最终研究人员发现自己大大低估了这一工作的难度。由于James Lighthill爵士(1924-1998,数学/空气动力学家)的批评和国会方

面的压力,英国和美国政府于1973年停止向没有明确目标的人工智能研究项目拨款。七年之后受到日本政府研究规划的刺激,美国政府和企业再次在AI领域投入数十亿研究经费,但这些投资者在20世纪80年代末重新撤回了投资。AI研究领域诸如此类的高潮和低谷不断交替出现直至20世纪90年代以后。

2.日本的第五代计算机计划及其引发的狂想

1981年10月,日本经济产业省拨款八亿五千万美元支持第五代计算机项目。之所以称之为第五代计算机,是因为大家把用电子管、晶体管、集成电路和大规模集成电路制造的计算机,分别称为前四代计算机。日本第五代计算机计划的目标是造出能够与人对话、翻译语言、解释图像、并且能够像人一样进行推理的机器。日本通产省组织富士通、NEC、日立、东芝、松下、夏普等8家著名企业配合渊一博所长所领导的日本“新一代计算机技术研究所”(ICOT)共同开发第五代机,可谓倾全国之力,见图1-7。第五代机计划定为10年完成,分为三个阶段实施。计算机采用Prolog语言,并准备打破冯•诺依曼结构。他们当时乐观地认为,在20世纪50年代以来人工智能领域的各种进展的基础上,奋斗十年就能够达到他们制定的目标。

当时有人宣称,哪个国家首先造出第五代计算机,哪个国家就会在这个计算机的帮助下,获得别人所无法具有的科技发展动力,迅速摆脱其他国家的追赶,取得科技领域的绝对优势地位,而这一过程就像原子弹被触发而引起的无法遏制的链式反应那样壮观。

因此在日本发布第五代计算机计划之后,其他国家纷纷做出响应。英国开始了耗资三亿五千万英镑的Alvey工程。美国一个企业协会组织了MCC(Microelectronics and Computer Technology Corporation,微电子与计算机技术集团),向AI和信息技术的大规模项目提供资助。DARPA(美国国防部先进研究项目局)也行动起来,组织了战略计算促进会(StrategicComputing Initiative),其在1988年向AI的投资是1984年的三倍。1992年,因最终没能突破关键性的技术难题,无法实现自然语言人机对话、程序自动生成等目标,导致了日本第五代机计划最后阶段研究的流产,渊一博也不得不重返大学讲坛。也有人认为,“五代机”计划不能算作失败,它在前两个阶段基本上达到了预期目标。

3.人工神经网络泡沫

人类对大脑一直充满好奇。1943年,W•McCulloch(1989-1969,神经生理学家,麻省理工学院任职)和W•Pitts(1923-1969,数理逻辑学家,自由学者)在分析、总结大脑神经元的基本特性的基础上,首先提出神经元的数学模型以及基于神经元的神经网络。因而,他们两人被称为人工神经网络研究的先驱。

但是人工神经网络模型仅仅做到了对生物神经元的“形”像,而远非神似。学者们声称其可能具有的超凡能力,根本无法用理论或实践证明,甚至可证明的结论与此相悖。所以尽管基于这个概念的所谓“联结主义”(Connectionism)曾经热闹过一段时间,但随后它并没有成为人工智能领域的主流方向,甚至在20世纪70年代基本销声匿迹。

由于20世纪50~70年代人工智能研究并没有实现人们预期的实质上的突破性进展,在日本开始第五代机计划的刺激下,几乎被人遗忘了的人工神经网络在20世纪80年代又“死灰复燃”。甚至有人称之为“第六代计算机”。在技术实现的结构上,它显然完全有别于冯•诺依曼体系。

1982年,John Hopfield(1933-,物理学家,加州大学伯克利分校/普林斯顿大学任职)证明一种新型的神经网络(现被称为“Hopfield网络”)能够用一种全新的方式“学习”和“处理”信息。几乎在同时,DavidRumelhart(1942-2011,心理学家,加州大学圣迭戈分校/斯坦福大学任职)推广了“反传算法(Backpropagation,BP)”,一种适用于拥有特定神经元传输函数的分层前馈人工神经网络的“训练”方法。这样的网络后来被称为BP网络,见图1-8。

1986年由Rumelhart和James McClelland(1948-,心理学家,卡耐基–梅隆大学/斯坦福大学任职)主编的两卷本论文集“分布式并行处理”问世,在计算机界引发了新一轮持续近十年的人工神经网络热潮。

但是相对于20世纪40年代十分有限的人工神经网络理论来说,这一轮人工神经网络的热潮,并没有催生出真正本质上不同的新的人工神经网络基础性理论。所以也就没有出现在计算机领域有真正影响力的成果。

比如所谓的Hopfield网络,虽然看上去有一些神奇的表现,但是并不具有多少实用价值。被称为20世纪80年代人工神经网络领域突破性成就的所谓“反传算法”(BP),本质上不过是微积分诞生之日就存在的梯度下降求函数局部最小值算法,在特定的网络结构传输函数下的一种迭代表达形式。这种表达形式其实在1969年就已经被推导出来。而被“训练”后的分层前馈网络(BP网络),不论是否是采用“反传算法”来训练的,都不过是某种(由选取的网络形式决定)非线性函数对一个未知函数的有限样本数据映射关系的拟合。它不可能具有超出一般非线性函数映射之外的“智能”。对于训练后的网络,我们无法预测它在样本之外的数据上的表现。换句话说,我们并不知道不同的网络结构适用于解决什么类型应用域的问题。这个工具的有效性,只有用使用的结果来事后验证,而基本无法事先预见。这样的工具,在其价值与其名称给我们的暗示之间,显然有很大的落差。

人工神经网络,主要是BP网络,今天依然在一些场合被使用,但是已经没有了当初的炫目光环,不过是对函数样本做非线性拟合的众多可能的方法中的一种。人们应用人工神经网络,通常是因为对于一个非线性函数映射,除了能够获取一些样本之外,无法对函数性质或者说对问题的性质做更进一步的理解与认识,所以便采用非线性拟合这种“简陋”的方式来试图解决问题。

随着日本第五代计算机计划在1992年无果而终,以及随后人工神经网络热在20世纪90年代初退烧,人工智能领域再次进入“AI之冬”。这个冬季如此的寒冷与漫长,以至于到今天为止怀有制造与人有同样智能机器的雄心壮志的人都相当低调。从根本上看,人工智能热潮的冷却,是因为人们在人工智能领域经过了几十年的努力,没有能够理解一般意义上的智能过程,因而也就没有能够在理论上抽象出类似数字基本计算那样的基本智能操作,用以支撑更为高级复杂的智能过程。人工智能成为了不同主题的各种具体应用,而不再试图理解与复现一般性的智能过程。

也正因为我们不再把完整的,或称之为广义的智能作为目标,而致力于实现一些具体的特定智能类活动,所以在一般意义上“智能”是什么,以及如何定义“智能”便不再重要。重要的是针对每一个具体的特定智能类活动做出清晰的界定,并作深入的分析,从而力争用适当的方法通过计算操作对其进行人工复现。

尽管在一般的意义上的完整智能始终没有能够被人工复制,但是在人工智能方向上持续了30多年的努力,产出了许多用计算机解决特定智能问题的比较有效的方法,并且随着计算机性能的提高,可以被解决的智能类问题,或者说能够用计算机解决到可以接受程度的智能类问题越来越多。战胜了国际象棋世界冠军的IBM深蓝等,就是这种努力的产物。也就是说,计算机在智能的道路上取得了长足的进步,并且依然不断地前行——尽管在今天,已经很少有人把让机器具有与人相当的完整智能作为奋斗的目标了。

这些计算机智能应用,都是把问题转化为了计算类问题,然后由计算机来解决的。因此他们与其他“非智能”类的应用在底层本质上并没有差别。这些智能类的应用,也因此逐步融入了各种不同的计算机应用之中,而常常不再冠以“人工智能”这个名字独立存在。比如数据挖掘、信息检索、汽车自动驾驶等等应用中,都有属于智能类的算法嵌入其中。

始于20世纪80年代的这两次远未达到预期的人工智能领域的努力,最终导致计算机的发展走上了今天我们看到的这条道路:计算机基本系统坚守在冯•诺依曼结构基础上,几乎以运算性能的提高为唯一的最求目标;具体的应用,基本都由软件来实现。专门面向人工智能应用的计算机系统,如当初的LISP计算机,已经销声匿迹。计算机市场成为了通用数字计算机的天下。建立在有限字长二进制数字的基本计算基础上的计算能力,既是计算机强大之处,也成为了计算机无法突破的本质性局限。

当然,今天我们在使用计算机的时候,并不需要把问题都分解到最低层的有限字长二进制数字的基本计算。因为我们在计算机裸机外面,已经构造了操作系统、高级编程语言等软件,把许多数字基本计算能够实现、并且是通用的高级功能,固化下来供不同的应用使用。虽然问题最终实际上还是通过有限字长二进制数字的基本计算来解决的,但是我们做的工作不必每次都“从猿到人”地走一遍,而是把问题映射到远比数字基本计算更为复杂且丰富的高层操作(由高级程序语言及开发运行环境决定)上。

这带来的好处显而易见。但是同时让人们对计算机的本质能力形成了一些模糊的幻觉。这对于用计算机完成一般性的工作影响不大。但是如果我们要做一些极具开创性的工作的时候,要把一些本质上未曾用计算机实现过的任务,特别是与人的智能相关的任务,用计算机来实现的时候,对计算机的本质能力哪怕是在潜意识中的不准确的理解,也会对我们的判断造成重大影响。而我们的判断力,如将要在后面所分析的那样,在计算机应用中,具有非常重要的意义。