为什么选取这篇文章进入本书,而且作为第1章首先进行解析呢?艾伦·图灵的一生中有两篇非常重要的文章,分别是《计算机器与智能》和《论可计算数及其在判定性问题中的应用》。有趣的是,同样一个人撰写的文章,这两篇文章一个是肯定的,一个是否定的。在《计算机器与智能》中,艾伦·图灵论证了“数字计算机在理论上可以思考”。在《论可计算数及其在判定性问题中的应用》中,图灵论证了“不是所有的可定义的问题都可以被计算”。图灵的这两篇文章,一篇说明了计算机“能”的一面,另一篇说明了计算机“不能”的一面。
这两篇文章的论证方法是不同的。为了让读者有一个乐观的状态,我们首先介绍和解析说明了计算机“能”的一面的这篇文章。
第二篇文章运用了大量的数理逻辑知识,全篇各种形式化的符号,对这篇文章,大家争议不多。第一篇文章没有任何形式化的符号,对这篇文章,大家有一些争议(尽管艾伦·图灵已经在文章中反驳了9种典型的反对意见)。有争议的论文,不代表就是错误的,更不代表没有价值。
人类的历史走到现在,人工智能经历了多次兴衰起伏,当前正处于一个蓬勃发展的阶段(主要归功于计算能力和存储能力的提高)。让我们在历史中找到现阶段的定位,回归基本问题,追根溯源,看看我们已经取得了哪些进展,还有哪些差距,未来可能走多远,以及未来可能的前进方向。
《计算机器与智能》是艾伦·图灵在1950年于《心智》( Mind )杂志上发表的在计算机科学发展史上具有奠基意义的一篇经典文章,这篇文章相距1936年《论可计算数及其在判定性问题中的应用》的发表已过去了14年。
艾伦·图灵出生于1912年,与我国的华罗庚、“三钱”(钱学森、钱伟长、钱三强)几乎同龄,他在发表《计算机器与智能》这篇文章时只有38岁。今天,设想如果没有艾伦·图灵,在过去的一个世纪中,计算机的面貌将发生怎样的变化?如果没有华罗庚和“三钱”,我国的科学技术面貌将发生怎样的变化?这给我们的启示是,我们需要尽力包容、鼓励、尊重、支持年轻科学家的成长和探索。
下面给出一些科学家的出生时间:
●约翰·冯·诺依曼(计算机科学家,出生于1903年12月28日)
●库尔特·哥德尔(数理逻辑学家,出生于1906年4月28日)
●华罗庚(数学家,出生于1910年11月12日)
●艾伦·图灵(计算机科学家,出生于1912年6月23日)
●钱学森(空气动力学家,出生于1911年12月11日)
●钱伟长(力学家,出生于1912年10月9日)
●钱三强(核物理学家,出生于1913年10月16日)
●莫里斯·威尔克斯(计算机科学家,1967年图灵奖得主,世界上第一台存储程序式电子计算机EDSAC的设计者,出生于1913年6月26日)
之所以将上述科学家列在一起,至少有两点考虑:一方面,他们都将在本书中的不同地方被提到,熟悉他们的事迹有助于理解本书的主题;另一方面,他们的出生时间较为接近,“江山代有才人出”,以同时代涌现的人才群体的视角审视和怀念这些科学家,或许能给我们一些启示。
《心智》杂志是心理学和哲学领域的一本期刊,每个季度出版一次。艾伦·图灵这篇论文是1950年第四季度这一期的第一篇文章。一篇计算机科学的经典文献发表在心理学和哲学领域的期刊上,这说明学科之间存在着密切的联系,因此多学科之间的融合是必要的。
这篇文章涉及了很多哲学上的观点,比如唯我论、行为主义、不可知论、形式主义、符号主义、联结主义。
这篇文章的标题是两个非常基本的名词,一个是计算机器(Computing Machinery),一个是智能(Intelligence),即使我们在70多年后讨论这两个基本概念仍很容易陷入空谈,或者原地踏步,表面热闹但却是循环论证,或者“盲人摸象”,总之不容易取得实质性的、全面的、正确的新结果。注意,艾伦·图灵在文章中使用了“intellectual capacity”表达“智能”这个意思,这充分说明智能是能力的一种,智能不是全部能力。
注意到艾伦·图灵在标题中说计算机时,没有用Computer这个词,因为这个词从本意上可以指从事计算的人(Human Computer)。虽然今天Computer一般指计算机,但为了避免歧义,艾伦·图灵使用Computing Machinery来指代进行计算的机器,是非常精准和恰当的。
什么是计算机?什么是智能?计算机能否思考?这样的“基本”问题值得回答吗?能够回答吗?有的人不仅仅对问题的答案有不同意见,对问题本身也有不同意见,他们认为:不要“正名”,只管用就好了;或者说,只去做具体的设计和应用就好了,不要思考“空洞”“好高骛远”“虚无缥缈”的问题;或者说,只关注怎样做(How)就好了,不要关注为什么(Why)和是什么(What)。持这些观点的人看到艾伦·图灵撰写的《计算机器与智能》或许应该有所反思。一个38岁的年轻人,在计算机刚刚起步(只有4年)的时刻,讨论“计算机器与智能”,我们应该持鼓励、赞赏的态度,而不是持讥笑、反对的态度,这对中国基础科学的发展或许有益处。
这里顺便提一下,我国古代有关于“正名”的研究,包括《论语》和《吕氏春秋》等典籍都有关于名实的文章。“正名”就是修正或端正事物的指称、名号,使名实相符。“名”是对事物的指称,规定事物的属性及其与他者的关系。“实”是名所指称的事物、实体。名的规定应与其所指之实相符。但在现实中,往往名不符实。针对这种情况,就要求事物所用之名不能超过事物自身的属性,名所指之实也不能超出名所规定的范围。“正名”是维护名所构建的社会秩序的重要方法。各家都认同“正名”的主张,但其所修正的“名”的具体内容则有所不同。
这篇文章原文共28页,分7个章节,依次是(1)模仿游戏、(2)对新问题的评价、(3)游戏中的机器、(4)数字计算机、(5)数字计算机的通用性、(6)关于主要问题的对立观点、(7)具有学习能力的机器。全文内容丰富,涉及神学、物理、化学、生物、信息论、数理逻辑等多个学科,但紧扣“机器是否能够思考”这一主题,语言简练,逻辑严谨,可以看出艾伦·图灵能够得心应手地驾驭多学科的知识,他不是对这些知识一知半解,相反,这些知识深深地融入他的意识之中。
本书的第1章和第2章是艾伦·图灵的两篇流芳百世的著作,尽管两篇文章都比较有名,但有人认为第一篇的技术性要差一些。我们认为,这是两篇不同风格的文章,第一篇文章没有符号化的东西,没有定量的东西,没有定理,没有具体的结构设计,但不代表第一篇文章不重要。第一篇文章讲计算机能做什么,第二篇文章讲计算机不能做什么。人类中的大多数是“入世”的,是建设者,所以更关心前者。
我们在写作本书的时候,将做两个方面的新工作,一是对第一篇文章(也就是本章)做一些定量的拓展,挖掘其中可以定量化、符号化、形式化的内容,二是对两篇文章进行类比和对比研究,形成“单独-类比-对比-整体”的思考路线。
本节的标题是“模仿游戏”(The Imitation Game),也就是后人所称的“图灵测试”(Turing Test)。
我打算考虑这样一个问题:“机器能思考吗?”要回答这个问题,需先给出术语“机器”和“思考”的定义。虽然可以用尽可能反映其普通用法的方式给出定义,但是这种方式是危险的。如果“机器”和“思考”这些词语的含义是通过审视它们通常怎样被使用而发现的,将很难避免这样的结果:用盖洛普调查那样的统计方式寻找到“机器能思考吗?”这一问题的含义和答案。但是,这是荒谬的。因此,我不是试图给出这样的定义,而是提出另外一个问题,这个问题和原问题紧密相关,而且是用相对不含糊的词语表达的。
定义有时比设计还要困难。什么是“机器”?什么是“计算机”?什么是“思考”?给出一个科学的定义并不容易。有时容易陷入同义反复,有时容易用更高级的概念来定义较为低级的概念(更高级的概念本身还没有定义)。
通常的词典和辞海,在定义概念时是“用尽可能反映其普通用法的方式给出定义”,同时给出一些例句,然后归纳出一种定义。语言学家王力是这方面的泰斗。
盖洛普民意测验(Gallup poll)是指由一位叫盖洛普的人设计的用以调查民众的看法、意见和心态的一种测试方法,产生于20世纪30年代。它根据年龄、性别、教育程度、职业、经济收入、宗教信仰这六个标准,在美国各州进行抽样问卷调查或电话访谈,然后对所得材料进行统计分析,得出结果。此方法在美国仍经常运用,并有相当高的权威性。
在理解新生事物时,一种比较常见的做法是组织一些专家分别给出意见,然后按照“少数服从多数”的统计方式做出决定。艾伦·图灵指出这种做法是危险的。他把问题等价转化了,这是一个具有非凡创造性的做法。
问题的新形式可以通过一个我们称为“模仿游戏”的游戏来描述。这个游戏有三个人参与,一个男人(A)、一个女人(B)和一个男女皆可的提问者(C)。提问者处在一个与另外两人相隔离的屋子里,对提问者来说游戏的目标是要判断另外两个人哪个是男人,哪个是女人。提问者用标签X、Y指称外面的两个人,游戏结束时,他要说出“X是A,Y是B”或者“X是B,Y是A”。提问者C允许向A和B提出下面这样的问题:
C:X,请告诉我你头发的长度。
提问者C之所以要问这个问题,是希望利用“女人的头发通常比男人的头发长”这个常识去判断A和B的性别。
现在假如X实际上是A,那么A必须回答。A在游戏中的目标是努力使C做出错误的识别。因此他的回答可以是:“我的头发乌黑发亮,最长的一缕大概九英寸长。”
A是男人(大多数男人的头发较短),但他为了蒙骗提问者C,让C做出错误的判断,所以故意说假话。
为了排除声音帮助提问者得出结论的可能性,问题的答案应该写出来,或者最好是打印出来。理想的安排是,让两个屋子用远程打印通信,也可以通过中间人传递答案。对第三个人B来说,她在这个游戏中的任务是努力帮助提问者。她的最优策略可能就是给出正确答案。她可以在自己的答案中加入“我是女的,别听他的”这样的话,但是这并不能提供更多的帮助,因为男人A也能做出相似的回答。
为什么要排除声音帮助提问者得出结论的可能性呢?因为声音在智能中所起的作用不是本质的,也就是说,如果通过声音做出判断,即使不具有智能或者具有很低的智能,也能够做到。
文章共7节,第1节标题为“模仿游戏”。这一节涉及“虚拟化在智能中具有什么作用?”“功能和性能有何区别?”这样的本质问题。
现在提出这样一个问题:“如果用机器代替A,将会发生什么情况?”同与两个人玩这个游戏相比,提问者判断错误的概率是否发生变化?这些问题取代了原问题(机器能思考吗)。
我们除了问“新形式的问题的答案是什么”,还可以问“这个新问题值得研究吗”。我们先立即考察第二个问题,以避免进入无限回归。
新问题的好处在于,在一个人的体能(physical capacity)和智能(intellectual capacity)之间画出了一条截然分明的界线。没有一个工程师或化学家宣称能够生产出和人的皮肤完全相同的材料。在未来的某天,这可能成为现实,但是给一个“能思考的机器”包装上人造的皮肤对于让它更像人没有什么意义。我们设置问题的方式考虑到了这一点,防止让提问者看到、接触到其他游戏者或听到他们的声音。所提议的标准的其他好处在下面示例的问题和答案中显示出来:
这一段明确指出,新问题的好处在于,在一个人的体能和智能之间画出了一条截然分明的界线。
第2节标题是“对新问题的评价”。艾伦·图灵指出“外表与智能无关”。一个外表(比如皮肤)很像人的机器,可能只有很低的智能;一个外表不像人的机器,可能具备很高的智能。
图灵测试的一个关键之处是“防止让提问者看到、接触到其他的游戏者或听到他们的声音”,背后暗含的是虚拟化、功能主义、行为主义的思想。
问:请写一首以福斯桥为主题的诗。
福斯桥(Forth Bridge),又叫福斯铁路桥,是指英国爱丁堡城北福斯河(Firth of Forth)上的铁路桥。铁路桥建成于1890年,是英国人引以为豪的工程杰作。桥梁的大部分结构是钢,传说中等到把桥梁全部刷一遍油漆之后,前面的已经褪色,就又得开始重新刷油漆了,所以“paint the Forth Bridge”(给福斯桥刷漆)成为英国俗语,形容一件永远都做不完的工作。
提问者之所以问这个问题,是希望基于“计算机可能不会写诗,或者计算机写出的诗与人类写出的诗有明显不同”,从而判断回答者是机器还是人类。
答:这件事上饶过我吧,我从来不会写诗。
问:34 957加70 764等于多少?
答:(停了30秒后给出答案)105 721。
计算机本身可能只需要1纳秒(10 -9 秒)就可以回答,这里为什么停了30秒后才给出答案呢?是因为计算机想假装得更像人。“假装”换个说法就是虚拟化。
问:你玩国际象棋吗?
答:是的。
问:我的王在K1,没有别的棋子了,你只有王在K6,车在R1。轮到你走,你走哪步?
答:(停顿了15秒后)车移动到R8,将军。
与上面类似,计算机本身可能只需要几纳秒就可以回答,这里为什么在15秒的停顿后才给出答案呢?是因为计算机想假装得更像人。
这种问答方式似乎适用于我们希望考察人类能力的任何领域。我们不希望因机器不能在选美比赛中取胜而被惩罚,正如我们不希望因人不能在和飞机赛跑中取胜而被惩罚一样。我们的游戏的条件让这些无能变得无关紧要,如果参与者认为是明智的,他们可以尽兴地吹嘘自己的魅力、力量或勇敢,而提问者不能要求他们做实际的展示。
智能只是各种能力中的一种。就人类、动物、机器来说,除了智能,还有力量(爆发力、耐力)、听觉、视觉、味觉、嗅觉、运动(敏捷性、持久性)、魅力、勇敢等各种能力属性。有智能不代表一定全能,某些维度上无能不代表没有智能或智能低下。
人类的视觉范围只是电磁光谱中的一部分,被称为可见光光谱,波长范围为380nm~760nm。人类的眼睛之所以只对可见光有反应,与眼睛视觉神经细胞上的色素分子有关,色素分子的谐振频率在可见光波段,这就是人只能看见可见光的原因。换句话说,如果色素分子或者视觉神经细胞(电磁波谐振器)能够接收其他电磁频段,就可以看见光谱波长在380nm~760nm范围之外的电磁波了。
这个游戏可能会因为太不利于机器而被批评。如果一个人试图伪装成机器,他的表演将会很糟糕。他会因为算术上的缓慢(slowness)和不准确(inaccuracy)而立即暴露。难道机器不能执行一些本应被描述为思考但与人的行为截然不同的事情吗?这个反对意见是很有力的,但是,尽管如此,我们至少可以说,如果机器被设计得可以令人满意地玩这个模仿游戏,那我们不必担心此异议。
上面这段话中,第一句的前半句想表达的意思是,游戏的条件对机器不利。为什么说“游戏的条件对机器不利”?
上面这段话中,中间一句的意思是:机器如果思考,为什么必须要看起来和人思考一样呢?也就是说,即使机器通过不了“图灵测试”,机器仍然有可能在思考。正式地说,“机器通过图灵测试”不是“机器能够思考”的必要条件。艾伦·图灵承认了这一点,他说“这个反对意见是很有力的”。
但是,“机器通过图灵测试”是“机器能够思考”的充分条件。艾伦·图灵说:“但是,尽管如此,我们至少可以说,如果机器被设计得可以令人满意地玩这个模仿游戏,那我们不必担心此异议”。如果能构造一台机器通过图灵测试,那就能说明“机器可以思考”了。
再回到刚刚的问题:为什么说“游戏的条件对机器不利”?
“机器通过图灵测试”是“机器能够思考”的充分条件,但不是必要条件。如果机器在图灵测试中表现不好,就可能被错误地判定为“不能思考”,但实际上机器可能是在以与人类不同的方式思考(比如速度、精度就不一样)。所以,从这个意义上说,“游戏的条件对机器不利”。
在经济学意义上,对人类来说,时间、耐心、注意力都是稀缺资源。数字计算机就是用来弥补人的这些稀缺资源。数字计算机相对人,在运算的速度和精度、重复做某件事的耐心上有优势。
有人可能会争辩,在玩“模仿游戏”时机器的最佳策略不是模仿人的行为,这是可能的,但我认为这种做法不可能有什么大的影响。无论如何,这里都不打算研究游戏理论,并且假定最优策略是努力提供和人自然提供的答案一样的答案。
只有当“机器”这个词的意义确定下来后,在第1节中提出的问题才能明确下来。自然的是,我们应该希望允许一切技术被用在我们的机器上。我们也希望允许这种可能:一个或一队工程师制造出一个可以工作的机器,但是却不能令人满意地描述机器的工作方式,因为他们主要使用实验(experimental)的方法来设计它。最后,我们希望从机器的定义中排除以通常方式出生的人。要构造一种定义来同时满足这三个条件是困难的。有人可能会要求这些工程师都是同一性别,但这实际上也不会令人满意,因为通过一个人的一个皮肤细胞养育一个完整的个体不是完全不可能的,这将是值得最高奖赏的生物科技的功绩,但我们不认为这是“建造一台能够思考的机器”的案例。这促使我们放弃允许一切技术的那个要求,我们之所以这样,是鉴于目前“能思考的机器”的研究兴趣是由一种特殊的通常被称为“电子计算机”或“数字计算机”的机器唤起的,因此,我们仅仅允许“数字计算机”参加我们的游戏。
艾伦·图灵是严谨务实的,在使用概念之前对概念做出清晰的界定,在这里他对“机器”的含义做了界定。
(1)在一个现实的机器上,不可能同时使用人类的一切技术或大多数技术,艾伦·图灵在本文中没有把DNA计算、量子计算等技术作为基础,而是将“电子计算机”或“数字计算机”作为基础。
(2)能制造机器,不代表能清晰准确地描述机器,通过实验的方法制造的机器与采用递归函数等数学方式构思的机器是不同的。
(3)为了方便讨论,艾伦·图灵将以通常方式出生的人排除在机器的定义之外。
关于人与机器之间的关系,存在多种不同甚至截然相反的观点。例如,法国科学家拉·梅特里(1709~1751)认为“人是机器”,并出版了名著《人是机器》,中译版由商务印书馆出版。拉·梅特里在《人是机器》中有这样一段表述:“人是一架如此复杂的机器,要想一开始便对它有一个明确的完整的概念,也就是说,一开始便想给它下一个定义,这样的事是不可能的。就是因为这个缘故,那些伟大的哲学家们 先天地、也就是说想借助于精神的羽翼做出来的研究,结果证明都是枉费心机。因此除了 后天地 ,是别无他法可想的;也就是说,只有设法,或者说,通过从人体的器官把心灵解剖分析出来,这样我们才有可能——我不说这样便无可争辩地发现了人性本身,但至少是——在这个问题上接近最大限度的或然性。”
定义“人”是困难的,定义“机器”或“计算机器”也是困难的。拉·梅特里在他的书中,反复提到“经验和观察”。这里需要提醒注意的是,数学不是自然科学,因为数学是先验的,也就是当你确定公理之后,所有的数学结论就已经确定了,不需要做实验就可以通过逻辑推理来得到它们。但是自然科学是经验的,因为自然科学基于实验,必须通过实验才能归纳出原理,而且原理是可能被新的事实推翻的。
拉·梅特里的《人是机器》是18世纪法国第一部以公开的无神论形式出现的系统的机械唯物主义的著作,书中列举了大量的医学、解剖学、生理学的论据来论证“人是机器”,说明人和其他动物一样也是机器一般的物质实体,所谓灵魂只是肉体的产物,从而抨击灵魂不朽的宗教教义。拉·梅特里曾做过军医,而他自己却不幸患病。他根据对自己病情的观察,获得这样的信念:人的精神活动取决于人的机体组织;思想只不过是大脑中机械活动的结果,当体力上变得更虚弱时,精神功能也会衰退。全书的主题是讨论宗教神学、形而上学所主张的心灵实体问题,在当时反对封建制度和宗教神学的斗争中起到了积极的作用。
与拉·梅特里类似,马文·明斯基(Marvin Lee Minsky,1969年图灵奖获得者)也认为“大脑不过是肉做的机器而已”。但莫里斯·威尔克斯(Maurice Vincent Wilkes,1967年图灵奖得主)认为“动物和机器使用完全不同的材料,是按十分不同的原理构成的”。
为什么有人可能会要求这些工程师都是同一性别呢?因为不同性别的工程师之间可能通过受精怀孕的方式产生后代,需要排除发生这种情况的可能性。艾伦·图灵的思维极其缜密,他考虑到了利用体细胞而非性细胞进行繁殖的可能性。性细胞是决定性别的细胞(精子、卵子),其形态、结构、功能与体细胞有别,其染色体数目为体细胞的一半。
威尔克斯1913年6月26日生于英国。1946年5月,他获得了冯·诺依曼起草的EDVAC计算机的设计方案的一份复印件。EDVAC(Electronic Discrete Variable Automatic Computer)在宾夕法尼亚大学莫尔学院于1945年开始研制,是按存储程序式思想设计的,并能对指令进行运算和修改,因而可自动修改其自身的程序。但由于在工程上遇到困难,EDVAC迟至1952年才完成,造成“研制开始在前,完工在后”的局面,而让威尔克斯占去先机。
威尔克斯仔细研究了EDVAC的设计方案,8月又亲赴美国参加了莫尔学院举办的计算机培训班,广泛地与EDVAC的设计研制人员进行接触和讨论,进一步弄清了它的设计思想和技术细节。回国之后,威尔克斯立即以EDVAC为蓝本设计自己的计算机并组织实施,起名为EDSAC(Electronic Delay Storage Automatic Calculator)。
EDSAC采用水银延迟线作为存储器,可存储34bit字长的字512个,加法时间1.5ms,乘法时间4ms。威尔克斯还首次成功地为EDSAC设计了一个程序库,保存在纸带上,需要时送入计算机。但是EDSAC在工程实施中同样遇到困难:不是在技术上,而是资金缺乏。在关键时刻,威尔克斯成功地说服了伦敦一家面包公司Lyons的老板投资该项目,终于使计划绝处逢生。1949年5月6日,EDSAC首次试运行成功,它从纸带上读入一个生成平方表的程序并执行,正确地打印出结果。作为对投资的回报,Lyons公司取得了批量生产EDSAC的权利,这就是于1951年正式投入市场的LEO(Lyons Electronic Office)计算机,这通常被认为是世界上第一个商品化的计算机型号,因此这也成了计算机发展史上的一件趣事:第一家生产出商品化计算机的厂商原先竟是面包房。Lyons公司后来成为英国著名的“国际计算机有限公司”(ICL)的一部分。
除了能生成平方表,EDSAC在试运行期间就完成了一系列重大任务,向世人展示了计算机的巨大潜力。著名的统计学家罗纳德·艾尔默·费希尔(Ronald Aylmer Fisher)写了一个二阶非线性微分方程,程序员编出程序后,输入EDSAC很快就给出了解,这令费希尔叹为观止。
EDSAC还为剑桥大学著名的生物学家约翰·肯德鲁(John Kendrew)分析了成百上千张有关分子结构的X射线衍射图像的照片,肯德鲁因为这方面的成就而荣获1962年诺贝尔化学奖,他多次提到EDSAC在他的研究工作中所发挥的无可比拟的作用。射电天文学的主要创始人、因发明综合孔径射电望远镜而荣获1974年诺贝尔物理学奖的马丁·赖尔(Martin Ryle),也是在EDSAC上对获得的天文照片进行分析和综合从而取得成果的。
在设计与制造EDSAC的过程中,威尔克斯绝不是简单地模仿和照搬EDVAC的设计,而是创造和发明了许多新的技术和概念。诸如“变址”(威尔克斯当时称为“浮动地址”)、“宏指令”(威尔克斯当时称为“综合指令”)、微程序设计、子例程及子例程库、高速缓冲存储器(Cache)等。所有这些都对现代计算机的体系结构和程序设计技术产生了深远的影响。
此限制第一眼看上去过于严格,我会试图说明事实并非如此。要做到这一点,必须简要说明这些计算机的性质(nature)和特点(properties)。
为什么说“此限制第一眼看上去过于严格”?是因为有的人会提出,能思考的机器为什么是电子计算机或数字计算机呢?DNA计算机、量子计算机、模拟计算机是否也可以呢?
或许也可以这样说:如果最终发现数字计算机在游戏中不能表现出色(与我所认为的相反),将机器等同于数字计算机,与我们对“思考”所制定的标准一样,将不会令人满意。
艾伦·图灵对“思考”和“机器”均做了定义。
有人问艾伦·图灵自己的观点到底是什么?在上面这段话中的括号中,艾伦·图灵给出了明确的态度或断言:机器可以通过图灵测试,更具体地,数字计算机可以通过图灵测试,或者直接回答原问题,机器可以思考。
如果数字计算机不能通过图灵测试,有的人会说,这并不意味着所有机器不能通过图灵测试,DNA计算机、量子计算机、模拟计算机或许可以通过图灵测试。
目前已经有许多数字计算机处于正常工作状态,人们可能要问:“为什么不尝试直接做实验?这样很容易就能满足游戏的条件。让许多提问者同时参加游戏,然后统计出判断正确的概率。”对这个问题的简要回答是,我们并不是要问是不是所有的数字计算机都能在游戏中表现良好,也不是要问现在可用的计算机是否在游戏中表现良好,而是要问是否存在可想象(imaginable)的计算机在游戏中表现良好。这仅仅是一个简要回答,我们稍后将以一个不同的角度看待这个问题。
“为什么不尝试直接做实验?”,这个问题背后是实证主义的思想。
艾伦·图灵在这里做的是一个关于存在性的思维实验。就像伽利略关于自由落体的思维实验一样,这是一个思维实验,而不是一个现实实验。思维实验是指使用想象力去进行的实验,所做的都是在现实中无法做到(或现实未做到)的实验。
伽利略做了这样一个思维实验:亚里士多德认为,越重的物体越快,伽利略通过思维实验认为亚里士多德的认识是错误的。假设有一个重量为8的物体,另一个重量为4的物体。那么,重量为8的物体应该比重量为4的这个物体下落快。如果我们把两个物体用绳子牵在一起,由于速度慢的那个物体对速度快的物体的牵连,二者连在一起,速度应该介于二者单独下落的速度之间。但是,换一个角度考虑,重量分别为8和4的两个物体连在一起,可以被视为一个重量为12的物体,那么,根据亚里士多德的观点,这个新物体的速度应该比分开的两个物体都快!这与我们刚才得到的结论(速度介于二者之间)是矛盾的。伽利略如果真的做实验的话,就算二者同时下落,也非常不容易观察,并且还会被人辩驳说“明明有差距只是没有观察到”,伽利略用他巧妙的思维实验解决了这个问题。
证明(Proof)与证实(Verification)是有重要区别的。不要求所有的数字计算机都能在游戏中表现良好,即使99%的数字计算机表现不合格,只要有一台数字计算机表现合格就可以。不要求现在的数字计算机在游戏中表现良好,10年以后或者100年以后的数字计算机在游戏中表现良好即可。这样的思想与艾伦·图灵1936年发表的《论可计算数及其在判定性问题中的应用》中关于可计算性的思想是一致的:存储空间是无限的,时间是无限的,在这个意义上讨论可计算性。有不少人认为只要存储空间是无限的,时间是无限的,总是能够算完,这是错误的。实际上即使假设存储空间是无限的,时间是无限的,仍有很多的问题是不可计算的;何况在现实中存储空间和计算时间的限制是很大的,不可计算的问题更多。以存储空间和时间均是无限为前提的可计算性,称为图灵可计算性;以存储空间和时间均是有限为前提的可计算性,称为现实可计算性。图灵机不可计算的,一定是现实不可计算的;但是,图灵机可计算的,却可能是现实不可计算的。
数字计算机(Digital Computer)背后的思想可以解释成,这些机器旨在执行任何可以通过人类计算员(Human Computer)计算而完成的操作。人类计算员被假设遵循确定的规则,没有一点偏离规则的权力。我们可以假设这些规则写在一本书上,人类计算员每次被分配新的任务时,这本书的内容就会改变。他有无限的纸进行计算,也可以用“台式机器”进行乘法和加法运算,但这并不重要。
第4节开篇第一句是一个映射,将数字计算机映射到人类计算员。这个映射在虚拟化论文中将再次被提到,在冯·诺依曼《计算机与人脑》的论文中也将被提到。数字计算机与人类计算员(具体指人脑)之间的关系是人工智能科学的根本问题。
艾伦·图灵在这里提出了人类计算员(Human Computer)和数字计算机(Digital Computer)的概念。在今天的关于人工智能的讨论中,Human Computer这个词不常用,这是不应该的,人类计算员(Human Computer)和数字计算机(Digital Computer)是相互参照和对应而存在的。人类计算员的“规则书”(Book of Rules)对应于数字计算机的程序(Program)。
如果我们使用上述解释定义数字计算机,可能陷入循环论证(circularity of argument)。我们通过概述达到预期效果的手段来避免循环论证。数字计算机通常由以下三个部分组成:存储器、执行单元、控制器。
为什么说“使用上述解释定义数字计算机,可能陷入循环论证”?因为这个定义把负担转移到“人类计算员”的定义上,而“人类计算员”没有被定义清楚或者又依赖机器的定义。
艾伦·图灵在这里提到了计算机的三个部分,没有提到输入设备和输出设备。
存储器用来存储信息,对应于人类计算员的纸,人类计算员既在纸上计算,也在纸上打印他的规则书。至于说人类计算员在头脑中进行计算,那么一部分存储器将对应于他的记忆。
存储器中存放的是数据和程序,其中数据是程序的处理对象,数据可被分为初始数据、计算过程中产生的中间数据、计算过程结束后产生的最终数据。一个人(人类计算员)具有很强的心算能力,通常是指在没有纸、笔等工具的条件下进行计算,这就需要这个人具备很强的记忆力,特别是关于计算过程中的中间数据的记忆能力,更具体地说,是对应于高速缓存的那部分记忆能力。
这里要提一下数学家欧拉,他于1707年生于瑞士巴塞尔,1783年卒于俄国圣彼得堡。在欧拉的数学生涯中,他的视力一直在恶化。在1735年一次几乎致命的发热后的三年,他的右眼近乎失明,但他把这归咎于他为俄国圣彼得堡科学院进行的辛苦的地图学工作。在德国期间他的视力也持续恶化。欧拉原本正常的左眼后来又遭受白内障的困扰。在他于1766年被查出患有白内障的几个星期后,他的双眼近乎完全失明。即便如此,病痛似乎并未影响到欧拉的学术生产力,这大概归因于他的心算能力和超群的记忆力。比如,欧拉可以从头到尾不犹豫地背诵维吉尔的史诗《埃涅阿斯纪》,并能指出他所背诵的那个版本的每一页的第一行和最后一行是什么。在书记员的帮助下,欧拉在多个领域的研究其实变得更加高产了。在1775年,他平均每周就完成一篇数学论文。
海伦·凯勒和欧拉的事迹,是研究智能和计算的本质时需要考虑的。
执行单元是一次计算中涉及的各种操作被执行的地方,这些操作是什么,将随着机器的变化而变化。通常相当冗长的操作可能是“3540675445乘以7076345687”,但是一些机器可能只执行“写下0”一类的简单操作。
操作(Operation)是一个落实计算(Computing)的实体。指令集体系结构(ISA)是软件与硬件的接口。
我们上面曾经提到人类计算员的“规则书”由机器中的一部分存储器代替,不妨把它们称为“指令表”。控制器的功能就是保证指令按照正确的顺序执行。控制器的设计使得这种情况必然发生。
规则书(对人类而言)、指令表(对机器而言)都是指程序,控制器是解读和遵循程序的实体,显然程序与智能之间存在很强的关联。
存储器中的信息通常被分解成大小适中的数据块,例如,在一个机器中,一个数据块由十个十进制数组成,数据以某种系统的方式被赋值到各种数据块所在的存储器中。一个典型的指令可以是:
“把存放在6890的数加上存放在4302的数,并把结果存入后面的单元。”
显然,此指令在机器中不会用英语表达,而是更有可能编码成6890430217这样的形式,这里17表示对这两个数进行哪一种操作,在这里就是加法操作。请注意,这个指令占用了10个数字,因此正好是一个数据块,非常方便。控制器通常按照指令的存储顺序取指令执行,但是偶尔会碰到这样的指令:
艾伦·图灵在这里介绍了指令的格式,即指令由操作码和操作数构成。注意上面这段话中,17是操作码,6890和4302均是存放操作数的地址。寻址方式就是计算机组成原理课程中要讲授的重要内容。寻址方式对编程的难易、程序的执行效率具有重要影响。
“现在遵守存储在5606的指令,并从那里继续执行。”或者,“如果4505位置是0,那么执行存储在6707的指令,否则紧接着继续执行。”
上面两个指令介绍了指令的顺序执行和跳转执行,这是冯·诺依曼结构的特征。程序通常包括三大结构:顺序结构、分支结构、循环结构。
后面这些类型的指令非常重要,因为它能重复执行一段指令直到满足某种条件,但不是通过每次执行新指令来做的,而是一遍又一遍执行相同的指令。可以类比家庭生活:如果妈妈想让汤姆每天上学时都到修鞋匠那里看看她的鞋是不是修好了,妈妈可以每天都告诉他一遍;另一种方式是,在大厅里汤姆每天上学都能看到的一个地方贴个便条,告诉他到修鞋匠那里去看一下,当汤姆拿回鞋时,就撕掉那个便条。
机器的一个优势是擅长做重复的操作,弥补人类耐心(是一种稀缺资源)的不足。循环是程序中表达语义的重要程序结构,也往往是最耗时的部分,因此成为性能瓶颈,被称为“热点”。
“一遍又一遍执行相同的指令”是什么呢?就是循环!循环的概念据说是后面将会提到的阿达·洛芙莱斯(Ada Lovelace)发明的。艾伦·图灵上面提到的例子,实际上就是while循环。
while(便条在)
{
到修鞋匠那里看一下妈妈的鞋子是不是修好了;
if(妈妈的鞋子修好了)
{
撕掉便条;
}
}
有了循环结构,程序员只需要写少量的程序就可以对应地运行很多指令,而且指令的具体数量也不需要提前知道,事实上在很多情况下也很难提前知道。
这里要区分动态指令数量和静态指令数量。动态指令数量是一个程序在处理器上实际被执行的指令数量,静态指令数量是一个程序被编译后的指令数量。动态指令数量与静态指令数量一般是不同的,原因有二,一是因为循环的存在,一个循环体对应的少量的静态指令可以对应大量的动态指令;二是因为分支的存在,有些静态指令没有在选中的分支中,所以没有被执行,也就没有成为动态指令。
读者必须接受的一个事实是,数字计算机可以建造,而且确实已经按照我们所描述的原理被建造,并且能够很接近地模仿人类计算员的动作。
请注意这里的“模仿”(Mimic),实际上这是虚拟化的概念,而且可以从功能和性能上进行解读。
当然,上面描述的人类计算员所使用的规则书仅仅是为了方便而做的杜撰。实际的人类计算员真正记得他要做什么。如果一个人想让机器模仿人类计算员执行复杂的操作,就必须问人类计算员操作是怎样做的,然后把答案翻译成指令表的形式。构造指令表的行为通常被描述为“编程”,“给一个机器编程使之执行操作A”,意味着把合适的指令表放入机器,从而它将执行A。
这一段给出了编程(Programming)的实质。
按照艾伦·图灵的表述,存在几个同义词:程序(Program)、指令表(Instruction Table)、规则书(Book of Rules)。
“给一个机器编程使之执行操作A”,意味着把合适的指令表放入机器以使它能够执行A,从这个意义上,是人类通过编程把自己的智能赋予了机器。当前“赋能”这个词汇被广泛使用,此处应该是“赋能”的本源出处。
数字计算机的一个有趣变体是“带有随机元素的数字计算机”,它们有特定的指令进行掷骰子或者别的等价的电子过程,例如一个这样的指令可能是“掷骰子并把结果的数字存入存储位置1000”。有时,这样的机器被描述为具有自由意志(尽管我自己并不使用这一短语)。通常并不能通过观察判断出一个机器是否有随机元素,因为一个相似的效果可以依据π小数部分的数字做出选择来产生。
π的十进制位数是确定的,但是是无限不循环的。π本身不是一个随机数,但它的小数位因为无限不循环,所以具有随机性。
计算机的程序是确定的,规则的含义不是模棱两可的,但不代表计算机不能包括随机数。现在的计算机硬件中可以实现人工智能的应用,同样,人工智能的算法(如神经网络等)可以用于体系结构设计,比如用于预取器和高速缓存替换策略的设计。这说明什么呢?
人工智能不仅仅是上层应用,还可以融入底层体系结构。
一定的随机性、不确定性是智能的特征。但完全的随机性(随机行走和布朗运动)则不是智能的特征。简言之,智能允许甚至需要一定的随机性,但仍以确定性为主。
值得注意的是,图灵在本文中多次提到随机数,也就是说,他注意到并且仔细考察了智能与随机性(Randomness)之间的关系。除此之外,图灵还考察了智能与行为的非正式性(Informality of Behaviour)之间的关系,以及智能与神经系统的连续性(Continuity of Nervous System)之间的关系。
大多数现实中的数字计算机仅有有限的存储空间,让一个计算机具有无限的存储空间并不存在理论上的困难,当然在任何时候都只有有限的部分被使用。同样,只有有限的存储空间能够被建造,但我们可以想象越来越多的存储空间可以根据要求被添加。这样的计算机具有特殊的理论价值,将被称为无限容量计算机(Infinitive Capacity Computer)。
存储容量是可以逐步扩展的,存储受限的加速比模型(Memory-bound Speedup)就是基于这一前提提出的。
无限容量的计算机是不存在的,过去、现在、将来都不存在,但具有特殊的理论价值。从这里可以看出,不存在的东西不一定没有价值。
在本章第2节,图灵给出的图灵机就是无限容量计算机。
有关数字计算机的想法是一个旧想法。1828年至1839年担任剑桥大学卢卡斯数学教授的查尔斯·巴贝奇(Charles Babbage)规划设计了这样的机器,并称之为分析机(Analytical Engine),但是并没有实现。尽管巴贝奇有了所有的关键思想,但他的机器在那个时代却没有很吸引人的前景。它能够达到的运算速度肯定比人类计算员要快,但仅相当于曼彻斯特机速度的约百分之一,而曼彻斯特机本身是现代计算机中较慢的一台。巴贝奇分析机的存储全部由轮子和卡片组成的机械实现。
艾伦·图灵是熟知计算机发展历史的,他对巴贝奇分析机和曼彻斯特机具有深入的了解。本书中将有多处提到查尔斯·巴贝奇分析机。
卢卡斯数学教授席位(Lucasian Professor of Mathematics)是英国剑桥大学的一个荣誉职位,授予对象为数学及物理学相关的研究者,同一时间只授予一人,牛顿在1669~1702年、查尔斯·巴贝奇在1828~1839年、狄拉克在1932~1969年、霍金在1980~2009年都曾担任此教席。现任此职的是英国物理学家迈克尔·盖茨(Michael Cates)。
巴贝奇分析机全部由机械实现这一事实,将帮助我们破除一个迷信。现代数字计算机是电子的,神经系统也是电子的,这一事实常常被强调。既然巴贝奇的机器没有使用电,而所有的数字计算机在某种意义上都是等价的,那么我们看到是否使用电在理论上并不重要。当然,快速发信号的地方通常需要电,因此,我们就会发现在这两个地方使用电是理所当然的。在神经系统中,化学现象至少和电现象同样重要,某些计算机的存储器主要基于声学原理。因此,计算机和神经系统都使用电仅仅是表面的相似。如果我们希望寻找这样的相似性,倒不如寻找功能上的数学相似性。
什么是计算机?什么是数字计算机?什么是电子计算机?什么是离散状态机?
是否用电,对本质没有影响。通过化学过程、电、机械,都可以实现功能等价的数字计算机,只有速度(性能)上的差别。艾伦·图灵的可计算性是忽略速度(性能)意义上的可计算性。中国科学院计算技术研究所徐志伟研究员提出了考虑速度(性能)的可计算性,被称为实用可计算性。
第5节的英文标题是“Universality of Digital Computers”。这里“Universality”如何翻译呢?有几种候选的译法:万能性、全能性、通用性、一般性、普适性。我们经过斟酌,发现用“通用性”可能较为准确。
数字计算机的通用性,重点在于强调“通用性”,与“存储程序”的思想有关。
为什么不翻译为“一般性”呢?因为,数字计算机毕竟是一种具体的离散状态机。
为什么不翻译为“万能性”呢?“万能”本身含义模糊,有时表达“全能”的含义。但是,数字计算机不是全能的(这是很重要的结论)。
为什么不翻译为“普适性”呢?这个容易导致歧义,不宜理解为现在人们常说的“普适计算”中的“普适”。普适计算(Ubiquitous Computing,Pervasive Computing),又称普存计算、普及计算、遍布式计算、泛在计算,是一个强调和环境融为一体的计算概念,而计算机本身则从人们的视线里消失。在普适计算的模式下,人们能够在任何时间、任何地点、以任何方式进行信息的获取与处理。
上一节考虑的数字计算机可以被归类为“离散状态机”(Discrete State Machine),这类机器可以从一个明确的状态通过突然的跳变或点击移动到另一个明确的状态。状态之间有足够的差别,以至于可以忽略混淆这些状态的可能。严格地说,这样的机器是不存在的。一切物体实际上都是连续移动的。但是有许多种机器能够有益地被看作离散状态机。例如在照明系统中的开关,为了简便,我们可以假想把开关看成只有开和关两个状态。它们之间肯定有中间状态,但是在绝大多数情况下可以忽略它们。作为离散状态机的例子,我们可以考虑一个每秒旋转120度的轮子,这个轮子可能因一个可以从外部操纵的杠杆的阻挡而停下来,在轮子上某个位置有一个发光的灯。这个机器可以被抽象地描述为下面的形式。机器的内部状态(通过轮子的位置来描述)可以是 q 1 、 q 2 或 q 3 。输入信号是 i 0 或 i 1 (杠杆的位置)。任何时候的内部状态可以根据上一状态和输入信号由下表确定:
本书第7章关于虚拟化的论文中也提到离散状态机。
我们看过数学家华罗庚关于高等数学的一段宝贵的教学录像,他说“离散与连续”是高等数学特别是微积分要研究的一对基本矛盾。微积分开篇要讲的内容是“极限”,讲“无穷小”这个概念。有了无穷小,就可以把连续和离散统一或者互相转化。华老在那次报告中,提到数与形、离散与连续、抽象与具体、能行性与存在性、必然性与可能性、理论与应用一共六对辩证统一的关系。由此可见数学与哲学存在联系。毛主席在《矛盾论》中引用恩格斯的话“高等数学的主要基础之一,就是矛盾……”“就是初等数学,也充满着矛盾……”。我们需要克服反哲学或忽视哲学的倾向,这样会促进工作,使得我们对相关问题的认识更加深入。哲学不是点缀品,也不是捣乱的空谈,哲学具有具体科学不可替代的加深认识的作用。
上面这段话中提到的轮子上为什么要有一个发光的灯呢?灯是作为参照物。没有灯的轮子是一个中心对称图形,有了灯的轮子就不再是中心对称图形。
输出信号可以用下表描述,它是唯一能够被外部观测的内部状态指示器(指示灯)。
状态 q 1 q 2 q 3
输出信号 o 0 o 0 o 1
这个例子是一个典型的离散状态机。只要离散状态机的可能状态是有限的,离散状态机就可以用这样的表格描述。
可以看出,只要给出初始状态和输入信号,所有的未来状态都是可以预测的,这让我们想起了拉普拉斯(Laplace)的观点,那就是,从由所有粒子的位置和速度所描述的某一时刻宇宙的完整状态,就能够预测所有的未来状态。但是,我们考虑的预测与拉普拉斯相比更接近实用性。“宇宙作为一个整体”的系统,使得初始条件中的一个非常小的误差,可以在稍后的时间引起系统产生巨大的效应。某个时刻一个电子在位置上亿万分之一厘米的偏移,将决定一个人会在雪崩中死去还是逃脱。我们称为“离散状态机”的机械系统的一个基本特性是,这样的现象不会发生。即使是考虑实际的物理机器而不是理想机器,只要相当准确地知道了某个时刻状态,就可以相当准确地知道任意数量步骤之后的状态。
艾伦·图灵提到了经典物理学中的确定论(Determinism)观点。拉普拉斯(Laplace,1749~1827)是法国分析学家、概率论学家和物理学家。1816年被选为法兰西学院院士,1817年任该院院长,著作有《天体力学》《宇宙系统论》等,发明有“拉普拉斯变换”。他是确定论的支持者,1814年提出科学假设:如果一个智能生物能确定从最大天体到最轻原子的运动的现时状态,那这个智能生物就能按照力学规律推算出整个宇宙的过去状态和未来状态。后人把他所假定的智能生物称为拉普拉斯妖。
正如我们所提到的,数字计算机属于离散状态机。但是这样的机器所能够达到的状态通常是相当大的。例如,现在在曼彻斯特工作的机器可以有2 165 000 个状态,也就是大约10 50 000 个状态。而我们上面描述的轮子仅有三个状态。找到有如此多状态的原因并不困难,计算机具有一个对应于人类计算员的纸存储器。任何能够写入人类计算员所用纸上的符号的组合,都应该能够被写入存储器中。为简单起见,假设仅仅用从0到9的数字作为符号,且忽略手写体的差别。假如计算机具有100张每张50行每行30个数字的存储空间,那么状态的数量就是10 100×50×30 ,即10 150 000 ,这大约是三个曼彻斯特机组成的整体的状态的数量。状态数量的底数为2的对数通常被称为机器的“存储容量”(Storage Capacity),因此曼彻斯特机的存储容量是约165 000,而我们例子中轮子的存储容量是约1.6。如果两个机器组成整体,合成的机器的存储容量应该是原来各自的存储容量之和。因此我们可以说“曼彻斯特机具有64个磁带存储器(每个容量是2560),还有8个真空管(每个容量为1280)。杂项(Miscellaneous)存储器的容量大约为300,总共的存储容量大约是174 380。”
英文原文有一句话有两个拼写错误,可能是编辑排版时导致的。
For instance,the number for the machine now working at Manchester it about 2 165,000, i.e.about 10 50,000 .
上句中it应为is,2 165,000, 的第2个逗号应在下方,全句修改后为:For instance,the number for the machine now working at Manchester is about 2 165,000 ,i.e.about 10 50,000 .
2 10 等于1024,大约等于10 3 ,这是二进制数与十进制数换算时经常用到的关系。
注意艾伦·图灵关于存储容量的定义:
设机器可以具有的状态数量为 N ,存储容量为 n ,则有关系式:
log 2 N = n
或者说
N =2 n
为什么“有指示灯的轮子”的存储容量约为1.6?
“有指示灯的轮子”有三种可能的状态,即 N =3,所以, n =log 2 3≈1.6。
如何体现“如果两个机器合并在一起,它们的存储容量应该是原来各自的存储容量之和”?
设机器1可以具有的状态数量为 N 1 ,存储容量为 n 1 ;机器2可以具有的状态数量为 N 2 ,存储容量为 n 2 。
两个机器融合在一起之后,状态数量为 N 1 × N 2 ,
log 2 ( N 1 × N 2 )=log 2 N 1 + log 2 N 2 =n 1 +n 2
上式体现了“如果两个机器融合在一起,它们的存储容量应该是原来各自的存储容量之和”,也是为什么要将 n 而不是 N 定义为存储容量。
如果将 N 定义为存储容量,会导致出现“如果两个机器融合在一起,它们的存储容量是原来各自的存储容量之 积 ”的现象。
机器的存储容量大,意味着机器的可能的状态数量很大。
存储容量、自由度,与智能水平的高低密切相关。
根据机械原理,机构具有确定运动时所必须给定的独立运动参数的数目(即为了使机构的位置得以确定,必须给定的独立的广义坐标的数目),称为机构自由度。
上一段中,曼彻斯特机的存储容量为174 380,是如何算出来的?曼彻斯特机分三个部分,第一部分是64个磁带存储器,每个容量是2560;第二部分是8个真空管,每个容量为1280;第三部分是杂项存储器,容量为300。所以2560×64+1280×8+300=174 380。
只要给出对应于离散状态机的表格,就能够预测出机器将会做什么。没有理由这样的计算不能通过数字计算机来完成。只要运行足够快,数字计算机就能够模拟任何离散状态机的行为。这样,模仿游戏就可以在所谈论的机器(B)和进行模仿的数字计算机(A)之间进行,而提问者将不能区分它们。当然,数字计算机除了运行足够快,还必须有足够的存储空间,而且在模仿不同的机器之前必须被重新编程。
这里对进行模仿任务的数字计算机提出了三点要求,一是运行足够快,二是有足够的存储空间,三是在模仿不同的机器之前必须被重新编程。
数字计算机可以模拟任意离散状态机的特殊性质被描述为数字计算机是通用(universal)机器。存在具有这样性质的机器带来的一个重要结果就是,若不考虑速度,就没有必要设计出不同的新机器来执行不同的计算过程,它们都可以用一个根据每一种情况适当地被编程的数字计算机来实现。由此可见,所有的数字计算机在某种意义上是等价的。
所有的数字计算机在考虑功能而不考虑性能的意义上都是等价的。
我们现在可以重新考虑在第3节末尾提出的问题。建议暂时把问题“机器能思考吗”用“是否存在可想象的数字计算机在模仿游戏中表现良好”代替,如果愿意,我们可以让这一问题在表面上更一般化,问“是否存在表现良好的离散状态机”。但是从通用性的角度,我们可以看出这两个问题都等价于“让我们把注意力集中在一个特定的数字计算机C上。如果我们可以让其具有足够大的存储空间,足够快的计算速度,而且对它进行适当的编程,C扮演角色A,人扮演角色B,C能不能在模仿游戏中表现良好?”
从上面可以看出艾伦·图灵对智能采取的是行为主义的观点。
本节介绍并反驳了9个方面的对立观点。
经过前面几节的讨论,现在我们可以认为,情况已经明朗,我们准备就“机器能思考吗”及上一节结尾提到的该问题的变体展开辩论了。我们并不能完全放弃问题的原始形式,因为对替换的合理性存在不同意见,我们至少应该听一听这方面的有关意见。
根据这一段的首句,本文前5节都是为了“打基础”,第1节提出“模仿游戏”是什么,第2节对问题的合理性进行说明,第3节对游戏中的“机器”进行说明,第4节对“数字计算机”进行了详细的说明,第5节对“数字计算机”进行了更深入的说明。
如果我先解释自己在这一问题上的看法,对读者来说将会简化问题。首先让我们考虑这一问题更确切的形式。我相信,大约50年后计算机的存储量可达到10 9 左右,从而可在模仿游戏中表现很好,以至于一般提问者在提问5分钟后能准确判断的概率不会超过70%。我认为原来那个“机器能思考吗”的问题没有意义,从而不值得讨论。尽管如此,我认为到20世纪末,由于词语的使用和由教育形成的一般见解会发生很大改变,那时候人们能谈论机器思维而不用担心被反驳。我还认为,掩盖这些看法不会有益处。一种流行的观点是,科学家进行科学研究工作总是从可靠的事实到可靠的事实,从来不受任何未经证明的猜想所影响,这种观点实际上是相当错误的。假如能清楚哪些是经过证明的事实,哪些是猜想,将不会产生害处。猜想是极其重要的,因为它们能够提示有用的研究线索。
上面这段话在讨论研究方法,具有启示意义。科学研究需不需要猜想、展望、预言、信念?艾伦·图灵明确指出:需要!在这篇文章结束的时候,他还会提到,他是在展望一个不太远的未来,虽然目光所及并不太远,但已经有很多事情要做。
艾伦·图灵估计50年后,也就是2000年,计算机的存储容量是1Gb(注意存储容量的单位为bit),所以计算机在模仿游戏中的表现会更好。但艾伦·图灵没有预言说,计算机在2000年就可以具有思维了,能够思考了。他的表述是“一般提问者在提问5分钟后能准确判断的概率不会超过70%”。这是一个很睿智的表述。
把这个表述一般化,“一般提问者在提问 n 秒后能准确判断的概率不会超过 m %”。 n 越大, m 越小,机器的智能水平越高。这里实际上考虑了性能、响应时间的因素,所以含有“实用可计算”的思想。
艾伦·图灵指出猜想是重要的,因为它们能够提示有用的研究线索。
当前,计算机科学的理论与“希尔伯特23个问题”“理查德·卡普21个NP-完全问题”“克雷数学研究所7个千禧年问题”中的某些问题有直接或间接的联系,一方面要研究这些联系并吸收已有研究成果,另一方面要根据新时代的需求特征提出自己的一组基本问题,以问题为导向,经历“理论顶层设计-问题并发突破-理论收敛融合”的三个发展阶段。
学科可以带动任务,任务也可以带动学科,但无论是学科还是任务,最根本的内在驱动力是问题。例如,在美国芝加哥市,物理学方面,芝加哥大学以学科为主,费米国家实验室以任务为主,两者相互强有力地促进和带动;在国内长春市,车辆工程方面,吉林大学以学科为主,中国第一汽车集团有限公司以任务为主,两者也相互强有力地促进和带动,但以满足新需求为目的的新问题,是学科和任务的共同驱动力。根据到19世纪为止数学发展的整体状况,1900年希尔伯特在巴黎第二次世界数学家大会上提出23个重要的数学问题,统称为“希尔伯特23个问题”,有力地推动了20世纪数学的发展。希尔伯特十分强调“问题”的重要性,他在关于23个问题的报告中说,“只要一门科学分支能提出大量问题,它就充满着生命力,而问题缺乏则预示着独立发展的衰亡或终止”。新时代计算机科学的理论与“希尔伯特23个问题”中的某些问题有直接或间接的联系,比如“希尔伯特第1问题”连续统假设问题,“希尔伯特第8问题”素数问题,“希尔伯特第10问题”丢番图方程可解性的判定性问题。
对于新时代计算机科学的理论,要提出一组问题(例如前述的命题中提到的一些问题),对每个问题的终极形式或弱化形式的解决方案提出一些猜想,在科学研究的“四个范式”(实验、理论分析、数值模拟、数据分析)的辅助指导下,完成猜想的真、伪或不可判定的证明。哥德巴赫猜想于1742年被提出,虽然至今还没有被证明,但从1920年开始世界各国科学家逐步证明了它的一系列弱化版本,越来越逼近猜想本身,在这个过程中,大量的数论技术被发明出来,推动了整个学科的发展,这些伴随产出物的意义实际上已经超过了猜想本身,体现了“钓胜于鱼”的理念,因此猜想驱动的研究成为学科发展的一种有效模式。
有些猜想完全靠人脑思考且耗时,例如安德鲁·怀尔斯用了7年时间完成了费马大定理的证明,论文长达109页(WILES A.Modular Elliptic Curves and Fermat's Last Theorem[J]. Annals of Mathematics,1995,141(3):443-551.);有些猜想可以依赖计算机验证找出反例,例如Lander和Parkin在1966年用CDC 6600计算机通过搜索找到欧拉猜想(与费马大定理有关)的一个反例,全文只有1句话。这两个例子给我们的启示是:
(1)验证比求解容易,这一点与NP/P问题有关。
(2)50多年前人类就成功将计算机用于证明(主要用于证伪),现在的计算机的计算和存储能力已经远远高于50多年前,更有理由广泛将计算机用于理论研究。
(3)怀尔斯一定程度上代表了人类的智能水平,很难想象让现在的计算机去写出怀尔斯完成的109页的证明,但是如果NP=P,就有可能了,那时强人工智能可能在一定程度上被实现了。
所有这些问题、猜想、证明就构成了一个有组织、有条理的理论体系,由于问题之间存在着联系,关于某一个问题的猜想首先得到解决,会带动其他问题及其猜想的解决,所以理论体系中会有一个基本的核心,它是新的时代条件下计算机科学理论经过收敛融合之后的形式。这个形式的理论是简洁的,又是本质的,就像牛顿经典力学三大定律、麦克斯韦方程组、爱因斯坦质能方程那样。就像传统可计算理论有递归函数、图灵机、波斯特机等三种形式,新时代计算机科学理论的形式可能不唯一,衡量理论优劣的一个指标是,呈现本质性和关键性细节的程度/理论描述的长度,这个指标越大,理论质量越高。
现在我来考虑与我的看法相对立的观点。
来自神学的异议的论据是:思维(thinking)是人类永恒灵魂的一个功能。上帝赋予每个男人和女人一颗永恒的灵魂,但从未将它赋予任何其他的动物或机器。因此,动物或者机器不能思考。
上面这段话是神学的观点。先把靶子竖起来,接下来,就要进行批驳了。
我不能接受这种观点的任何部分,但是我试图用神学的术语来回复。如果将动物和人划为一个类别,我将发现这个论据更有说服力,因为在我看来,生物与非生物之间的差别要比人和其他动物之间的差别大。如果站在其他宗教团体成员的立场看,这种正统观点的武断性会更明显。但是,现在暂不管这一点,让我们回到主要论据上来。在我看来,上面所引的论据对上帝的全能性有严重的限制。人们承认上帝对有些事情也无能为力,比如,他不能让1等于2,但是难道我们不应该相信,如果上帝觉得合适,他完全可以赋予一头大象以灵魂吗?我们可以期望上帝实践自己的威力,同时大象产生变异,有了一个适度改善的大脑以满足灵魂的需要。形式相似的论据也可以用在机器上。这或许看起来不同,因为更难以“忍受”。但这只是说明我们认为不太可能上帝认为这些环境适合被赋予灵魂。所说的环境将在本文的其余部分被讨论。在企图制造这样的机器时,我们不应该无礼地篡夺上帝创造灵魂的权力,就像不应该剥夺我们生儿育女的权力那样。在两种情况下,我们其实都是上帝意志的工具,为他所创造的灵魂提供住所。
艾伦·图灵采取科学的态度,中立、谦卑但不失锐利,有判断但不武断,能用神学的语言去换位思考,去回复对立的观点。神学认为只有人才被赋予灵魂,动物或机器均没有被赋予灵魂。艾伦·图灵首先从距离的角度去考虑问题:
D (动物,人)< D (生物,非生物)
这提出了神学观点的改进版。若一个观点被改进之后更合理,那这个观点被改进之前就具有很大的不合理性。
实际上,我们可以展开思考:
D (动物,人)<D(动物,植物)< D (植物,非生物)
D 函数肯定是与智能相关的一个重要函数。
神学本身不是铁板一块,显然神学不同派别之间存在教义上的矛盾。
既然认为上帝是万能的,那么上帝为什么不能赋予动物灵魂呢?
然而,这只是猜测。我对神学的论据没有深刻印象,不管它们被用来支持什么。这样的论据在过去经常被发现不令人满意。在伽利略时代,有人提出“于是日头停留……不急速下落,约有一日之久”(《约书亚书》第10章第13节),以及“将地立在根基上、使地永不动摇”(《诗篇》第104章第5节)。这些经文是对哥白尼理论的充分驳斥。从我们今天的知识来看,这种论据是无效的。当没有这些知识时,它就会造成一个相当不同的印象。
什么是“鸵鸟”式?关于鸵鸟比较流行的一个观点是:鸵鸟性格怯懦胆小,面对危险时常常会选择把头迅速埋进沙子里,以为这样敌人就无法发现自己了。
“鸵鸟”式的异议的论据是:“机器思维的后果太令人恐惧了。让我们希望和相信机器不会思考。”
这一论据不如上面的说法那样直言不讳,但对考虑过这一论据的大多数人有影响。我们都倾向于认为人类以某种微妙的方式比其他生物优越。要是能证明人类一定是优越的,那再好不过了,因为那样一来,人类就没有失去领导地位的危险。神学论据的流行明显与这种态度密切有关。这种看法在知识分子中会更强烈,因为他们比其他人更看重思维的力量,更倾向于将他们关于人类的优越性的看法建立在思维能力的基础上。
我认为这个论据不足够牢固,从而不需要反驳。
知识分子容易清高,可能源于有知识而产生的优越感。
“鸵鸟”式的异议在人工智能发展较为顺利的时期往往更为凸显。主要是担心人类的优先性和优越感被挑战。
数理逻辑(mathematical logic)中的一些结果可以用来指出离散状态机能力的局限,其中最著名的就是哥德尔定理,此定理声称,在任何足够强大的逻辑系统中,能够构造一些在本系统中既不能被证真也不能被证伪的陈述,除非这个系统本身就是不一致的。丘奇、克莱因、罗瑟和图灵等人也得到了在一些方面相似的结果。图灵的结果最方便考虑,因为它直接涉及机器,而其他人的结果只能被用于相对间接的论据中。例如,如果使用哥德尔定理,我们还需要某些附加手段,通过机器描述逻辑系统,通过逻辑系统描述机器。所论及的结果涉及一种实质上是一台具有无限存储容量的数字计算机的机器。这样的一台机器,对有些事情是无能为力的。如果计算机被操纵能在模仿游戏中回答问题的话,对有些问题它将给出错误的答案,或者不管给它多长时间它也回答不上来。当然,可能存在着许多这样的问题,这台机器回答不了的问题,另一台机器却能给出令人满意的答案。我们现在假定,问题是只要回答“Yes”或“No”就可以的类型,而不是“你认为毕加索怎么样”这类问题。我们知道机器必定无法回答的问题是下述这类问题:“考虑有以下特点的机器……这台机器会不会对任何问题做出‘Yes’的回答?”这里省略的是对某台机器的标准形式的描述,这种机器与第5节中所用到的机器相同。如果所描述的机器与那台被提问的机器具有某些相对简单的联系,那么,我们就能知道,不是答案错了,就是还没有得到答案。这就是数学的结论:此结论证实机器能力有限,而人类智能则没有这种局限性。
“你认为毕加索怎么样”是疑问句,不是命题。之所以数理逻辑的研究对象是命题,原因也在这里。
上面这段话提到逻辑学家哥德尔,并提到了丘奇、克莱因、罗瑟和图灵。注意图灵自己说“图灵的结果最容易理解”,他“肯定了”自己,但给出了理由——他的结果“直接涉及机器”。这是客观的结论。
对于来自数学的异议,艾伦·图灵在反驳时具有得天独厚的发言权,因为他直接做了这方面的工作,而且所做的工作在全部的工作中与机器结合最直接、直观。所以,这里出现了人类科学研究史上一个难得的奇观:一个人如何批驳与自己之前工作有关的观点?
艾伦·图灵在上一段中提到,机器必定无法回答的问题是下述这类问题:“考虑有以下特点的机器……这台机器会不会对任何问题做出‘Yes’的回答?”这里省略的是对某台机器的标准形式的描述,这种机器与第5节中所用到的机器相同。如果所描述的机器与那台被提问的机器具有某些相对简单的联系,那么,我们就能知道,不是答案错了,就是还没有得到答案。
艾伦·图灵为什么这么说呢?这说的是不可计算问题,在本书第2章将会专门论述。
我们在这里先略微论述一下这个问题,想表达这样的观点:有些工作,例如图灵可计算性理论、实用可计算性理论、物理学中的守恒定律等,需要联系在一起。
我们研读过康托尔、哥德尔、丘奇、克莱因、图灵等人的著作,阅读过中国科学院徐志伟研究员关于云计算数据中心的“实用可计算理论”,听过南方科技大学数学系主任夏志宏教授关于“尺规作图不能问题”的一次报告,注意到钱学森特别强调系统的开放性,华为任正非把系统的开放性作为企业“减熵”的两大举措之一(另外一个举措是“艰苦奋斗”)。
尺规作图是指用无刻度的直尺和圆规作图。尺规作图是起源于古希腊的数学课题。只使用圆规和直尺,并且只准许使用有限次,来解决不同的平面几何作图问题。
尺规作图不能问题就是不可能用尺规作图完成的作图问题。其中最著名的是被称为古希腊三大几何问题的古典难题:
(1)三等分角问题:三等分一个任意角。
(2)倍立方问题:作一个立方体,使它的体积是已知立方体的体积的两倍。
(3)化圆为方问题:作一个正方形,使它的面积等于已知圆的面积。
在2400年前的古希腊已提出这些问题,直至1837年,法国数学家万芝尔才首先证明“三等分角”和“倍立方”为尺规作图不能问题。1882年德国数学家林德曼证明π是超越数后,“化圆为方”也被证明为尺规作图不能问题。
我们知道合外力为0时,动量是守恒的;合力矩为0时,角动量是守恒的。系统的封闭性是系统能力的有限性的根源。合外力、合力矩为0,都是系统封闭性的体现。
标签化资源管理(DIP)、性能优化,都是产生“合外力”或“合力矩”,让系统远离平衡态,这也是普里高津耗散系统的思想。
我们再想一想,如何理解熵呢?克劳修斯熵、玻尔兹曼熵、香农熵、云计算熵,虽然形式不同,但都是相通的,有必要也有可能把它们统一起来。
高熵对应的是“具有 很多微观态的宏观态”,低熵对应的是“具有 很少 微观态的宏观态”,“曲高和寡”“学如逆水行舟,不进则退”“由俭入奢易,由奢入俭难”,这些都蕴含着这样的思想。
系统内还是系统外,这是很重要的分别。
系统的整体具有系统的各个部分所不具有的性质,是系统的整体性。系统的内部与外部的分别,是系统的边界性。
从广义上说,系统的边界性隶属于系统的整体性。系统的整体性是系统的 灵魂。当系统的整体性对内或对外有一个消失的时候,系统就消亡了。
人是一个系统,计算机是一个系统。人的整体性,对内表现为人具有他的各个器官单独所不具有的性质,对外表现为人与环境有清晰的界限。
我们现在举一个计算机不可计算的问题——停机问题。对于任意的图灵机和输入,是否存在一个算法,用于判定图灵机在接收初始输入后可达停机状态。若能找到这种算法,停机问题可解;否则不可解。通俗地说,停机问题就是判断任意一个程序是否在有限的时间内结束运行的问题。
问题:能否找到一个测试程序,这个测试程序能判定任何一个程序在给定的输入下能否终止。
证明:我们用反证法证明(图灵在本书第2章使用的对角线法也是反证法),就是说,先假设存在这样的测试程序,然后再构造一个程序,该测试程序不能测试。
假设存在测试程序 T ,若输入程序 P 能终止,输出 x =1;若输入程序 P 不能终止,输出 x =0。
我们总能构造这样一个测试程序 S ,当 P 终止时, S 不终止;当 P 不终止时, S 终止。
这样如果我们把 S 当作输入( S 本身的输入),就会得出一个悖论:当 S 能终止时, S 不终止;当 S 不能终止时, S 终止。
对上面这种现象,读者可以结合“元数学与元物理”进行深入思考。元数据(Metadata)是描述数据的数据(data about data),是对数据的观察、分析和归纳。形而上学(Metaphysics)是超越物理的,即“元物理”。《易经·系辞》中有“形而上者谓之道,形而下者谓之器”。“元数学”(Metamathematics)是一种将数学作为人类意识和文化客体的科学思维或知识,即元数学是一种用来研究数学和数学哲学的数学。将元数据进一步递归,可以有元元数据,以此类推。具体地,为了表示事物的运动规律,有速度、加速度、加加速度;为了表示事物的不确定性,有熵、超熵、超超熵,李德毅院士据此提出了不确定性人工智能,等等。信息、知识、预测、洞察、智能、智慧是逐级递升的元数据。
系统因为自己能力的局限,往往在讨论系统自身的时候就出现了悖论那样的纠缠不清的问题。“当局者迷,旁观者清”,所以我们需要在系统外部对系统做一些观测,这就是“元××”的思想,例如对于数学的外部观测就是“元数学”,对计算机数据访问的外部观测就是“元数据”,这也是标签化冯·诺依曼体系结构DIP(可区分、可隔离、可优先调度)这三种能力从“元数据”角度必然需要的原因。
“元××”这个可递归的重要概念在从数据、信息、知识直到智慧的逐级不断抽象的过程中具有重要作用。
罗素悖论是由罗素发现的一个集合论悖论,其基本思想是:对于任意一个集合 A , A 要么是自身的元素,即 A ∈ A ; A 要么不是自身的元素,即 A ∉ A 。根据康托尔集合论的概括原则,可将所有不是自身元素的集合构成一个集合 S ,即 S ={ x : x ∉ x }。
也就是说,罗素构造了一个集合 S : S 由一切不属于自身的集合所组成。然后问: S 是否属于 S 呢?根据排中律,一个元素或者属于某个集合,或者不属于某个集合。因此,对于一个给定集合,问是否属于它自己是有意义的。但对这个看似合理的问题的回答却会陷入两难境地。如果 S 属于 S ,根据 S 的定义, S 就不属于 S ;反之,如果 S 不属于 S ,同样根据定义, S 就属于 S 。无论如何都是矛盾的。
理发师悖论:有一位理发师说:“我 将为也只为本城所有不给自己理发的人理发”。那么,他给不给自己理发?如果他不给自己理发,他就属于“不给自己理发的人”,他就要给自己理发,而如果他给自己理发,他又属于“给自己理发的人”,他就不该给自己理发。
书目悖论:一个图书馆编纂了一本书名词典,它列出这个图书馆里所有不列出自己书名的书。那么,它列不列出自己的书名?这个悖论与理发师悖论基本一致。
对这个论点的简短答复是,尽管已经确定任何特定机器的能力都存在限制,但人的智能不受限制,仅仅被陈述,并没有任何证明。我认为这个论点不能就这么轻易驳回,每当一台这样的机器被问及适当的关键问题,并给出确定的答案,而我们知道此答案一定是错的,我们无疑会产生一种优越感,这种感觉是错觉吗?毫无疑问,这是真实的,但我认为不应该过分重视它。我们自己经常会答错一些问题,却会对机器的错误而沾沾自喜。而且,我们的优越感来自对付一台机器,但我们无法同时对付所有的机器而且不出差错。总而言之,人可能比任何特定的机器聪明,但是可能有更聪明的其他机器。
图灵在《论可计算数及其在判定性问题中的应用》一文中,说明了任何机器都有不可计算的问题。表面看起来,这是一个悲观的观点或结论,因为它说明了机器的智能有无能的一面。但图灵指出,人的智能也可能有无能的一面,机器有时会犯错误,但这没什么,因为人也经常犯错误,人类犯了太多的错误,所以没有资格因为机器犯错误而产生优越感。
我认为,坚持数学论证的人大多愿意接受模仿游戏作为讨论的基础,那些相信前两个反对意见的人可能对任何标准都不感兴趣。
第3种观点与第1、2两个观点一样,都是错误的,但坚持第3种观点的人比坚持第1、2两个观点的人要进步。坚持数学论证的人至少是科学界的人,是尊重或相信数学和逻辑的结论的,只是在严谨性上做得不好(比如错误地不加证明地认为人的智能没有限制),而第1、2两个观点则充满了主观主义的色彩。
“consciousness”指意识。“argument”有时译为“论据”,有时译为“异议”。
这个论点在杰斐逊教授于1949年的一次演讲(Lister Oration)中有很好的表达,我引用他的一段话:“除非机器能够出于思绪和情感的流露,写出十四行诗或者协奏曲,而且不是随机地落下音符,那才能说机器能够媲美大脑——也就是说,它不但会写,而且知道自己在写。没有什么机械装置能够感受到(而不仅仅是人工地发出信号,这是一个简单的发明)成功的喜悦、阀门熔断时的悲伤、被赞美的温暖、犯错后的痛苦、性的吸引、求而不得时的气恼或难过。”
1949年6月9日,同在曼彻斯特大学的神经外科教授杰弗里·杰斐逊(Geoffrey Jefferson)在一次演讲中表达了自己对于数字计算机的现状与前景的看法。这场演讲以“机器人的心灵”(The mind of mechanical man)为题,评论了包括图灵参与的项目在内的几个数字计算机项目。杰斐逊以人类为参照,为机器智能设立了极高的标准,表示“机器人不可能有心灵”。
杰弗里·杰斐逊教授的想法是很多人(包括很多现代人)的想法:“机器只不过是人工信号,只是发明”“机器没有情感和意识”。
这个论点看上去否定了我们测试的有效性(validity)。按照这种观点的最极端形式,一个人确信机器思维的唯一途径就是 成为 那台机器,自己去感受思维活动,然后向世人描述这种感受,但是当然没有人有理由相信人成为机器后所说的话。同样,依照此观点,要想知道某人是否在思考,唯一的途径就是成为那个人,这实际是唯我论(solipsism)的观点,这也许是所持的最有逻辑的观点,但若真是这样,那思想交流就太困难了,A倾向于相信“A在思考,而B没在思考”,而B倾向于相信“B在思考,而A没在思考。”与其为此争执不休,不如客气地约定大家都在思考。
注意此段首句中的“有效性”(validity)一词,本书第5章的标题中也将出现这一词语。
按照唯我论的观点,一个人想知道机器是怎样想的,但是必须成为机器才可以,抛开一个人没有办法成为机器,即使有办法成为机器,他成为机器之后向世人诉说的话,我们敢信吗?不敢。有正当理由相信面前这位由人变的机器所说的话吗?没有正当理由。
唯我论是认为除“我”或“我”的精神之外没有任何东西存在,整个世界及其他人都是“我”的感觉、经验和意识的一种观点,是主观唯心主义走向极端的必然结论。在中国哲学史上,孟子所说的“万物皆备于我”(《孟子·尽心上》),王阳明所说的“心外无物”(《与王纯甫书二》),都代表了一种唯我论的观点。在西方哲学史上,英国主观唯心主义哲学家乔治·贝克莱(George Berkeley)是唯我论的典型代表,他把世界上的一切事物及其性质都消融在“我”的感觉经验之中,认为除了感觉经验之外别无他物存在。他宣称,“存在就是被感知”,“物是观念的集合”,认为物体之所以存在,是因为它被感觉到,如果感觉不到它,它就不存在。因此,一切都仅仅由于我的感觉而存在,而一切都存在于我的感觉中。世界上剩下的只是我的感觉、一个唯一存在的“自我”。现代西方哲学中的许多流派,都把全部哲学建立在感觉经验的基础之上,因而往往走向唯我论。
注意,为纪念乔治·贝克莱,加州大学的创始校区定名为加州大学伯克利分校(University of California at Berkeley),“贝克莱”和“伯克利”只是译法不同,所指相同。
奥地利主观唯心主义者恩斯特·马赫和他的信徒继承了贝克莱的衣钵,但又采用了一些新名词术语,如他们把“物是观念的集合”,改换为“物是要素的复合”,颜色、声音、气味等就是这样的“要素”,也就是感觉。马赫主义的另一个创始人理查德·海因里希·阿芬那留斯则公然声称,只有感觉才能被设想为存在着的东西,在感觉以外没有任何东西。一切坚持主观唯心主义的哲学思潮或个人,其最终都必然要陷入唯我论的泥潭。
我肯定杰斐逊教授并不希望采纳极端的和唯我论的观点,他也许很愿意接受模仿游戏作为一个测试。模仿游戏(省略了游戏者B)在实际中经常采用“口试”的方式来发现某人是真的理解某事,还是“鹦鹉学舌”。让我们听听这种“口试”的一部分:
询问者:你在十四行诗的第一行写道,“我欲比君为夏日”,若将“夏日”改成“春日”,是否更好?
见证人:这样就不押韵了。
询问者:改为“冬日”呢?这样会押韵。
见证人:可以,但是没有人愿意被比作冬日。
询问者:你说匹克威克先生让你想到圣诞节了?
见证人:某种程度上。
询问者:然而圣诞节也是冬日的一天,我认为匹克威克先生不会在意这个比喻。
见证人:我认为你在开玩笑,冬日是指一个典型的冬日,而不像圣诞节那样特殊的一天。
不再赘述。如果那台写十四行诗的机器在“口试”中能够这样对答,杰斐逊教授会做何感想呢?我不知道他会不会把机器的那些答复当作“人工信号”,但是,如果这些答复如上面所引的那样令人满意并且持续下去,我认为他不会将其形容为“简单的设计”。“简单的设计”是说用来播放一个人念十四行诗的录音,并可通过适当的开关不时地将其打开。
总之,我认为大多数支持来自意识方面异议的人会被说服而放弃原来的主张,不至于陷入唯我论的困境,这些人因此也就有可能愿意接受我们的测试。
我不想给人留下这样的印象:我认为关于意识的事情没有神秘感。例如,存在着与任何企图捕捉意识有关的悖论,但我认为在我们能够回答我们在本文中关注的问题之前,并不一定要解决这些谜团。
什么是意识?意识的本质什么?艾伦·图灵认为在回答“计算机能否思维”这个问题时,不一定需要解决这些谜团。
这些异议具有以下形式:“我担保,你可以让机器做任何你提到的事情,可你永远也不能使一台机器做X。”X被建议具有各种特征,这里我列举一部分:
是善良的,机敏的,美丽的,友善的,有创新精神的,有幽默感的,明辨是非的,犯错误,坠入爱河,享受草莓和奶油,让某人爱上它,从经验中学习,恰当使用词汇,成为自己思想的主题,像人一样有多样化的行为,做一些真正新颖的事情(一些能力缺陷将在后面内容中给出特别的考虑)。
上面是待批驳的观点。成为自己思想的主题,就是自我反思、自省。
这些说法通常是没有根据的。我相信它们大多是建立在科学归纳原理的基础上的。一个人一生中见过数千台机器。从所看到的机器,他得出一些一般结论:它们形态丑陋,每台机器是为有限的目的而设计的,只要目的略有变动,它们就无用了,行为变化也小,等等。自然地,他得到结论,这些就是一般机器的必要性质。这些能力缺陷中的很多缺陷与机器存储容量小有关(我假设,存储容量这个概念不仅仅限于离散状态的机器,还可以扩展到别的机器。确切的定义不那么重要,因为目前讨论中还没有断言数学精度)。数年前,由于很少提及数字计算机,要是你光说其特征而不提其构造,就会以为你在信口开河。这大概是因为人们类似应用了科学归纳原理。这些对科学归纳原理的应用很大程度上是无意识的。当一个被火烫过的小孩害怕蜡烛,从而回避使用蜡烛时,应该说他是在应用科学归纳原理(当然,也可以用许多其他的方式来解释这一现象)。人类的工作和习惯似乎并不适合运用科学归纳法。如果你想获得可靠的结果,就要对大部分时空进行研究,否则我们会(像大多数英国儿童一样)以为世界上所有的人都讲英语,学习法语很愚蠢。
“数年前,由于很少提及数字计算机,要是你光说其特征而不提其构造,就会以为你在信口开河。”历史是创造出来的,历史是无数个偶然事件编织串联在一起组成的画卷。历史的发展有时在人们的预期之中,有时比预期要更坏更慢,有时比预期要更好更快。
归纳的一个弊端是容易坐井观天、以偏概全。不要认为自己看到的或知道的就是全部。
“如果你想获得可靠的结果,就要对大部分时空进行研究,否则我们会(像大多数英国儿童一样)以为世界上所有的人都讲英语,学习法语很愚蠢。”艾伦·图灵的这句话对今天大数据的研究具有重要意义。大数据为人类提供了“对大部分时空进行研究”的机遇和素材。但需要指出的是,对大部分时空进行研究是困难的,背后需要的数据量是极其庞大的,有些时间和空间上的数据并不总是容易获得的,且采集和标记数据往往需要极高的成本。
艾伦·图灵在这里提到“光说其特征而不提其构造”,这一句背后是两种指示事物的方法。“说其特征”是“描述法”,“提其构造”是“构造法”。
这里需要注意一下柏拉图的“理念世界”。柏拉图认为,人的一切知识都是由天赋而来,它以潜在的方式存在于人的灵魂之中,因此知识不是对世界物质的感受,而是对理念世界的回忆。教学的目的是恢复人的固有知识,教学的过程就是回忆理念的过程。就此而言,柏拉图的教学认识是一种先验论,而图灵所持的是归纳基础上的认识论。
然而,关于刚才提到机器的许多能力缺陷,还要特别说几句,说机器没有能力享受草莓和奶油,会使读者觉得有点轻率。我们有可能使机器喜欢这些美味,但任何强迫这样做的企图都是愚蠢的。值得重视的是,这种能力缺陷会引起一些其他能力缺陷(比如,难以使人与机器之间形成那种像人与人之间的友好情感)。
断言“机器不能犯错误”,似乎是一个奇怪的说法。我们不禁要反问,“机器会因此更糟吗?”让我们采取更加同情的态度,来看看这究竟意味着什么。我认为可以用模仿游戏来解释这种批评。有人声称,在游戏中提问者简单问几道算术题就能分辨出哪个是机器,哪个是人。由于自身的极高的精度,机器会被暴露。对此做法很简单,(被编程用于玩模仿游戏的)机器将不试图给出算术问题的正确答案,而是故意算错,以蒙骗提问者。机器由于机械故障,会在做算术题时出现错误而做出不妥当的决定,因而暴露了自己。即使这种对批评的解释也不足够有同情心。但是限于篇幅不再进一步讨论。在我看来,这种批评源于混淆了两个不同性质的错误,这两个错误我们称为“功能错误”(errors of function)和“结论错误”(errors of conclusion)。功能错误是由某些机械或电气故障引起的,这些故障导致机器的行为与预先设计的不符。在进行哲学讨论时,我们希望忽略发生这种错误的可能性,这样的话,我们实际上是在讨论“抽象的机器”,而这些抽象的机器是数学上的虚构,而不是物理上的物体。从定义上讲,我们完全可以说“机器从不出差错”。只有当机器的输出信号被附加一定的含义时才会出现结论错误。比方说,机器能够自动打出数学方程或英语句子。当机器打出一个错误的命题时,我们就认为这台机器犯了结论错误。很明显,找不到丝毫理由说,机器从不犯这类错误,一台机器有可能别的什么也不能做,只会重复地打出“0=1”。举一个不太反常的例子,可能有通过科学归纳得出结论的方法,但这种办法有时会导致错误的结果。
如果能证明机器的某些思想具有某些题材的话,就能答复机器不能成为它自己思想的主题这种断言。尽管如此,“机器操作的题材”确实有点意义,至少对于研究它的人来说是这样的。比如,如果一台机器试图解 x 2 -40 x -11=0这个方程,我们会想要将此时这个方程描述为机器题材的一部分。从这种意义上说,机器无疑能够成为它自己的题材。这对编排它自己的程序,对预测因本身结构变化带来的后果都会有所帮助。机器能够通过观察自己行为的结果,修改自己的程序,以便更有效地达到某种目的。这是不久的将来可能办到的事,而不是乌托邦式的空想。
批评机器不能有多样化的行为,就是变相地说,机器不能有很大的存储容量。直到最近,达到1000位的存储容量都很罕见。
在1950年,距离世界上第一台数字计算机EDVAC诞生刚刚五年,机器的存储能力极为有限,连1KB的存储量都很罕见。
我们这里考虑的批评,实际上都是来自意识的那个异议的改头换面。通常,如果我们坚持认为,一台机器 能够 做其中的一件事,并对机器所能采用的方法进行描述,不会给别人多深的印象。人们会认为机器所使用的方法(不管是什么方法,总是机械性的)实在太基础了。请参见前面所引杰斐逊演讲中括号内的话。
关于巴贝奇分析机(Babbage's Analytical Engine)最详细的信息来自洛芙莱斯夫人的回忆录,她写道:“分析机没有意图想要 原创 (originate)什么。它可以做 我们知道该怎样去指挥它去做的任何事情 ”(粗体为她本人所加)。哈特里(Hartree)引用了这段话,并补充道:“这并不意味着就无法制造能‘独立思考'的电子设备,用生物学的话说,我们能够在其中建立条件反射,用作‘学习'的基础。此设想在原则上是否可行,从最近的进展来看,是一个吊人胃口、令人兴奋的问题。但是,当下制造的或者计划制造的机器似乎还不具备此特点。”
艾伦·图灵的思想不是凭空产生的,艾伦·图灵对他之前的人类的已有探索成果具有深入详细的了解,并能跳出局限之外,给出富有深刻洞察力的见解。艾伦·图灵是具有历史思维的人。
注意,巴贝奇分析机的英文全称是Babbage's Analytical Engine,Engine有引擎、发动机的意思。
阿达·洛芙莱斯(Ada Lovelace)是著名英国诗人拜伦之女,数学家。
文献的标题是“译者关于巴贝奇分析机的一篇文章的注记”。1840年,巴贝奇被邀请在意大利演讲分析机,台下听众中有个叫路易吉·梅纳布雷亚(Luigi Menabrea)的人(此人后来担任了意大利的总理)把巴贝奇的演讲用法文做了记录,取名《分析机概论》。
这份法文笔记传到了阿达·洛芙莱斯手上,于是她就着手开始将其翻译成英文,此外她还对论文做了详尽的注释,长度将近原论文的三倍,这些注释给出了一个比巴贝奇以往提出的观点更具普遍性和前瞻性的未来设想。按照阿达·洛芙莱斯这些注释的说法,这台机器不仅仅执行计算,它还执行运算(operation),即“任何改变了两种或多种事物之间相互关系的过程”,因而“这是一个最普遍的定义,涵盖了宇宙间的一切主题”。
阿达·洛芙莱斯还设想这台机器能够计算出无穷数列——伯努利数,并专门为此设计了一个程序,这是世界上诞生的第一个程序,因而阿达·洛芙莱斯被称为计算机程序创始人,建立了循环和子程序概念。她为计算程序拟定“算法”,制作了第一份“程序设计流程图”,被公认为人类第一位程序员,也是人类第一位女程序员。
1843年阿达·洛芙莱斯将论文译稿交给了巴贝奇,巴贝奇看后给出了热情的回应,并鼓励她进行更多的研究与合作。由于阿达·洛芙莱斯在19岁时嫁给了贵族威廉·金,并在婚后几年内生育了三个孩子,平时除了管理家族事务,还要忙于上流阶层的各种应酬,所以贵为伯爵夫人的阿达·洛芙莱斯还能有这样的成就更是令人钦佩。
1852年,年仅36岁的阿达·洛芙莱斯因病去世,按照她的遗愿她被葬在诺丁汉郡其父亲墓旁。巴贝奇分析机被公认为是最早期的计算机雏形,而阿达·洛芙莱斯的算法则被认为是最早的计算机程序和软件。
为了纪念阿达·洛芙莱斯对现代计算机与软件工程所产生的重大影响,美国国防部将耗费巨资、历时近20年研制成功的高级程序语言命名为Ada语言,它是第四代计算机语言的主要代表。
在这点上我完全同意哈特里的看法。值得注意的是,他并没有断言当时的机器不具备这个特点,而是指出洛芙莱斯夫人所能获得的证明还不足以使她相信这些机器已具备了这个特点。从某种意义上讲,这些机器很有可能已具备了这个特点,因为,我们设想某些离散机器有这个特点,分析机实际上是一台通用数字计算机,因此如果它的存储能力和速度达到一定程度,就能通过适当的编程模仿我们讨论的机器,也许伯爵夫人或巴贝奇都没有想到这一点。无论如何,他们没有义务陈述所有能陈述的事物。
整个问题将在1.7节再次考虑。
洛芙莱斯夫人的异议还有另外一种说法,即机器“永远不能创新”,这种说法可以用谚语“太阳底下无新事”抵挡一阵。谁能保证,他的“独创性工作”不是通过教育让身上的种子成长的结果,或者不是遵循著名的普遍原则的结果?此异议还有另一个稍好的说法,即机器永远也不能“让我们吃惊”,这种说法是一个可以直接回应的更直接的挑战。机器经常令我吃惊,这主要是由于我对机器能做什么估算不足,更确切地说,是由于即使我做了估算,也匆忙粗糙。我也许这样对自己说:“我认为此处的电压应与彼处相同:不管怎样,就假设一样吧。”自然我经常出错,结果让我大吃一惊,因为在实验完成时,这些假设已经被遗忘了。我坦诚面对自己这样的错误,我证实了所经历的吃惊,但人们并未失信于我。
我的回答并不会使批评者就此缄口沉默,他也许会这样认为,所谓吃惊都是因为我自己富于想象力的心理活动,与机器本身毫不相干。这样,我们又重新回到来自意识的那个论证上去,而背离了吃惊不吃惊的话题。我们不得不认为这种论证方式是封闭式的,但是,也许值得一提的是,要将某事物认作令人吃惊,则需要许多“富于想象力的心理活动”,不管这件令人吃惊的事件是由一个人、一本书、一台机器还是其他任何东西引起的。
我相信,那种认为机器不会令人吃惊的观点,是哲学家和数学家特别关注的一个谬误。它是这样一个假设,即心灵一旦接受了某个事实,由此事实所引起的一切后果都会同时涌入心灵。在许多情况下,这种假设十分有用,但人们太容易忘了这是个错误的假设,如果照这样做的话,其必然结果就是认为仅仅从数据和普遍原则得出结论会毫无效力可言。
神经系统肯定不是一台离散状态机,关于撞击神经元的神经脉冲大小的信息的一个小的偏差,就可能导致输出脉冲大小的很大差别。既然如此,或许就可以说:不能期望用一个离散状态系统去模仿神经系统的行为。
上面是待批驳的观点。
离散状态机肯定与连续机器有差异。但是如果我们遵循模仿游戏的条件,提问者就无法利用这种差异。如果我们考察其他一些更简单的连续机器,情况会变得更清楚。一台差分分析机(differential analyser)就足以胜任了(差分分析机是一种用来进行某种计算的非离散状态类型的机器)。有些差分分析机能打出答案,所以可以参加模仿游戏。一台数字计算机不可能确切地预测差分分析机对一个问题究竟做何答复,但它却能给出正确的回答。比如,如果你要它回答π的值是多少(实际上约等于3.1416),它就会在3.12、3.13、3.14、3.15、3.16之间做随机选择,(比方说)其选择概率依次分别为0.05、0.15、0.55、0.19、0.06。这样的话,提问者就很难分辨差分分析机与数字计算机。
数学家华罗庚先生曾经指出“离散”与“连续”是数学需要研究的六对基本矛盾之一。但是图灵指出,就是否能够思考而言,机器是离散的还是连续的,并没有本质的区别。比较本书第1、2两章,可以发现一个共同特点,图灵特别能抓住本质,经过仔细的论证和甄别,将非本质的变量或因素一个一个剔除,只留下最本质的最简单的因素。
不可能制定一套旨在描述一个人在每种情况该做什么的规则。比方说,可能有这样一条规则:行人见到红灯止步,见到绿灯行走,但是,如果由于某种错误红绿灯同时亮了,该怎么办?我们也许会这样决定,为安全起见最好止步,但稍后这个决定还会带来一些进一步的困难。试图制定一套考虑到各种可能性的行为规则,甚至是那些由红绿灯引起的可能性,似乎都是不可能的。对此我完全同意。
由此,有人认为我们不能成为机器。我会尽力重现此论证,但我担心很难做到公正。似乎可以这么说:“如果每个人都有一套行为规则来调控其生活,那么他与机器就相差无几了。但不存在这样的规则,因此人不能成为机器。”这里不周延的中项(undistributed middle)显而易见,我认为没人这样论证过,但实际上用的就是这样的论证。然而,“行为规则”(rules of conduct)和“行为规律”(laws of behaviour)之间可能存在一定的混淆,所谓“行为规则”是指诸如“见到红灯止步”这样的规则,你能采取行动,并意识到;而所谓“行为规律”则是指用于人体的自然法则,例如“如果你捏他,他会叫”。如果我们在引用的论据中用“规范他的生活的行为规律”来替代“规定他的生活的行为规则”,那么,这个论证中的不周延的中项就不再是不可克服的了。因为我们认为,受行为规律调控意味着人就是某种机器(尽管不一定是离散状态机),而且反过来说,这样的机器意味着受这样规律调控。然而,我们很难轻易地说服自己,不存在完备行为规律,就像不存在完备行为规则一样。我们知道,找到这些规律的唯一方法是科学观察,而在任何情况下都不能说“我们已充分寻找过了,不存在这样的规律”。
艾伦·图灵在这一段中所说的“不周延的中项”是什么意思?
我们发现艾伦·图灵在原文中其实犯了一个错误, 发生不周延的不是中项,而是大项。
这里我们介绍一下什么是三段论。三段论是由亚里士多德(Aristotle,公元前384~前322)创建的。亚里士多德是古希腊人,世界古代史上伟大的哲学家、科学家和教育家之一,堪称希腊哲学的集大成者,他是柏拉图的学生。
三段论的形式结构为:M-P(大前提),S-M(小前提),S-P(结论)。
三段论中,在两个前提中出现而在结论中不出现的共同项叫作中项,结论的主项叫作小项,结论的谓项叫作大项。大前提中包含大项和中项,小前提中包含小项和中项,结论由小项和大项构成。
在三段论前提中,两次出现的概念称为中项(或中词),以M表示。中项作为小项和大项的中介,把两者联系起来,从而推出结论。例如,在三段论“科学是学问(大前提),物理是科学(小前提),所以物理是学问(结论)”中,“学问”就是大项(P),“科学”是中项(M),“物理”是小项(S)。这里大、中、小如何理解?
如下图所示,大项、中项、小项依次对应三个不同的圈,大项对应最大的圈,小项对应最小的圈,中项对应中间的圈。从集合论的观点看,中项是大项的子集,小项是中项的子集,所以小项是大项的子集。
三段论的推理规则:
(1)一个正确的三段论有且只有三个不同的项。
(2)三段论的中项至少要周延一次。
(3)在前提中不周延的词项,在结论中不得周延。
(4)两个否定前提推不出结论。
(5)前提有一个是否定的,其结论必是否定的;若结论是否定的,则前提必有一个是否定的。
(6)两个特称前提推不出结论。
(7)前提中有一个是特称的,结论必须也是特称的。
词项的周延性是指对直言命题的主项或谓项的外延的断定情况。在直言命题中,如果直接或间接地断定了主项或谓项的全部外延,我们就说主项或谓项是周延的,反之则不周延。
词项的周延性是由直言命题的联项和量项来决定的。具体来说,主项的周延性由量项来决定,量项是全称的,则主项周延,量项是特称的,则主项不周延。谓项的周延性由联项来决定,联项是否定的,则谓项周延,联项是肯定的,则谓项不周延。
联项分为肯定和否定两种。肯定一般用“是”表示,否定一般用“不是”“没”等否定词表示。“是”在有些命题中可以省略。
量项有全称量词、特称量词和单称量词三种。全称量词一般用“所有”“每一个”“凡”等表示,特称量词一般用“有”“有些”表示,单称量词一般用“某个”表示。
例如:“有的鸟不会飞”中的主项“鸟”的周延性是由量项决定的,“有的”是特称,所以主项不周延;而谓项“会飞”的周延性是由联项决定的,“不”是否定的,所以谓项是周延的。
判断“项是否周延”的规则如下:
(a)全称或单称判断的主项都周延。(单称判断的主项只包含一个个体,所以必定是周延的。)
(b)特称判断的主项都不周延。
(c)肯定判断的谓项都不周延。
(d)否定判断的谓项都周延。
我们对原文这句话“如果每个人都有一套行动规则来调控其生活,那么他与机器就相差无几了。但(人)没有这样的规则,因此人不能成为机器。”进行分析。
“如果一个人有一套行为规则来调控其生活,那么他是机器”是大前提,“(人)没有这样的规则”是小前提,“人不是机器”是结论。这个逻辑是不成立的。
设“一个人有一套行为规则来调控其生活”为 A ,“他是机器”为 B ,上面的逻辑是( A → B )Λ(¬ A )→¬ B ,显然,这个逻辑是错误的。但是,错误不是因为“中项不周延”,而是“大项不周延”。
S是“人”,M是“存在规则的事物”,P是“机器”。现在三段论是:M是P(大前提),S不是M(小前提),S不是P(结论)。
分析小项S:在小前提中,小项S是全称判断的主项,所以是周延的。在结论中,小项S也是全称判断的主项,所以也是周延的。
分析中项M:在大前提中,中项M是全称判断的主项,所以是周延的。在小前提中,中项M是否定判断的谓项,所以也是周延的。所以,中项是周延的(而且是周延了两次,绰绰有余了,因为规则(2)指出“三段论的中项至少要周延一次”即可)。
分析大项P:在大前提中,大项P是肯定判断的谓项,所以是不周延的。在结论中,大项P是否定判断的谓项,所以是周延的。根据规则(3),“在前提中不周延的词项,在结论中不得周延”,所以发生了“大项不周延”。
这样就不能判断小项与大项之间的关系,因为可能存在以下关系:第一种情况,人是机器;第二种情况,部分人是机器;第三种情况,没有人是机器。
第一种情况
第二种情况
第三种情况
我们可以更有力地证明这种说法不合理。假定存在这种规律,我们肯定能够找到。然后给定一个离散状态机,应该有可能通过观察找到规律,预测其未来行为,在合理的时间内,比如说一千年。但似乎并非如此,我在曼彻斯特机上安装了一个只有1000个存储单元的小程序,其中配备有一个十六位数字在两秒钟内做出回答。我敢说任何人都无法从这些回答中了解这个程序的足够信息,从而能够预测对未试值的任何回答。
我假设读者熟悉超感官知觉(Extra-Sensor Perception,ESP)的概念,其四种方式为:心灵感应(telepathy)、千里眼(clairvoyance)、先知(precognition)和心灵致动(psychokinesis)。这些令人不安的现象似乎否认了一般的科学观念。我们多么想抹黑它们!不幸的是,统计证据至少对心灵感应是压倒性支持的。人们很难重新调整自己已有的观念以接受这些新事物,一个人一旦接受了这些事物,就离相信鬼魂不远了。走向此方向的第一步是,相信我们的身体除了按照已知的物理学规律运作外,还按照尚未发现的但有些相似的其他规律运作。
图灵对超感官知觉这个话题,采取了大胆的、直接面对的方式,没有避而不谈。这是一种极其宝贵的、真正的科学精神。除了图灵,我国科学家钱学森、朱清时等也曾思考过这方面的问题。我们的一些刊物或项目往往有一些“范式”,符合范式的就受欢迎,反之受排斥。范式一方面提供了一种标准化、程式化,另一方面限制甚至扼杀了那些突破性的想法。
在我看来这是一个十分有力的论点。一个人可以这样回答,许多科学理论尽管同超感官知觉有冲突,但实际上还是可行的;事实上,人若是对这些现象置之不理,依然能活得很好。这是一种甚为冷漠的安慰,人害怕思维与超感官知觉现象可能有特殊的关系。
基于超感官知觉的更具体的论证大致如下:“让我们来玩模仿游戏,让一个善于接受心灵感应的人和一台数字计算机参加。提问者可以问‘我右手中的那张牌是哪个花色?'这样的问题。具有心灵感应或千里眼的人在400张牌中可以答对130张,而机器只能随机猜测,可能答对约104张,因此提问者就能正确地判断了。”这里开启了一个有趣的可能性。假使这台数字计算机有一个随机数生成器,那么,我们就会很自然地用它来决定给出什么回答。但是,这个随机数生成器又受提问者的心灵致动能力的影响,这个心灵致动或许就能让计算机猜对的次数比概率计算高,于是提问者就无法做出正确的判断。而另一方面,提问者也能通过千里眼,不用提问就猜对。有了超感官知觉,什么样的事都会发生。
扑克有四种花色,分别为黑桃(Spade)、红桃(Heart)、方块(Diamond)、梅花(Club),它们的数量是相同的,所以随机猜测正确的概率为1/4,也就是说,400张牌,能答对100张左右。
上面的论证还可以换一种方式:具有心灵感应或千里眼的人在400张牌中可以答对130张,但可以故意答错一些,最终答对100张左右,而机器只能随机猜测,可能答对约104张,因此提问者无法做出正确的判断,于是数字计算机就通过图灵测试了。
如果允许心灵感应介入模仿游戏,我们就有必要严格规定测试方式。此情景就好比在模仿游戏中,提问者在自言自语,参赛者正贴墙侧耳倾听。要是将参赛者置入一间“防心灵感应室”,就能满足所有要求。
艾伦·图灵具有非凡的思考力,能列举9个方面的对立观点,然后简明扼要地进行有力的批驳。那么能否列举第10、11乃至更多方面的对立观点呢?这是值得我们现在和未来去思考的问题。
英文与中文有差异,第7节的英文标题是“Learning Machines”,这该如何翻译呢?直接翻译过来就是“学习机器”,但中文会有歧义,至少可以有三种理解,第一种,有人可能会联想到“学习他人”;第二种,有人可能会联想到“小霸王学习机”,指“辅助人类学习的机器”;第三种,指“本身具有学习能力的机器”。在这里,艾伦·图灵想表达的是第三种意思,即指“具有学习能力的机器”。
读者会猜测我没有令人信服的正面论据来支持我的观点,否则,我就不会花费那么多精力来指出那些异议中的谬论。现在我就给出这样的证据。
我们不要仅仅满足于批驳对立的观点,也要善于给出建设性的具体措施。在本节,图例将从正面论证“有可能存在可以思考的机器”。
让我们暂时回到洛芙莱斯夫人的反对意见,这个意见认为机器只能做我们告诉它去做的事。有的人说,人能够把一个思想“注入”机器,机器在某种程度上做出反应,然后回归静止,就像钢琴弦被一个小锤敲击了一下那样。另一个比喻就是一个小于临界体积的原子堆:注入的思想就像从原子堆外部轰击的中子。每个这样的中子会引起一定的扰动但是最后将逐渐消失。然而,如果原子堆的大小变得足够大的时候,轰击进来的中子产生的扰动很可能会持续地增加,直到整个原子堆解体。思维中是否存在一种对应的现象呢?机器中是否也存在一种对应的现象呢?这样的现象在人类头脑(human mind)中应该是存在的。绝大多数头脑都处于“亚临界”(sub-critical)状态,对应于处于亚临界体积的反应堆。一个想法进入这样的头脑中,平均下来只会产生少于一个的想法作为回复(in reply)。有一小部分思维处于超临界(super-critical)状态,进入其中的想法将会产生二级三级越来越多的想法,最终成为一个完整的“理论”。动物的头脑看起来肯定是处于亚临界状态的。从这种类比出发,我们要问:“机器可以被制造成超临界的吗?”
艾伦·图灵有时交替使用mind和brain这两个词,思维、人脑(大脑)、心灵、心智,这些词语同义。
这是一段值得深思的话。我们至少可以得到下面三点:
(1)艾伦·图灵具有扎实的物理学基础,能够得心应手地驾驭原子的裂变反应、临界体积这些知识,显然他已经深刻地理解了这些知识,表现出极高的人类智能。人类现在生活在一个大数据的时代,数据不等于知识,知识不等于智能,“填鸭式”的应试教育将越来越不能适应时代的要求,重要的是培养学生的分析能力、洞察能力、联想和想象能力。
(2)今天,“赋能”这个词很流行,在这段话中可以找到出处。有人说,计算机的“智能”就是把人类的智能通过编程的方式“注入”计算机。这种观点,在1950年也就是70年前就存在且被艾伦·图灵提到了。
(3)能不能举一反三(注意,我们在译文中特意把in reply标记了出来)、触类旁通,是智能高低的一个判断准则。现在机器学习中一个词“泛化能力”就是说这个事情。
“洋葱皮”的比喻也有用。在研究思维或大脑的功能的时候,我们发现一些操作完全可以用纯机械的方式解释,我们说这并不对应着真正的心灵。但是在剩下的部分,我们发现还有洋葱皮需要被剥除,一直这样下去。用这样的方式,我们是否能够达到“真正”的心灵,或者最终发现皮里面什么也没有了?如果是后一种情况,那么整个心灵都是机械的。(但它不是一个离散状态机,这一点我们已经讨论过。)
上面两段并没有提供令人信服的论据,倒不如称作“为了产生信仰的诵读”。
为1.6节开始时提出的观点给出真正令人满意的支持,只能等到20世纪末了,在那时再进行所描述的实验。但是在等待的这段时间里,我们可以做些什么呢?如果实验将来会成功,我们现在应该采取什么步骤?
艾伦·图灵说到公元2000年的时候,也就是要等50年,才可能“有真正令人满意的支持”。艾伦·图灵这样说,是否正确呢?需要从两个方面去看,也正确,也不正确。一方面,相对1950年,2000年时计算机的存储容量和计算速度有了极大的提升,人工智能的发展和智能计算机的研发经历了多次跌宕起伏;另一方面,在大部分人看来,2000年没有制造出“能够思考的机器”,2022年也没有制造出。
正如我所解释,问题主要是程序设计,工程上的进步也是必要的,但所需不被满足的可能性似乎不大。估计大脑的存储容量在10 10 到10 15 个二进制位之间。我倾向于下界,而且认为只有一小部分用来进行高级的思考,其余大部分用来保存视觉印象。在模仿游戏中对阵一个盲人,若所需要的存储容量超过10 9 ,会让我惊讶(注意,《大英百科全书》第11版的容量为2×10 9 ),即使采用现有技术,10 7 的存储量也是完全可行的,也许根本不需要提高机器的运行速度。那些可当作神经细胞对应物的现代机器部件,其速度比神经细胞快1000倍,这可以为补偿各种情况引起的速度损失提供“安全裕度”,剩下的问题主要就是如何编程让机器能够完成游戏。按照我现在的工作速度,我一天大概能编1000个二进制位的程序,所以大约60个工人在未来50年稳定工作,并且没有东西扔进废纸篓,就可以完成这项工作。似乎需要一些更迅速且有效率的方法。
艾伦·图灵强调了程序设计对智能的重要性。没有软件,计算机就没有灵魂。
艾伦·图灵这里提到“工程上的进步”,这是指什么呢?材料、电源、散热、芯片封装等都属于工程范畴。
艾伦·图灵所说的“那些可当作神经细胞对应物的现代机器部件”在冯·诺依曼的报告中被提到过。具体指什么呢?运算器!
艾伦·图灵在这里提出两个论断:对使得机器能够思考来说,
编程的重要性>工程的重要性
存储容量的重要性>运算速度的重要性
艾伦·图灵善于找参照物,他在这里以《大英百科全书》第11版为参照物,该参照物的容量为2GB。
为什么说,对阵一个盲人,1GB的存储容量就够了?因为人脑的大部分用于存储视觉印象,而盲人不需要存储视觉印象。
如何编程让机器能够完成游戏?艾伦·图灵估算了编程的进度,他的估算方法有合理性,但也有缺陷。
艾伦·图灵说,他一天大概能编1000个二进制位的程序,所以大约60个工人在未来50年稳定工作,并且没有无效劳动,就可以完成这项工作。
1000×365×60×50=1.095GB
现在组织一个600人的团队攻关一个项目是可能的,五年的时间也可以完成上面的工作量。
但是,之所以程序设计效率低、进展缓慢,主要不是编程语言本身的问题,而是对大脑及其思维规律的认知不足。
在试图模仿成人心灵的过程中,我们必须对那个把心灵带入它所处状态的过程进行大量的思考。我们可能需要注意三个因素:
(a)大脑的初始状态,即出生时的状态。
(b)大脑所接受的教育。
(c)大脑所经历的经验,此经验不被称为教育。
上面三个因素是一个划分。所谓划分,就是三个部分没有交叉(交集为空),它们的并是全集。
与其试图编程模拟成人大脑,不如模拟儿童大脑,如果让儿童大脑接受正确的教育课程,就可能获得成人大脑。儿童大脑大概就像一个刚从文具店买来的笔记本,只有非常简单的机制和许多空白的纸张(机制和书写在我们看来是几乎同义的),我们希望儿童大脑中的机制足够少使得容易被编程。我们可以假设,对机器进行教育的工作量和教育一个人类儿童的工作量基本相当。
这里提到两种思路,一种是直接模拟成人大脑,一种是先模拟儿童大脑,然后使之接受教育变成成人大脑。
假设儿童的大脑为 B ,成人的大脑为 B ′,教育为 E ,模拟为 f ,
E ( B )= B ′
f ( B )为模拟儿童大脑的程序,
f ( B ′)为模拟成人大脑的程序,
f ( B ′)= f ( E ( B ))
这样,我们把问题分为两部分:儿童程序和教育过程。这两个部分有紧密的联系。我们不能指望一下就找到一个好的儿童机器。我们必须对一个这样的机器进行教育试验,看其学习效果,然后再试另外一个,判断哪个更好。显然这个过程与进化有联系,通过这样类比:
儿童机器的结构=遗传物质
儿童机器的变化=变异
试验者的判断=自然选择
上面这三行,是在做什么?在做类比!类比思维,更广义地说是历史思维的一部分,也就是将当前研究的事物与过去已经被研究的事物之间建立一种映射或关联。
然而,人们可能希望这个过程比进化更迅速且更有效率,适者生存是衡量优势的一种较慢的方法。试验者的判断通过智能实验将会加快这一过程。同样重要的是,试验者并不需要局限于随机的变异,如果能够找出某些缺陷的原因,就可能想到改进它的变异。
对机器不可能应用与儿童完全相同的教学过程,例如,它没有腿,因此就不会被要求出去装煤斗;它也可能没有眼睛。但是不管聪明的工程师采取何种方法克服这些缺陷,只要这样的机器被送进人类的学校,其他的学生肯定会嘲笑它,它必须得到专门的训练。我们不必太注意腿和眼等,海伦·凯勒女士的例子表明只要老师和学生能够以某种方式进行双向的交流,教育就能进行。
艾伦·图灵再次强调:在研究智能时,应该忽略非本质的属性。
海伦·凯勒(Helen Keller,1880~1968年),美国著名的女作家、教育家、慈善家、社会活动家。她于1880年6月27出生,在出生的第19个月因患急性胃充血、脑充血而失去视力和听力。1887年她与安妮·莎莉文老师相遇。1899年6月她考入哈佛大学拉德克利夫女子学院。她于1968年6月1日逝世,享年88岁,在其生命中有87年生活在无光、无声的世界里。在此时间里,她掌握了英语、法语、德语、拉丁语、希腊语五种语言,先后完成了14本著作,其中最著名的有《假如给我三天光明》《我的生活故事》《石墙故事》等。她致力于为残疾人造福,建立了许多慈善机构,1964年荣获“总统自由勋章”,次年入选美国《时代周刊》评选的“二十世纪美国十大偶像”之一。
一个人,没有听力,没有视力,仍然可以学习,而且可以取得杰出的成就!海伦·凯勒的事迹不仅仅说明了人类在坚强意志方面的潜力可以有多么大,也对理解“学习”的过程、建立“学习”的理论具有重要意义。显然,艾伦·图灵在讨论构造具有学习能力的机器的时候,注意到海伦·凯勒的事迹,并得出了有益的启示。再一次地显示出,艾伦·图灵具有极其广博的知识面和极其深邃的洞察力,以及得心应手驾驭知识的能力。
这里再一次提醒大家注意教师的作用。
1887年3月3日,对海伦·凯勒来说这是个极重要的日子(那时她不到7岁)。这一天,家里为她请来了一位教师——安妮·莎莉文小姐。莎莉文老师跟海伦·凯勒很投缘,她们认识没有几天就相处融洽,而且海伦·凯勒还从莎莉文老师那里学会了认字,让她能与别人沟通,再学习一些生字的意思,她陆续学懂了鲜花、水、太阳等,并认为爱就是那温暖的阳光。其后再教导海伦·凯勒用手指点字以及基本的生活礼仪。
安妮·莎莉文老师十分有爱心,她首先了解了海伦的脾气,她终于知道凯勒的脾气为什么会如此躁动,是因为父母不忍看她做错事(打人、不守规矩、破坏东西等)被惩罚的模样。于是在她做错事时都给她糖吃,所以安妮·莎莉文老师必须要纠正父母的这些错误行为,并且与她建立互信的关系,再耐心地教导海伦手语,一天,老师在海伦凯勒的手心写了“‘water’水”这个字,海伦·凯勒总是把“杯”和“水”混为一谈。到后来,她不耐烦了,把老师给她的新陶瓷洋娃娃摔坏了。但莎莉文老师并没有放弃海伦,她带着海伦·凯勒走到水井房边,要海伦·凯勒把小手放在水管口下,让清凉的水滴滴在海伦·凯勒的手上。接着,莎莉文老师又在海伦·凯勒的手心,写下“‘water’水”这个字,写了几次,从此海伦·凯勒就牢牢记住了,再也不会搞不清楚。海伦后来回忆说:“不知怎么回事,语言的秘密突然被揭开了,我终于知道水就是流过我手心的一种液体。”
海伦·凯勒所写的“假如给我三天光明”这篇文章对于我们理解“学习过程”是很有帮助的。
我们通常将惩罚(punishment)和奖励(reward)与教学过程(teaching process)联系在一起,一些简单的儿童机器可以按照这种原则来构建或编程,使得遭到惩罚的事件不大可能重复,而受到奖励的事件则会增加重复的可能性。我已经用一台这样的儿童机器做了一些实验,并成功地教会了这台机器做几件事情,但教育方法太不正规以致不能被认为是真正成功的。
惩罚、奖励是教学过程中所必需的。教学的过程本质上是训练的过程,也就是学习的过程。“使得遭到惩罚的事件不大可能重复,而受到奖励的事件则会增加重复的可能性”这不就是神经网络的反向传播的基本原理吗?不就是提升(Adaboost)算法的基本原理吗?
惩罚和奖励的使用最好是教学过程的一部分。粗略地说,如果教师没有与学生沟通的其他方式,那么能到达学生的信息量不会超过所用的奖励和惩罚的总次数。当学生只能通过“二十个问题”的方法学习重复诗作《卡萨布兰卡》时,会感到非常痛苦,每一次“No”都会是一次打击。因此还必须采用其他“不动声色的”(unemotional)沟通渠道,如果“不动声色的”沟通渠道是可用的,就有可能通过惩罚和奖励让机器服从以某种语言(例如符号语言)给出的命令,此命令通过“不动声色的”渠道传达。这种语言的使用将会大大降低所需要的惩罚和奖励的次数。
学习的方法是重要的,无论是对机器,还是对人,都是如此。
惩罚和奖励是比较生硬的方法,就像法律上的“赏罚分明”也有些生硬一样。
对于什么样的复杂度更适合儿童机器可能有不同的看法,有人主张尽可能简单以保持通用性,有人主张嵌入一个完整的逻辑推理系统。在后一种情况下,大多数存储空间将被用来存储定义和命题,这些命题可能具有各种各样的形式,例如确定的事实、推测、数学上证明的定理、权威给出的判断、具有逻辑形式却没有确定值的表达式等。一些命题可以被称作“命令”,机器应该设计成当命令确定时立即自动执行合适的动作。例如,如果老师对机器说“现在做你的家庭作业”,这将使“老师说‘现在做你的家庭作业’”成为确定的事实;另一个事实可能是“老师说的一切都是对的。”这两个结合在一起将使“现在做你的家庭作业”成为确定的事实。而根据机器的设计规则,这意味着立即开始做家庭作业,效果还是令人满意的。机器所使用的推理过程并不需要像严格的逻辑家所为,例如可能没有类型的层次结构,但这并不意味着出现类型谬误的概率会比我们从悬崖摔下的概率高。合理的命令(在系统内部表达,并不是系统规则的一部分),比如“不要使用一个类,除非它是老师提到的类的一个子类”这样的命令就与“不要让他接近边缘”具有相似的效果。
没有肢体的机器人所能执行的命令具有智力性质,就像上面的例子(做家庭作业)。在这些命令中,最重要的是调节逻辑系统规则的执行顺序,因为在使用这个系统的每一步,都会有许多不同选择,在遵守逻辑系统规则的情况下,任意选择一个都是允许的。如何选择将区分聪明推理者还是愚蠢推理者,而不是区分正确推理者还是谬误推理者。导致这类命令的命题可能是“当提到苏格拉底的时候,使用芭芭拉的三段论”或者“如果有一个方法被证明比另外的方法快,不要使用慢的方法”。这些命题可能来自权威,也可能来自机器本身,例如科学归纳。
每个人从出生到死亡,乃至死亡之后,都处于静止与运动的这一对矛盾之中,每个瞬间的前后,每个人(特别针对大脑来说)似乎没有发生变化,但肯定又在发生变化。
“这些命题可能来自权威,也可能来自机器本身,例如科学归纳。”来自权威,就是专家知识;来自机器本身,就是归纳的结果。
具有学习能力的机器这个想法对某些读者来说似乎有些矛盾,机器的操作规则怎么能改变呢?无论机器过去经历什么,未来会有什么变化,其操作规则都应该完整地描述机器会如何反应,即这些规则是不随时间变化的。确实是这样的,悖论的解释是,在学习过程中发生变化的规则是一类不那么自命不凡的规则,只声称短暂的有效性。
具有学习能力的机器的一个重要特征是,教师通常对其内部发生的事情不了解,尽管教师仍然可以在一定程度上预测其学生的行为。这一点对具有经过多次试验的设计(或编程)的儿童机器所产生的机器的后期教育来说尤其适用。这一点与使用机器进行正常计算的过程形成鲜明对比:那里的目标是要清楚明白机器在计算中任意时刻的状态,而要达到此目标则需要付出艰苦的努力。如此,“机器只能按我们的要求做事”
的观点就会显得很奇怪了,能够输入机器的大部分程序终归会做一些我们无法理解的事情,或者被认为是完全随机的行为。智能行为很可能与完全服从命令的行为有差别,但只是较小的差别,不会引起随机行为或无意义的重复循环。通过教育和学习使我们的机器能够胜任模仿游戏中的角色的一个重要结果是,“人类易错性”(human fallibility)可能会以相当自然的方式(即不需要专门的“指导”)被忽略。学习的过程并不会产生百分之百的确定结果,否则就不是学习了。
人类的教师在正式从事这个职业之前,需要获得教师资格证,通常要学习教育心理学等课程。为什么要学习教育心理学呢?其中一个原因就是要了解学生的心理活动,以避免或减少图灵所说那种“对其内部的事情不了解”的情况。
图灵提到“对……后期教育来说尤其适用”,联想一下人类在中学时代要经历的青春期和逆反期,那时自主意识相对之前显著增强,教师对学生心理了解的难度也相应地提高了。中学生相比于小学生,智能水平更高,更难被管理,更难被透视心理。
在一个具有学习能力的机器中加入随机元素或许是明智的(参见1.4节)。当我们寻找某个问题的解时,随机元素相当有用。例如,我们想找到一个介于50和100之间的数,它等于各个数字的和的平方。我们可以从51、52开始一直试下去直到找到满足条件的数。另一个方法是随机地选数直到找到满足条件的数,这种方法的优点是不需要跟踪已经尝试过的值,但缺点是一个数可能被重复试两次,如果存在多个解,这一点并不是很重要。系统化方法有一个缺点,是可能存在很大一段数中并不存在解,但我们需要先判断它。现在的学习过程可以看成寻找满足教师的要求(或一些其他的标准)的行为,既然可能存在大量的可能解,随机方法可能比系统方法更好。应该注意到,在进化过程中有相似的方法,那里系统方法是不可能的,如何跟踪已经尝试过的不同基因组合,从而避免重复呢?
姚启智是研究随机数的专家。
我们希望机器最终能和人在所有纯智力领域竞争,但何处是最好的开端?甚至这也成为困难的选择。许多人认为抽象的活动,例如国际象棋可能是最好的选择;也有人认为最好是花钱给机器买最好的传感器,然后教它听说英语,就像教一个正常的小孩一样,教它命名事物等。我并不知道正确的答案,但是我想两方面都应该试试。
这里图灵再次指出本文讨论的是机器与人在“所有纯智力领域”竞争。需要注意两点。第一,不是在非智力领域竞争,例如人类不如挖掘机那样有很强大的臂力,但这没有讨论的必要。第二,不是仅仅在部分智力领域竞争,而是在所有智力领域竞争,比如机器与人不仅仅要比赛下棋,还要在写十四行诗等其他领域比赛。
我们的目光所及,只是不远的前方,但是可以看到,那里有许多工作需要去完成。
艾伦·图灵是一个具有深邃思考力的远望者,但他深知一个人的视距是有限的。这篇文章的最后一句,非常有深意,一方面是文章结束语,表示即使不远的将来,也有很多工作要做,另一方面,这是人工智能的思考范式,下棋时,我们只是看到不远的前方,但即使这样,这中间也有很多选择。
[1]Samuel Butler,Erewhon,London,1865.Chapters 23,24,25,The Book of the Machines.
[2]Alonzo Church,“An Unsolvable Problem of Elementary Number Theory”,American J.of Math.,58(1936),345-363.
[3]K.Gödel,“Über formal unentscheidbare Sätze der Principla Mathematica und verwandter Systeme,I”,Monatshefte für Math.und Phys.,(1931),173-189.
[4]D.R.Hartree,Calculating Instruments and Machines,New York,1949.
[5]S.C.Kleene,“General Recursive Functions of Natural Numbers”,American J.of Math.,57(1935),153-173 and 219-244.
[6]G.Jefferson,“The Mind of Mechanical Man”.Lister Oration for 1949.British Medical Journal,vol.i(1949),1105-1121.
[7]Countess of Lovelace,“Translator's notes to an article on Babbage's Analytical Engine”,Scientific Memoirs(ed.by R.Taylor),vol.3(1842),691-731.
[8]Bertrand Russell,History of Western Philosophy,London,1940.
[9]A.M.Turing,“On Computable Numbers,with an Application to the Entscheidungsproblem”,Proc.London Math.Soc.(2),42(1937),230-265.
图灵一共引用了9篇文献。第一篇是巴特勒于1865年英国伦敦出版的《埃瑞璜》中的部分内容,图灵特别指出引用的是第23、24、25章,章的标题是“The Book of the Machines”。在1865年,英国就出版了关于机器的论著,当时英国已经完成了工业革命,正享受工业革命的成果,在全球各地殖民统治,而中国正处于内忧外患的阶段。第二篇是丘奇1936年在《美国数学杂志》发表的关于可计算性理论的著作。
第三篇是哥德尔在1931年发表的文章。第四篇是哈特里在1949年在纽约发表的文章《计算装置与机器》。图灵在评述第6个对立观点时提到哈特里的话。第五篇是克莱因在《美国数学杂志》上发表的《自然数的一般递归函数》一文。第六篇是斐弗逊在1949年在《英国医学杂志》上发表的《数学家的思想》。第七篇是洛芙莱斯介绍巴贝奇分析机的文章。第八篇是罗素1940年在伦敦出版的《西方哲学史》。第九篇是艾伦·图灵自己在1936年发表的《论可计算数及其在判定性问题中的应用》的文章(见本书第2章)。
1.艾伦·图灵反驳了哪些对立的观点?分别是如何反驳的?
2.在艾伦·图灵看来,如何设计具有思维能力的机器?你是否认同他的思路?在你看来,他的思路是否可行,或者是否还有可改进之处?