1.5 图灵测试:何谓智能?
在1945年到1947年期间,图灵从美国回到英国之后居住在伦敦的汉普顿区。这段时间内他在为“英国国家物理实验室”(National Physical Laboratory, NPL)工作,工作的具体内容是设计一款名为“自动计算引擎”(Automatic Computing Engine, ACE)的通用电子计算机。1946年2月,图灵发表了世界上详细论述带程序存储功能(Stored-Program)的计算机体系架构的最早论文之一。但是由于政府决策者的短视,ACE完成理论设计后,反而陷入了一连串研发电子计算机的工作是否值得现在就去投入的争论中,并未能立刻进入建造阶段。图灵因此感到心灰意冷,离开NPL回到大学校园(剑桥大学和曼切斯顿大学),专心研究机械与智能去了。
ACE电子计算机
关于ACE的历史,其实很值得详细书写一番,如果ACE当时立即启动建造,将很有可能和冯·诺依曼的“离散变量自动电子计算机”(Electronic Discrete Variable Automatic Computer, EDVAC)竞争“现代计算机的鼻祖”的头衔(ACE建造工作重新启动之后,在1950年竣工,而EDVAC则在1949年完成,两者完成时间仅差不到1年),也许今天学校的计算机课本讲到体系架构时就不再是冯·诺依曼架构了。图灵和冯·诺依曼(Von Neumann,1903—1957)都是数学和计算机科学领域的天才,他们虽然没有直接的合作,分别在两个国家独立研究,但对计算机体系架构的观点却出奇一致,只是运气上冯·诺依曼要比图灵幸运得多。图灵关于ACE的工作和人工智能关系有限,我们就不再花费笔墨在这上面了。
由于英国政府的保密要求,回到剑桥后,图灵所做的关于机械智能的研究在当时并未公开发表(图灵的论文《智能机器》(Intelligent Machinery)写于1948年,直至1992年才在《阿兰·图灵选集》中发表)。直到1950年,图灵在《心灵》(“Mind”)杂志上发表了另一篇划时代的论文:《计算机器和智能》(Computing Machinery and Intelligence),笔者相信大部分读者都没有听说过这篇文章,但也敢肯定有很多人听说过“图灵测试(Turing Test)”,正是这篇文章提出了著名的“图灵测试”。可以说,也正是因为这篇论文对图灵研究工作的总结,使得后来图灵被世人冠以人工智能之父的荣耀。
1950年图灵在《心灵》杂志中发表《计算机器和智能》,图为《心灵》杂志的目录
我们先来介绍图灵测试,与当年和香农争论“智能该如何定义”这个问题时的思路不同,经过几年时间的探索,图灵已经意识到在当时的学术积累下强行定义智能将是适得其反的。因此,图灵在《计算机器和智能》的开篇就直接说明了他不会正面地明确定义何谓“智能”,而是先假定智能可以被机器所模拟,然后对机器是否拥有智能给出了一个侧面的判定途径:
“如果人类由于无法分辨一台机器是否具备与人类相似的智能,导致无法分辨与之对话的到底是人类还是机器,那即可认定机器存在智能。”
这个简单的机器对人类的“模仿游戏”便是现今举世闻名的图灵测试。图灵在提出图灵测试的时候,并未想到会对后世带来如此深远的影响。大约从1998年互联网兴起开始,每隔一段时间就有企业或机构出来声称自己研制的机器人通过了图灵测试,其实这几乎都是商业操作和宣传的噱头,无一例外都是特定条件下,如“在5分钟或者20句的对话中,成功令若干个受测者认为与他对话的机器是个13岁的孩子”这一类型的“通过测试”。而图灵所定义的图灵测试,更接近于一个思想实验,并未规定参加测试的机器要和人对话多长时间,要骗过受测者中多少人,参加测试的人类智力、年龄等应该在什么样的水平,机器应该模仿一个年龄多大的人类等(论文中倒是列举了很多可能提的问题和计算机回答的场景来进行论述,但并未对测试加以任何判定的条件限制)。图灵测试中所指的人类,也更多是一个泛称,而非特定的某类人或某个人类个体。
迄今为止,没有任何机器能够通过真正意义上的图灵测试。有趣的是,因为机器在图灵测试上一次又一次的失败,人类基于机器通过这种测试的困难度,反而创造出图灵测试最广泛的应用场景,这种应用在网络上随处可见—图形验证码。验证码的英文单词“Captchac”其实就是“通过图灵测试来完全自动地分辨出计算机和人类”这句话的首字母缩写(Completely Automated Public Turing test to tell Computers and Humans Apart)