机器能够思维吗?图林提出的这个著名问题在复杂系统框架中具有新的讨论意义。本章先对莱布尼茨和他的机器思维纲领(通用数学)以来的计算机科学史作一简短回顾(5.1节)。现代的可计算性理论使我们能够进行问题的复杂性分类,即划分对它们的算法或计算程序的计算时间的函数的级别。现代计算机科学感兴趣的,不仅仅是通用问题求解的复杂性而且还有基于知识程序的复杂性。在特定的领域中模拟人类专家问题求解行为的专家系统,是一个著名的例子。我们还要进一步问一问,是否可以期待从量子计算机和量子复杂性理论中得到更有效的问题求解方法(5.2节)。
但是在采用程序控制的计算机算法机械化时遇到几个严重的障碍,是增加计算能力所不能克服的。例如,模式识别、运动协调和其他复杂的人的学习任务,都是图林类型计算机程序所难以把握的。人工神经网络实现了复杂动力学系统的原理。它们得到了非线性动力学在固态物理学、自旋玻璃体物理学、化学平行计算机、光学平行计算机、激光系统中和对于人脑的成功应用的鼓舞(5.3节)。人工神经网络已经在神经仿生学、医学和机器人学中得到了一些应用。新技术应用的另一个更为推测性的方面是赛博空间。虚拟现实在世界范围的远距离通信者的社会中已经成为一个关键词(5.4节)。显然,图林的“机器能否思维?”这个问题不可能由复杂系统探究方式作出最终的回答,尽管我们可以运用人工神经网络来完成一些有趣的认知任务。
5.1莱布尼茨和通用数学
复杂系统的一个最为推测性的应用是人工智能(AI)的进化。在经典的AI传统中,大脑被理解为最先进机器的计算机硬件,而神经是相应的具有确定性算法的软件程序。甚至基于知识的专家系统也被设想为高度发展的AI编程语言的算法表示。但是数理逻辑的理论结果(丘奇、图林和哥德尔等人)以及编程的实际问题限制了经典AI框架中的思维机械化。
一种关于作为自然进化产物的“脑计算机”的理论已经提出,主张用复杂神经网络的非线性动力学(“自组织”)来为大脑的本性及其精神状态建立模型。由此引起的问题是,对于它们的动力学的洞见,是否会获得一种新的革命性技术的“蓝图”,并由此来追索大脑和精神的自然进化。实际上,人的知识和知识技术的发展表现为一种技术的进化,它导致了如同生物进化中的突变那样的技术创新。
最初的水平是由如锤子、杠杆等简单工具实现的。高一级水平上,发明了运用力和能量的机器。今天,程序控制的计算机和信息处理自动机已经变成了日常生活中的工具。计算机科学家在他们的机器的历史发展中把硬件和软件划分成若干代。在人工智能研究中,人们可以说“第2代计算机”,指的是从数字处理机到知识处理系统,如专家系统。专家系统被认为是至少部分地模拟人类专家。
计算机科学的早期历史根源可以追溯到经典机器时代。随着自动执行初等算术操作的机械装置的发展,思维的机械化也就开始了。一台机械计算机一步一步地执行顺序指令。因此,它的动力学是由机械的单向因果性所决定的,本质上不同于复杂系统平行主义和自组织。一般地说,机械计算机的传统设计中包括如下的装置。
首先是输入机制,数字由此输入到机器中。选择机制选取机械运动,对寄存机制中的数值进行加法或减法运算。寄存机制对于显示存储在机器中的数值是必要的,技术上是用一系列的轮子或圆盘来实现的。如果进行了一次计算,是因为结果寄存器中的一个数字从9提升到了0,然后必须由运行机制将这一运算传播到下一个数字甚至穿过整个结果寄存器。控制机制保证了所有的齿轮在每一次加和循环以后正确地到位,以避免错误结果或阻塞机器。消去机制必须对寄存机制进行重新设置,使之处于零位。
希伯莱语教授、东方语言学家、数学家、天文学家和地理学家威廉姆·希克尔德(1592-1635)被看成是第一位能够进行四则运算的机械计算机的发明者。他的机器中,加法和减法部分是由自动运行机制驱动齿轮来实现的。乘法和除法机制是以亲普尔的乘法表为基础的。杰出的法国数学家和哲学家布莱斯·帕斯卡尔(1623-1662)发明的加法和减法机中,其精致可进行四则运算的运行机制原理在今天的路程计中仍然运用着。
正是莱布尼茨的可进行四则运算的机械计算机中包含了如下机械装置:输入机制、选取机制、进行运算的寄存器、以及消去机制。莱布尼茨机成了手摇计算机的原型。如果我们对莱布尼茨机的技术细节和特殊机械构造进行抽象,那么我们就获得了一种理想计算机模型,它在原则上能够计算所有的自然数的可计算函数。
图5.1是这种理想计算机的图式,其中有摇把C,3个数字寄存器SM、TM和RM。设置操纵杆SH可以使自然数输进(输入)机制SM。如果摇把向右方转动,SM的内容就加入到结果机制RM的内容中,转动机制TM的内容就提高1。摇把C向左方转动,从RM的内容中减少SM的内容,并使TM的内容减少1。
加法意味着如下的结果:在计算开始时,消去机制程序由设置TM和RM到零来完成。然后,第1个数用SH设置在SM中。摇把C向右转动,就把这个数字送入了RM。换言之,在RM中把数字加到了零上。现在,第2个数字输入到SM,并通过向右转从而加到RM的内容中。两个数字的和可以在RM上读出。在向右摇动两次曲柄以后,TM显示出2。乘法仅仅是意味着反复相同数字的反复加法。乘积b·a是数字a加到自己身上b次。
莱布尼茨甚至设计了仅仅有两个数字0和1的二进制数字系统的机械计算机,二进制是他早些年发现的。他描述了一个机制,可以把十进制翻译成相应的二进制,并且反之亦然。由于现代的电子计算机只有两种状态1(电脉冲)和0(没有电脉冲),莱布尼茨的确成为计算机科学的先驱之一。
莱布尼茨的机器遇到了许多技术上的问题,因为那时的材料和技术工艺都难以满足要求。然而,他的设计是通用数学的一般研究纲领的一部分,通用数学机的意图是要通过计算程序(“算法”)并通过机械计算机来模拟人的思维。莱布尼茨提出了他的通用数学的两个基本学科。
ars iudicandi允许每一种科学问题,在编码成为数字符号以后,都可由适当的算术算法来解决。ars
inveniendi允许科学家去寻找和计算出科学问题的可能解。莱布尼茨的通用数学看来已经预见了我们这个世纪著名的希尔伯特纲领,此纲领号召对数学知识进行形式化和公理化。实际上,莱布尼茨发展起来了一些程序,对语言进行形式化和编码。他深深地坚信,存在着用机械装置解决世界上所有问题的通用算法。
结果,他主张自然系统如细胞、植物、动物甚至人类都是复杂性程度不同的计算机。莱布尼茨在他的《论形而上学》(1686)中强调,活系统的因果解释的机械描述并不与在科学中有巨大启发价值的目的论观点相抵触,(22)。他在《单子论》中(18),引入了一种个体实体(单子)作为基本的自动机,它以状态(“感觉”)的(连续)系列为特征。基本的自动机构成了集合体,其程度不同的复杂性以不同的关联性为标志,并可以解释为复合的自动机。在他的《神正论》(200)中,莱布尼茨讨论了活系统中的等级结构和从属关系:
……事物的关联和秩序引起了,每种动物和每种植物的身体都包含了其他动物和其他植物,或其他活的有机体:结果是存在着从属关系,一种身体,一种实体都服务于另一种。
活系统的统一性是由其组织形式来保证的,对此莱布尼茨采纳了亚里士多德的观点,称之为“隐德来希”。但是莱布尼茨仅仅是借用了一种老的形而上学术语,以引出他自己的新概念。对于莱布尼茨来说,只有在从属关系和等级程度高低不同的意义上,一个系统才有一定程度的统一性。一个其中所有的实体之间有同等关联的集合体,就没有等级秩序,比起初级的细胞有机体,它的结构性就较差,而在植物、动物和人类中,我们都可以观察到一种不断增长的从属关系。
对于莱布尼茨来说,目的性术语具有启发性价值,尽管大自然原则上可以用机械因果性来解释。但是,把莱布尼茨说成是一位生命力论的信徒是一个基本的错误和误解。主要的区别在于,对于莱布尼茨来说,解释活系统决不需要新的原理或生命力。在一定程度的复杂性中,目的论术语仅仅是启发性地适用于描述自然系统。但是,与自然系统不同,人造的机械自动机是由人在有限步骤中构造出来的。只有无限分析才能够揭示出自然自动机的复杂性,它是与世界上的每一单个自动机(“实体”)相关联的。显然,莱布尼茨设计了一种复杂系统理论,但是仍然是处于经典力学框架中,仍然是一种可决定的通用算法的信念。
在19世纪,英国的数学家和经济学家查尔斯·巴贝奇不仅仅构造了第一台程序控制的计算机(“分析机”),而且还研究了它的经济和社会后果。他的名著《论机械和制造的经济》(On
theEconomy of Machinery and Manufactures,1841)的先声是亚当·斯密的经济规律思想,这与牛顿的力学规律是并行不悖的(对照6.2节)。在《国富论》中,斯密把钢针的工业生产描述为一个算法程序,预见了亨利·福特的工业中程控批量生产的思想。
5.2从图林机到基于知识的系统
弗雷格和罗素的现代形式逻辑以及希尔伯特和哥德尔的数学证明理论,主要受到了莱布尼茨通用数学纲领的影响。手摇计算机(图5.1)是对于5.1节所述莱布尼茨机的抽象,可以方便地推广到马尔文·闵斯基的所谓寄存机。它使人们在现代计算机科学中可以定义一般的可计算性概念。
一台手摇计算机只有两个寄存器TM和RM,只能输入相当小的自然数。一台理想的寄存器具有有限个寄存器,它们都可以贮存任意有限个数量。寄存器用自然数i=1,2,3,……标记。寄存器i的内容用(i)来标记。作为一个例子,装置(4):=1意味着,寄存器4的内容为1。如果其内容为0则寄存器是空的。
在手摇计算机中,加法或减法仅仅由两个寄存器(SM)和(RM)来实现,(SM)+(RM)或(SM)-(RM)都将存入寄存器RM。在寄存机中,减法<i>-<j>的结果应为0,如果<j>大于<i>。这种修改的减法标记为<i>-<j>。一般地,理想寄存机的程序是用如下的基本步骤作为建筑块来定义的:
①向(i)中加人1并把结果置人寄存器i,即(i):(i)+1;
②从(i)中减去1并把结果置人寄存器i,即(i):=(i)-1;
这两个基本步骤可以运用如下的概念进行合成:
③如果P和Q都是明确定义的程序,那么P→Q也是明确定义的程序。P→Q意味着,机器必须在执行程序P之后执行程序Q。
④程序的重复,这对于乘法是必要的,例如,重复相加受到如下问题的控制:一定的寄存器是否是空的。
这种反馈可以示意如下:
如果P是明确定义的程序,执行P直到寄存器i中的内容变成零。
程序的每一基本操作①和②都计为一步计算。一个简单的例子是如下的加法程序:
机器的每一状态都表示为如下的矩阵,它不断地把(j)的内容y加到寄存器(i)的内容X中,同时使得(j)的内容逐步减少到零。x+y加和的结果显示在寄存器<j>中:
一台具有程序F的寄存机定义为,计算出n个自变量的函数值f,即对于寄存器1,…,n中任意的自变量x1,…,xn(对于所有其他寄存器均为零),执行程序F,在有限步骤后停止,此时寄存器1,…,n中函数的自变量和寄存器n+1中的函数值为f(x1,…,xn)
按照相应的矩阵进行运算。函数f称作由寄存机RM可计算的(RM-可计算性),如果由程序F计算f。
一定程序F计算一个函数f所需的步骤数,由该程序所决定,并取决于函数的自变量。程序F的复杂性用函数SF(x1,…,xn)来度量,它计算出按照程序F进行计算的步骤。例如,x+y的加法程序的矩阵显示了,y步加上1的基本步骤和y步减去1的基本步骤是必要的。因此,SF(x,y)=2y。由于RM可计算函数f可以由若干种程序进行计算,函数g称作函数f的步骤计算函数,如果有一个程序F去计算f,且对于所有的自变量x1,…,xn有g(x1,…,xn)=SF(x1,…,xn)。一个函数的复杂性定义为最好程序的复杂性,最好程序即进行函数计算时花费步骤最少的程序。
显然,闵斯基的寄存机是一种对于莱布尼茨的手摇计算机的直觉概括。但是,历史上另一种等价表述的机器是阿兰·图林和埃米尔·波斯特在1936年首先提出来的。图林机(图5.2a)可以执行任何有效的程序,如果该程序是正确编程的。它的构成:
a)控制箱,其中置入某个有限程序;
b)潜在无限的带子,带子上划分出小方格;。
c)计数装置,或将每一结果打印在带子的每一方格中,沿着带子的移动或停机都处于控制箱的命令控制下。
如果图林机使用的符号限制在竖线I和空格*,那么可以证明,RM可计算函数是图林机可计算的,反之亦然。我们必须记住,每一自然数都可以一个x条竖线的序列来表示(例如3表示为III),每一竖线都占据图林带子上的一个方格。空格*用来标记空的方格(或相应的数字为零)。特别是,对于分开代表着数目的坚线序列,空格是必要的。因此,图林机计算一个自变量为x1,…,xn的函数f,始于带子上的…*x1*x2*…*xn,停机于…*x1*x2*…*xn*f(x1,…xn)*…。
从逻辑学的观点来看,一台通用计算机是技术上实现了的通用图林机,——如美国的约翰·冯·诸葛曼小组构造的计算机以及德国的康拉德·朱斯独立构造的计算机。它可以执行任何种类的图林程序。同样,我们可以定义一种通用的寄存机,它可以执行任何种类的寄存程序。实际上,通常设计的冯·诺意曼机包括中心处理器(程序控制器),记忆装置,算法单元和输人-输出装置。它以长序列方式一步一步地运行。今天的一台冯·诺意曼计算机实际是一台通用化的图林机。图林机的效率可以由引进几条带子而增加,它们不必是一维的,每一条带子有一个或多个读写头,但是都要报告给单个控制箱,控制精协调着机器的所有活动(图5.2b)。因此,这种更有效的机器的每一计算都可以由一台普通的图林机来实施。从复杂系统探究方式来看,一台多带图林机仍然是一种程序控制的计算机,与自组织系统如神经网络有本质上的差异。
除了图林机和寄存机以外,可计算函数还可以用许多其他数学上等价程序来定义。递归函数由函数置换和重复来定义,它始于某种显然是可计算的基本函数(例如相继函数n(x)=x+1)。所有这些由图林机、寄存机、递归函数等来定义的可计算性,可以被证明是数学上等价的。显然,每一种这样的精确概念都定义了一种程序,这样的程序是直觉上有效的。
因此,阿朗索·丘奇提出了他的著名公设,有效程序这个非形式的直觉概念与图林机那样的等价的精确概念是一致的。丘奇的公设当然是不可能证明的,因为这里是数学上精确的概念与非形式的直觉概念的比较。然而,几种精确的可计算性概念的数学等价在直觉上是丘奇公设的有效确证。结果是,我们可能在不涉及特定的有效程序(“算法”)如图林机、寄存机、递归函数等时,来谈论可计算性、有效性和计算函数。按照丘奇的公设,我们特别可以说,每一可计算程序(算法)都可以由图林机进行计算。所有的递归函数作为一种机器程序,都可以由通用计算机进行计算。
现在,我们能够定义决策和可计数的有效程序,而莱布尼茨的通用数学纲领就已经提出了这样的要求。自然数的集合M的特征函数fM定义为fM(x)=1,如果x是M的一个元素,否则fM(x)=0。因此,子集M被定义为有效可决定的,如果其特征函数对于一个数无论是否属于M,都是有效可计算的(或递归的)。
集合M定义为有效(递归)可计数的,如果存在有效(递归)程序f可相继地产生出其元素(对于M中所有元素x1,x2,…,有形式f(1)=x1,f(2)=x2,……)。容易证明,所有递归(可决定的)集都是递归上可计数的(或递归的)。但是,存在着这样的集合,它是递归上可计数的,但却不是可决定的。这是第一条线索,它意味着,莱布尼茨的基于通用可决定程序信念的乐观纲领存在着局限性。
对于自然智能和人工智能,有效可计算性范式意味着精神是由程序控制机器表示的。神经结构涉及的是符号数据结构,而精神过程也就是操作算法。历史上,AI的核心是在1956年的达特茅斯会议期间建立起来的。参加会议的约翰·麦卡锡、阿兰·纽厄尔、赫伯特·西蒙以及来自其他不同学科领域的一流研究人员,形成了新的AI科学共同体。他们都受到图林的“机器能否思维?”问题的启发,这个问题是图林在著名的《计算机器和智能》(1950)一文中提出来的。
在莱布尼茨的通用数学的传统中,人们可能会相信,人的思维可以用某种通用演算来形式化。在其现代的翻版中,人们可能会假定,人的思维可以用某种强有力的形式编程语言来表示。无论如何,形式表达式都是符号序列,是可以用自然数进行编码的。于是,对于对象的断言就相应于关于数字的函数,结论就将从某种有效的计数程序中得出,如此等等。实际上,现代计算机的机器语言就是由数字序列构成的,对于机器的每一状态和程序进行了编码。因此,计算机的操作可以描述为有效的或递归的数字程序。
如果人的思维可以用递归函数来表示,那么按照丘奇公设,它就可用图林程序来表示,而图林程序可以用图林机计算。因此,人的思维也就可以用通用计算机来加以模拟,在此意义上,对于图林提出的问题也就必定要回答“是”。人的思维是可以编码、可用递归程序来表示的,这一前提当然是可疑的。甚至数学思维的过程也可以远比递归函数更为复杂。按照丘奇的公设,递归性或图林可计算性仅仅是可计算性的一种理论限度。
下面我们希望考虑在这种限度之下和之上的复杂性程度问题。在这种限度之下,有许多涉及到一定限度的实际问题,其限度涉及到如何增加算法的速度。特别是在数学问题中,有一些种类的问题,它们的算法求解本来要比解决其他一些问题困难得多。因此,图林机有不同程度的可计算性,计算机科学中的复杂性理论使之精确化。
问题(或相应的函数)的复杂性分类可以由复杂性程度来标志,这给出了函数的阶,函数描述了依赖于其输入长度的算法(或计算程序)的计算时间(或基本计算步骤的数目)。输入的长度可以用十进制的数目来度量。按照计算机的机器语言,可以方便地将十进制数字编码成仅仅用0和1的二进制码,并用二进制字符来定义其长度。例如,3的二进制码是11,其长度为2。函数f具有线性的计算时间,如果f的计算时间不大于c·n,其中n是输入长度,c是常数。
两个(二进制)数的加法显然只具有线性计算时间,例如,对于3+7=10中应的二进制计算
0 1
1
1
1 1
__________________
1 0
1 1
其中需要5个基本计算步骤把两个二进制数加和(包括运算)。我们提醒读者,加和二进制数字相加的基本步骤是0+0=0,0+1=1,1+1=10,以及运算。可以方便地假定,两个将要相加的数具有同等长度。否则,我们简单地把较短的数加上一系列的零,例如,111和011而不是和11。一般地,如果将要相加的特定的数对的长度为n,则一个数的长度为n/2,因此,我们需要不大于n/2+n/2=n个基本计算步骤,其中包括了运算。
函数f具有二次计算时间,如果对于所有的长度为n的输入和常数c,f的计算时间不大于c·n2。
一个简单的二次计算时间的例子是两(二)数相乘。例如,对于7·3二21,相应的二进制计算:
1
1 1·0 1 1
___________________
0 0 0
1 1 1
1 1 1
——————————
1
0 1 0 1
按照前面的约定,我们有n=6。基本二进制乘法的步数是n/2·n/2=n[2]/4。包括进运算,基本二进制相加的步数是n/2·n/2-n/2=n2/4-n/2。总起来,我们得到n2/4+n2/4-n/2=n2/2-n/2,它小于n2/2。
函数f具有多项式计算时间,如果f的计算时间不大于c·nk,假定它是多项式P(n)的首项。函数f具有指数计算时间,如果f的计算时间不大于c·2P(n)。许多实际的和理论的问题都属于这种P复杂性,所有P类函数都是可以用确定论的图林机在多项式时间中加以计算。
数学史上有一些优美的图论问题可以说明复杂性理论的基本概念。1736年,著名的数学家利昂纳德·欧拉(1707-1783)解决了图论中的第一个问题。在东普鲁士的首都柯尼斯堡,所谓的老普里戈尔河和新普里戈尔河在普里戈尔河连接起来了。在18世纪,河上建造了7座桥,把南面s、北面n、东面e与小岛i联系起来(图5.3)。是否有这样一条路线,即每座桥只走一次而可以返回到最初的起点?
欧拉把问题归结为图论。区域n,s,i,e用图的顶点来代替了,在两个区域之间的桥用相应顶点之间的边来代替(图5.3b)。
在图论的语言中,欧拉的问题就成为,对于每一顶点,是否存在一条线路,它仅仅通过每一条边一次而最终返回到起点(“欧拉环”)。对于任意的图形,欧拉证明:欧拉环存在,当且仅当每一顶点都具有偶数条边(“欧拉条件”)。对于图5.3a,它并不满足这种条件,因此在这里欧拉问题不可能有解。一般地,存在用欧拉条件来检验任意的图的算法,如果它是欧拉环。算法的输入包括所有顶点1,…,n的集合V,所有边的集合E,它是所有顶点对的集合的子集。这种算法的计算时间线性地依赖于图的大小,它由定点数和边数之和来定义。
1859年,数学家威廉姆·哈密顿(1805-1865)引入了一个颇为类似的问题,但比欧拉的问题更复杂。哈密顿考虑的是任意的图,它仅仅意味着有限的顶点的集合,通过边联系起来的一定数目的顶点对。哈密顿问题是:是否有一个通过每一顶点(而不是欧拉问题中的通过每一边)的封闭环(“哈密顿环”)。图5.3c示意了有一个哈密顿环的图,其中按照数字顺序通过每一顶点。
不过,与欧拉问题的情形不同,我们并不知道这样的条件:它精确地表明一个图中是否包含哈密顿环。我们仅仅能够定义一种算法,来检验任意的图是否包含有哈密顿环。该算法检验所有的顶点的排列,以确定它们是否形成了一个哈密顿环。由于n个顶点有n!种不同的排列,该算法找到某个解的步骤不大于c·n!,其中c是常数。容易证明,n!阶相应于n[n]阶。结果是,对于哈密顿问题,一个算法需要指数的计算时间,而欧拉问题的算法求解需要的是线性计算时间。因此,哈密顿问题实际上是计算机无法解决的,甚至对于小的数目n也如此。
大的计算时间的主要原因在于,确定论的计算机只能一步步地对于其中巨大数量的一个个情形进行检验。更方便的是运用非确定论的计算机,它允许在有限的可能数目中随机地选择计算程序,而不是以系列的方式一步步地进行。让我们再一次考虑哈密顿问题。假定一个输人图具有n个顶点u1,…,un。一个非确定论的算法以非确定论的、随机的方式选择了一定的顶点顺序Vi1,…,Vin。然后,该算法进行检验:这种顺序是否形成了一个哈密顿环。问题也就是,对于所有的数字j(j=1,…,n-1),相继的顶点Vij和Vij+1以及起初的开始顶点Vin和Vi1是否是由边联系起来的。这种非确定论算法的计算时间线性地依赖于图的大小。
一般地说,NP意味着这样类型的函数的复杂性,它们用非确定论图林机进行计算时需要多项式时间。哈密顿问题是一个NP问题的例子。另一个NP问题是“旅行推销员问题”,除了种种边都有一定的数目规定以外,它与哈密顿问题非常相似。人们要解决的是:对于这一问题的哈密顿环,找出其数字的和的极小值,或更直觉地说,找出其旅行的距离的极小值。
所有的P问题由定义,都是NP问题。但是,复杂性理论的关键性问题在于是否有P=NP,或换言之,由非确定论计算机以多项式时间解决的问题,是否也可以由确定论计算机以多项式时间来加以解决。
哈密顿问题和旅行推销员问题,是所谓的NP完全问题的例子。这意味着,任何其他的NP问题都能够以多项式时间转化成它。结果是,如果一个NP完全问题实际上被证明是P问题(例如能够构造以多项式时间来解决哈密顿问题的一个确定论算法),那么接着还有是否所有的NP问题实际上都是P问题。否则,如果P≠NP,那么NP完全问题就不可能用确定论算法以多项式时间来解决。
显然,复杂性理论表达了图林机或图林类型机的算法能力的程度。它在科学应用和工业应用中具有实际的后果。但是,它是否意味着人的思维的极限呢?复杂性理论的基本问题(例如N=NP或N≠NP)涉及到算法的速度、计算时间、存贮能力等等的度量。另一个问题是,人们如何开始发现复杂性程度不同的算法。这是计算机科学家的创造性工作,是算法的复杂性理论中不考虑的。
另一方面,哥德尔的著名定理常常被认为限制了计算机和人的思维的数学能力。他的不完全性定理说,对于形式数论的每一协调的公理化扩展,就有一个(封闭的)不确定的表达式。实际上,他的定理陈述了,在整数的真陈述在其逻辑内不可能得到证明的意义上,任何合理的协调的算术逻辑都是不完整的。甚至如果我们用不可确定的表达式来扩展我们的公理化,那么也会有另一表达式在扩展的形式化中是不可确定的。哥德尔的结果表明,在莱布尼茨和希尔伯特传统中对于完整协调的算术逻辑的形式化追求,是注定要失败的。
而且,哥德尔证明,算术逻辑——它可能是不完整的——使用可以在其逻辑内表示的方法来使之协调,也是不可能的。在哥德尔的著名结果提出来若干年以后,金藤(1909-1945)证明了初等数论的协调性,他运用了所谓的EO归纳法,该方法是通常的归纳法对自然数的无限扩展。但是,金藤的扩展的证明法的协调性却还是有疑问的,有待证明。换言之,证明方法的复杂性并不低于被证系统的复杂性。因此,只可能有相对协调的证明,所用证明方法必须得到证明,所用来进行证明的方法又需要得到证明,如此等等。对于人的思维,不存在绝对的可以由形式算法提供的协调性基础。
但是,哥德尔定理对人的思维的限制是有某些基本假设条件的:我们必须把定理的证明作为人的智能的关键。公理仅仅适用于这样的精神模型:它是由其中所有知识都仔细形式化了的机器构成的。而且,哥德尔定理仅仅是对协调机的限制,而模糊性、不协调性和迷惑性都是人的决策的典型特征。如果我们在作出是否要行动的决定之前先要作出长时间的仔细的定理证明,那么我们就不可能有长期的生存。还应该考虑到,图林机具有固定的数据结构,而人的精神则是对新奇经验开放的,并能够从错误中进行学习。因此,哥德尔定理对于机器的限制,就如同对于人的大脑封锁新信息的进入一样。
1936年,丘奇和图林证明了根本没有一种算法能决定一个一阶预测逻辑的表达式是否是同义反复的真理。随之即有,为找到某种数学证明,我们必须具有某些启发性思想。
所以,AI的第一阶段(1957-1962)是受启发性编程问题支配的,这意味着在可能的分支树中自动地寻求人的问题求解,其间借助启发性来控制和评价。一个例子是纽厄尔、肖和西蒙的“逻辑理论家”(1957),它首次对罗素和怀特海的《数学原理》中前面的38条定理提供了证明。他的启发性来自一些人在心理学测验中使用的约略估量法。
1962年,这些模拟程序被推广和扩展到所谓的“一般问题求解者”(GPS),它被假定为人的问题求解的启发性框架。但是GPS只可能解决形式化微观世界中的一些无意义的问题。另一个启发性编程的例子是,在博奕(下棋、将军)中寻求取胜策略。最初的模式识别程序(例如词语和符号的词汇表和句法表)都是以统计方法为基础的。但是从长远的观点看,这些早期的任何程序,都没有证明一般认知模拟程序中的欣快信念。至少,它的形而上学鼓舞了麦卡锡发明编程语言LISP,它是作为一种功能的编程语言引入的,用于处理可怕的符号表,成为今天基于知识的系统的一种最强大的编程语言。
在一般方法失败以后,AI研究者们传播了一种预设的“语法信息处理”程序。AI的第二阶段(1963-1967)以专业程序的发展为特点。这样的专业程序,例如有求解简单代数问题的STUDENT,进行类似物体的模式识别的ANALOGY,等等。麻省理工学院的马尔文·闵斯基是这个时期的头面人物,他放弃了进行心理学模拟的主张:“目前的探索,其特点是聪明地选取问题从而得到复杂智能活动的幻象来进行的预设求解。成功的实用编程方法依赖于专业知识,这个思想首次被加以强调,成为后来基于知识的系统的中心概念。
对于问题求解的一般原理的追求,在理论计算机科学中仍在继续:J.A.罗宾逊引入了所谓的以预测逻辑演算和赫布兰德的完全性定理为基础的求解原理,允许用逻辑反驳程序去发现证明。
在AI中推动实用和专业编程方法,在第三个阶段(1967-1972)得到了加速发展。其标志是构造出专业系统、知识表示方法和对于自然语言的兴趣。发明了在数学应用中取得成功的MACSYMA程序的J.摩西描述了AI中范式的变化:“事实上,1967年是我的精神的转折点,那时候我充分地感受到一般原理的旧思想必须放弃……并抓住了我称作专业技能至上的证据。”
这一时期的另一个著名例子是DENDRAL程序,它运用了质谱学中化学家的专业知识,以发现分子的结构式。这个阶段中的一个范式的例子变成了机器人的SHRDLU程序,机器人可以操纵不同组件组成的小世界。这种系统可以用英语理解和回答关于这个组件世界的问题,执行操作这个组件世界的指令,并把次序划分为一系列操作,理解干了什么并为什么这样干,并用英语描述它的行动。
在第四阶段(1972-1977),知识的描述、组织和处理成为了把工程学和AI哲学结合起来的中心范式。米彻尔·费根鲍姆引入了“知识工程”这一术语,用于所谓专家系统的发展。一个例子是用于医学诊断的MYCIN程序,它模拟了一个具有细菌感染专业医学知识的内科医生。
一种新的知识表示方法是马尔文·闵斯基提出的框架概念。一种用于符号性知识处理的新的编程语言是PROLOG(“逻辑编程”),它可以与LISP相比拟。
AI的第五阶段(1977-1986)被说成是托马斯·库恩的意义上的“常规”阶段,指的是专家系统范式正在运行并实现了商业化。一些工具发展起来,以建设诸如大规模汽车生产使用的新专家系统。AI正在从实验室和哲学家的研究中崛起,正在变成世界性的知识工业的关键性技术。
接下去,我们重点讨论专家系统,因为这里看来具有最令人感兴趣的哲学问题。一个专家系统是一种计算机程序,其中已经装入了知识和能力,使得它可以在专家水平上进行操作(例如化学中的DENDRAL和医学中的MYCIN)。人类专家的推理过程示意在图5.4中。
一些专家系统甚至可以揭示为何它们拒绝一定的推理途径而选择其他的途径。设计者们在努力工作以实现这一点,因为他们知道,专家系统的最终运用取决于它对于使用者的可信度。如果它的行为是透明的、可解释的,那么它的可信度就会增加。
但是,与人不一样,专家系统的知识是限于某种专业信息基础的,而没有关于世界的概括性、结构性知识。因此,专家系统在数字计算机的约定程序和人之间发挥着某种中间功能(图5.5)。
一个专家系统包括如下的组件:知识基础、问题求解组件(推理系统)、解释组件、知识获取组件和对话组件。它们的协调示意在图5.6中。
知识是专家系统运行中的关键性因素。知识具有两种类型:第一种类型是领域事实,它们书写在该领域的教科书和杂志中;对于一个领域的实践同样重要的是第二种知识,叫做启发性知识,是在该领域中的良好实践和进行判断的知识。正是实验性的知识,猜测高超艺术为一位专家经过多年工作所能获得的。
顺便说一下,知识库与数据库不同。例如,一位医生的数据库是关于病人的记录,包括病人历史、重要症状的测量、所开药物和药物反应。这些数据必定要通过医生的医学知识来解释,以进一步进行诊断并制订医治方案。知识库是医生在他的医学教育中和在实习阶段、高级训练阶段、专业训练阶段和医学实践中学会的东西。它包括事实、倾向、信念和启发性知识。
启发性知识是最难获得的,因为专家很少自觉地认识到它是什么。所以,跨学科训练的知识工程必须去获得专家的规则,将其表示为编程语言,并植入工作程序中。这个专家系统的组件叫做知识获取。它在专家系统的知识处理过程中的中心功能示意在图5.7中。
最重要的知识表示方法是产生系统、逻辑、框架和语法网络。除了知识以外,专家系统还需要一种推理程序,一种用以理解和作用于知识和问题数据及其组合的推理方法。这些程序是独立于特定的知识库的,是建立在多种哲学方法论基础上的,为此我们将在后面分析几个专家系统的例子。
专家系统的解释组件的任务是向使用者解释程序的步骤。问题“如何”也就是要对该系统导出的事实或断言进行解释;问题“何时”则是要求,指出一个系统的问题或秩序的前提。
对话组件处理专家系统与使用者的通信。自然语言的处理器当然可以使甚至未受过专门训练的使用者也容易接受。
从技术的观点看,专家系统的局限性是显然的。首先是知识表示问题。所论领域的知识如何表示为计算机记忆装置中的数据结构并为问题求解所接受?其次是知识利用问题。推理器应该如何设计?第三是知识获取问题。获得知识是如何可能的?这对于自动的问题求解是非常重要的,以使得计算机容易将人的专业知识转移到符号数据结构中。
专家系统的最后一个也是最重要的问题是哲学问题。如何将专家系统的专业知识库与关于世界的一般化结构化的知识结合起来?这种一般化结构化的知识会影响人的专家的决策和行动。
因此,当医生作出进行手术的决策时,还将考虑到有关病人的生活条件(家庭、工作等)的非对象性以及他对于生命的态度。特别是,例如在当今有关死亡尊严的争论中,对于生和死这种基本问题;医生的总体态度和见识也是融入到他的决策中的,尽管立法上在寻求建立一般的行为标准,但对此却是难以进行规范的。例如,在法律的专家系统中也表现出同样的问题。法官会置规范系统的自治性于不顾,最终将发现某种可能决策的正式范围,在此他将倾向于他自己关于生命和世界的观点。对于这种主观性影响,不要抱怨缺乏客观性,而是要看作一种作出更为人道的医学和裁决的机会。不过,对此并没有排除,未来的计算机科学应该去进一步地扩展以专家系统为基础知识,这种知识今天还是非常专业化的。当然,根本性的局限也是明显的,是专家系统的本质所导致。
专家系统是问题求解程序的技术实现。因此,实际上存在着的专家系统可以由特定的要解决的问题来进行分类。图5.8示意了专家系统最重要问题的类型。
输入
|
问题类型
|
输出
|
测量数据、症状等
|
→分类或诊断→
|
规则/模式的识别
|
约束
|
→设计→
|
满足性质的对象
|
初始态、目标态
|
→计划→
|
将初始态转变到目标态的行动顺序
|
初始态
|
→模拟→
|
未来的后果状态
|
图5.8专家系统的问题类型
一类已经深入分析过的问题涉及到“诊断”,例如医学中的诊断。这种专家系统的输入由测量的数据、症状等等所构成,它在结果中提供了从数据规则中识别出来的模式。另一类问题涉及到“设计”。此问题是如何发现在相应约束下的产物。计划问题的解答要求某种行动序列,把初始态转变成目标态。模拟问题从模型的初始态出发,必须计算其后续状态并进行评价。
问题求解策略是由产生规则推导出来的,这里必须由所谓的规则解释者进行选取。如果有几种规则是可用的,冲突求解策略将决定哪一条规则是适用的。例如,可能的规则可以用优先性和一般性的程度整理出次序。然后,选取具有最高程度的优先性或专业性的规则就可能是合适的。
在推理中的规则组合可以由所谓前向和后向链接来实现。前向链接从一定的数据和事实A出发,运用此演绎机制直至推导出一定的目标D(图5.9)。
从方法论的观点看,专家系统的前向和后向链接程序,只不过是众所周知的古典逻辑学家和哲学家帕波斯的发现确证的必要性或充足理由的方法。不足为奇的是,几乎所有专家系统的推理策略都是以众所周知的哲学方法论为基础的。
今天,AI中运用的大多数哲学理论都不是直接从哲学文献中获取来的,但是这无损于它们的哲学意义。然而,有一些著名专家系统的作者却是直接受到了哲学家的影响。
要弄明白AI是哲学逻辑和方法论,人们只要仔细考虑一些专家系统。它们的问题分类决定了何种策略适合于问题求解。一般地说,一种策略的目的也就是减少问题的复杂性。
DENDRAL程序所涉及的任务,是从数据中决定出分子的结构,数据中包含着化合物的分子式和化合物的质谱。输出整理成有序的表格,列出各种可能的结构式。其问题求解的策略被称作“产生和检验”,其算法是产生出与给定的分子式一致的有机分子的拓扑结构,以及产生出分子中的化学键最可能从何处断裂的规则。简言之,我们可以说,该程序是采用尽早修剪掉坏的分枝的方法来减少求解生成树的复杂性。方法论上,它涉及某种确证标准。
一般地,如下的要点具有重要性,而不论其化学应用如何:
a)有某个形式对象的集合,其中包含了解答。
b)有某种产生机制,例如某种对于该集合的完整计数过程。
c)有某种检验,例如判断所鉴定出的某种产生出来的元素是否在解答集中。
这种一般方法由如下的算法来定义,例如由如下的遵从丘奇定理的递归函数来定义:
函数GENERATE-AND-TEST(SET):
如果要检验的集合SET为空,
那么失败,
否则让ELEM是SET的“如下”元素;
如果ELEM是目标元素,
那么将其作为解答,否则对于集合SET在没有元素ELEM情况下重复这一函数。
对于翻译成AI编程语言LISP,必须引入一些递归辅助函数,例如GENERATE(产生一定集合的某个元素),GOALP(是判断函数,如果论据是解答集的一部分则提供T(真),否则NIL),SOLUTION(为“输出”准备的解答元素),和REMOVE(提供集合减去给定元素)。当设计一张符号表时,考虑到LISP中通常的缩写,例如
DE(定义)、COND(条件)。EQ(方程)、T(真)以及LISP的约定(例如括号规则),如下的算法在LISP中是可接受的:(DE
GENERATE-AND-TEST(SET)(COND((EQ SET NIL)’FAIL)
(T(LET(ELEM(GENERATE SET))
(COND((GOALP ELEM)(SOLUTION ELEM))
(T(GENERATE-AND-TEST
REMOVE ELEM SET)))))))
对于给定的化学分子式,所有的化学结构都系统地产生出来,例如对于C5H12,第一步是:
一些化学结构被排除了,因为它们是不稳定的或相矛盾的。下一步,计算出相应的质谱并与经验上确定的质谱进行比较。这个比较也就是检验过程。GENERAIE-AND-TEST从而在技术上实现了一种方法论,排除了不可能的假定并检验可能的变体。
META-DENDRAL程序是设计来改进DENDRAL程序的,涉及何种分子键将在质谱仪中被打破。所以META-DEN-DRAL运用了DENDRAL程序再加上确证的预测标准,这被亨佩尔批判地分析过。
帮助医生进行诊断感染的MYCIN程序,是一种后向链接的演绎系统。MYCIN的知识库中,大约有300种血液细菌感染生成方式。下面是一个典型例子:
如果感染的类型是基本的细菌血症,怀疑的入侵点是胃肠道,培养部位是一处无菌部位,那么这就表明此种有机体是拟肠杆菌。
运用这样的知识,MYCIN进行后向运行。对于所有100种诊断假设,MYCIN试图逼近从实验室结果和临床观察获得的基本事实。由于MYCIN工作在推论往往不确定的领域中,它的设计者把看来合情概率推理的理论与基本的产生装置结合起来。该理论用来为与/或(AND/OR)树中每一个结论建立起所谓的确定性因子(图5.10)。
这里,Fi是使用者指定给一事实的确定性因子,Ci表明一结论的确定性因子,Ai是产生规则所预期的可信度。确定性因子在AND节点和OR节点处指向前面的式子进行计算。如果一个确定性因子为0.2或更小,相应事实的真假被看作是未知的,就规定其值为0。
该程序计算出归纳合理性的大小取决于保证事实的多少。这种方式使我们想起鲁道夫·卡纳普的归纳理论。卡纳普自然是不相信培根的普遍归纳结论的。结论总是演绎性的。对此不需要波普尔式忠告,否则专家系统不会运行。然而,像MYCIN系统中所用的概率测量则使得该系统对于使用者更透明。
另一方面,也可以这样说,在此采用了“假说和检验”策略的波普尔纲领,即产生出最有趣的假说并进行严峻检验。有这样的程序,有助于用统计数据构造起线性的因果解释。另一些程序运用昔日哲学家的知识,归纳推理是单调的,即意味着从一组前提归纳地导出的结论,可能并不是前提的协调拓展。例如,鸟会飞,吱吱叫是鸟,于是推论出吱吱叫会飞,但是它不会飞,如果我知道吱吱叫是鸵鸟。
另一种策略是将复杂问题分解成简单部分或复杂性较小的子问题,例如乔治·波利亚的启发性数学手册《如何求解》中就使用了这种策略。因此,应用领域必须允许分解为独立的部分。但是,显然,相关性复杂网络并不总能分解而不改变系统的原先状态。例如,人类环境的生态网络或精神病医生必须要分析的复杂的心灵相关性。系统并非总是其部分之加和。
科学哲学中的一些划界可以翻译为以知识为基础的系统的性质。如果研究使得理论概念得到广泛运用而成为一个理论的固有特性,那么发现过程就可以描述为依赖理论的(理论推动的)。相反的观点,通常叫做培根观点,把大批数据作为其起始点。那么,发现过程就称作数据推动的。在理论的和数据的知识处理之间的划界,在AI中是众所周知的。
现在我将从以知识为基础的系统中勾画出一些程序,这些系统使得各种各样学科的任务得以完成,其优点前面也已经提到了。我的第一个例子涉及到数学。AM是一个以知识为基础的系统,可以说,它从数论中递归地产生出和重新发现了概念。与经验科学中的程序形成鲜明对照的是,AM成功的标准并非是一个概念与经验数据的吻合,“有趣”的方面却是它产生出例子、新问题等等的能力。这种程序是1977年用LISP语言写出的,始于诸如集合、表格、相等和操作这样的基本概念,可以提出引导发现过程的建议。启发过程是在原来的基础上提出新任务并创立新概念。新的任务按照其有趣的程度整理成一定次序。由若干不同启发过程提出的种种任务,比由单个规则提出的任务更为有趣。
运用这种措施来引导它对数学概念空间进行搜索,AM为整数、乘法和质数定义了概念,并发现了关于质数的命题(例如因子唯一分解性定理)。
不过,更深入的分析表明,对发现的历史过程进行模拟的要求是难以满足的。AM的成功完全决定于编程语言LISP的特征。然而,分析显示了与人们研究过程的有趣类似。
如同其名称LISP表明的,符号表是系统地作出的。两个表可以递归地定义为相等的,当两者是原子的且原子是相等的,否则当表头是相等的且表的其余部分是相等的。在LISP中,递归的布尔函数标记如下:
(DE LIST-EQUAL(XY)
(COND((OR(ATOM X)(ATOM Y))
(EQ X Y))
(T(AND
(LIST-EQUAL(CAR X)(CAR Y))
(LIST-EQUAL(CDR X)(CDR Y))))))
这里,CAR和CDR分别是LISP中,对于给定的符号表进行表头和表的其余部分分类的基本操作。AM的一个启发的概括规则推广了等价这一术语。然后,两个表被称作“广义相等的”,如果两者是原子的且原子是相等的,否则表的其余部分是“广义相等的”。在LISP中:
(DEL-E-1(XY)
(COND((OR(ATOM X)(ATOM Y))
(EQ X Y)
(T(L-E-1(CDR X)(CDR Y)))))
由此推广,所有具有相同长度的表都被看作是等价的。它们定义了叫做“数”的一类。儿童面对具体对象时实现的这种发现过程,由AM通过变换规则进行了模拟。加法是两个表的连接。由启发变换规则来形成已产生概念的逆时,发现了质数概念。在AM基础上改进的EURISKO(1983),不仅仅可以发现新的概念,还可以发现新的启发过程。
一系列叫做BACON的程序对定量经验定律的发现进行了分析。BACON系统的名字取自弗朗西斯·培根,因为其中运用了培根关于科学推理性质的思想。它们是数据驱动的知识处理系统,其中包括数据收集,找出在两个或更多个变量之间的规则并对其进行检验。BACON的基本方法并不需要涉及数据的语法意义,它们对于数据进行操作,不对数据的结构作任何特殊的假定。有时,需要人们对于独立项进行实验控制,传统的“一次改变一项”的方法可以用来从相关变量中分开每一独立项的效应。BACON程序可以再产生出物理定律,包括波义耳定律、开普勒第三定律、伽利略定律和欧姆定律。
有关考察表明,这种以知识为基础的系统至少要遵从这样的前提条件:对于不同学科间规律的关联,应该满足同样的方法论和启发框架条件。相应的以知识为基础的系统,不仅仅是再产生一定的定律,这些定律是在不同的历史背景中发现的,而且也对称地产生出完整的方法论概念的范围和挑选出有趣的应用。最新的BACON程序不仅仅是数据推动的,因而是严格的意义上的“培根式的”,而且还是理论推动的。在其对称性和守恒定律的理论前提下,它产生出了例如动量守恒定律。
另一系列程序能够从经验数据中归纳出定性定律(GLAUBER,STAHL,DALTON)。这些程序还可以从一些现象中归纳出结构性和解释性模型。定性定律通常是化学中的定律。
科学家与机器之间的竞争并非是有意的。不过,对于科学定律和理论做出系统的结构性分类已经实现。它可以使人们对科学定律及其发现条件的复杂性进行新的洞察。
对于科学发现的多种多样活动的若干方面,诸如发现定量定律,产生出定性定律,推导出物质的成分和提出结构模型。一种整合的发现系统已经显示出曙光,它把个别系统作为组件结合起来。每一组件都接受其他一个或多个组件的输入。
例如,STAHL集中在确定化学物质的成分上,而DAL-TON则关心反应中涉及到的微粒数目。因此,STAHL可以看作是,为DALTON所论的问题奠定了详细的结构模型基础。以这种方式,有可能发展起越来越复杂的以知识为基础的系统,将研究分解为知识处理和问题求解。
甚至在这样的扩大了的研究框架中,我们仍然没有涉及到实验计划或新测量手段的发明所依赖的机制。任何固有的概念与实施测量的实验安排结合起来,都可以用作一种科学的工具。在此情形下,工具的发现恰好也就与概念自身的发现是重合的。
还有一些以知识为基础的系统,它们考虑了实验的设计以及它们与其他科学研究活动的相互作用。在图5.11中示意了一个叫做KEKADA的系统(由西蒙研究小组发明),其中有假说产生者、实验选取者和预期设定者等等。它已经发展到为生物化学中的实验设计建立模型(克雷布斯1935年发现尿素循环)。如同知识工程师,西蒙和他的小组分析了克雷布斯的实验室记录,定义了他的研究方法论规则,并将其翻译成LISP类型的编程语言。
如果该系统没有确定哪一任务继续进行,问题选取者就将决定该系统将继续进行某一任务。当遇到了新的问题时,假说产生者就造出假说。假说或策略建议者将选取一种策略继续进行下去。然后,实验建议者将提出将要进行的实验。两种类型的启发过程可能都需要决策者。实验者的结果由假说修订者和确证修订者来加以解释。合适时,问题产生者可能把新问题加入进来。如果实验的结果与对于实验的预期相抵触,那么对于这种迷惑人的现象的研究就成为一个任务,并列入议程。
甚至该系统的组件也是一种操作者,它是由产生规则表来定义的。除了专业领域启发过程以外,系统还包含一般的规则,它们是一般研究方法论的部分。引人瞩目的是,特定的规则定义了这样的情形,即实验结果是某种“迷惑人的现象”。科学发现因此就成为了由问题求解启发过程引导的一个渐进过程,而不是由个别的“洞察闪光”或突然飞跃所导致的。这些以知识为基础的系统的例子,在例如程序DENDRAL是化学家的实验室助手的意义上,可以解释为哲学家对科学进行研究的助手。借助它们,可以对某些启发性规则产生的整个可能规律的空间进行调查。但是,它们是精确的助手,而不是主人。它们的“洞察的闪光”,这种由系统识别到的“惊奇之举”,是取决于程序框架的,是由主人设定的。
激发了早期AI研究者的图林问题怎么样呢?“机器能否思维”?机器有“智能”吗?在我看来,这种问题对于计算机技术是一种形而上学的问题,因为“思维”和“智能”都不是清晰定义的计算机科学或AI的概念。
这就是我们今天所能说的一切。如果一个程序产生出一种结构,该结构可以解释为一种新概念,那么所用变换规则就隐含地包含了这种概念和相应的数据结构。引导这些规则应用的算法,使得这种隐含给出的概念和数据结构变得明白起来。在关于AI的哲学讨论中,多数含混都是由AI的术语引起的,它是在技术意义上引入的,但是却结合进了一些往往是陈旧的和精致的哲学和心理学意义。在其他学科中,我们不得不与传统的术语和概念生活在一起,同样,如果将它们从其技术内容中抽象出来,那么它们就可能是高度含混的。“人工智能”(AI)中的“智能”概念就是一个例子。
一个常常迷惑哲学家的术语是AI中“知识”的用法。让我再一次强调,在“以知识为基础的系统”术语中的“知识”具有技术上的意义,并不声称要解释整个哲学的、心理学的或社会学的知识概念。在AI技术中,作为实际的计算机科学的部分,完全没有涉及到哲学还原论。
在所谓的“以知识为基础的系统”中的“知识处理”意味着一种新的复杂信息处理,这要与过去的仅仅是数字的数据处理区别开来。它涉及到翻译和解释的复杂变换规则,其特点是处于编程语言(今天是LISP或PROLOG)层次结构的较高水平上。这种水平接近于自然语言,但是当然不是等同于自然语言,而只是抓住了人类知识的广泛意义的一些方面(图5.12)。然而,知识处理仍然是程序控制的,并处在莱布尼茨的思维机械化的传统中。
如果人的精神被认为一种图林类型的计算机,那么支配着人的身体和大脑的自然规律之间就没有什么关联。计算机软件中的算法程序并不取决于物理机械的硬件,而取决于数学上理想化的图林机概念。但是如果把人的精神理解为自然进化的产物,那么关于人的精神的形成的物理、化学和生物学的规律的关联性就必须加以考察。在现代物理学中,基本的物质理论是量子力学。在经典物理学中,物理系统的相互作用被设想成与人类观察者完全无关的过程,而现在看来人的意识也在测量过程中起着关键性的作用。首先,我将要尽量地批判这些解释,但是采取怀疑式的探究方式。然而,业已表明,量子力学是高效的广义量子计算机和量子复杂性理论的物理学框架,它们与经典的图林机和经典的复杂性理论是不相同的。
显然,图林机可以在经典物理学框架中得到解释(图5.13)。这种计算机是一个物理系统,其动力演化使之从一组输入状态之一进入到一组输出状态之一。状态以某种系列方式加以标记。让机器处于一定输入水平的某个状态,随之进行某种确定性运动,然后再测量其输出状态。对于一个经典确定性系统,所测得的输出标记是输入标记的一个函数f。原则上,该标记值可以由外部观察者进行测量,这就是说该机器计算出了函数f。但是,经典的随机计算机和量子计算机并不计算上述意义上的函数。一台随机计算机的输出状态是随机的,依赖于输入状态的可能输出只是某种几率分布函数。量子计算机的输出状态,尽管完全是由输入状态确定的,但并非可观测的,因此观测者一般很难发现其标记。原因何在?我们必须记住量子力学的一些基本概念,这在2.3节中已经谈论过。
经典的确定论机器:
|
|
|
输入
|
→
|
输出
|
经典可观测量
|
确定论演化
|
经典可观测量
|
经典随机计算机:
|
|
|
输入
|
→
|
输出
|
经典可观测量
|
随机演化
|
经典可观测量
|
量子计算机
|
|
|
输入
|
→
|
输出
|
量子可观测量
|
确定论演化
|
量子可观测量
|
图5.13经典的和非经典的计算机
在量子力学中,如动量或位置这样的矢量,必须用算符来代替,此种算符满足某种依赖于普朗克量子的非对易关系(图2.18)。由哈密顿函数描述的经典系统被量子系统代替,例如,电子或光子用哈密顿算符来描述。量子系统的状态由希尔伯特空间的矢量来描述,由其哈密顿算符的本征矢量来确定空间距离。算符状态的因果动力学是由叫做薛定谔方程的偏微分方程确定的。经典的可观测量是可对易的,而且总是取确定值,而非经典的量子系统的可观测量则不可对易,一般没有共同的本征矢量,结果也就没有确定的本征矢量。对于量子状态的可观测量,可以计算的只是统计的预期值。
与经典力学的一个主要区别在于叠加原理。它揭示了量子力学的线性特征。在一个关联的纯量子叠加态,可观测量只有不定的本征值。简言之,量子力学的叠加或线性原理提供了复合系统相关(“关联”)状态,这得到了EPR实验的高度确证(Alain
Aspect,1981)。从哲学上看,(量子)整体要大于其部分的加和。
叠加原理对于量子系统的测量有重要的后果。在量子形式化中,一个量子系统和一套测量装置由两个希尔伯特空间来表示,它们以张量积组合起来H=H1H2。以H1和H2分别出于两个独立的状态和,在时刻O,测量系统的始态(O),相应有(O)=。两个系统的因果发展是由薛定谔方程确定的,即(t)=U(t)(O),U(t)是归一化算符。由于U(t)的线性,态(t)是与不定本征值关联的,而测量仪器在时刻t显示出一定的测量值,它们显示出不同的测量值。因此,线性的量子动力学不可能解释测量过程。
以更通俗的方式来说明测量过程,可以用薛定谔的一个关于猫的思想实验,其中涉及“死”和“生”两个状态的线性叠加(图5.14a)。设想一只猫,被关在一个封闭箱子中。箱子中装有镭,镭一小时发生一次衰变,其几率为1/2。如果发生了衰变,电路闭合,引起相应机制的动作,使得小锤打破装有氰氢酸的小瓶,从而杀死这只猫。该箱子继续保持封闭一小时。
按照量子力学,猫的两种可能状态——死和生——都是不确定的,直到观测者打开箱子才能得到结论。对于箱子中的猫的状态,如薛定谔解释的,量子力学预见了一种相关(“关联”)的叠加态,即猫的死和活各占一半。按照测量过程,“死”和“活”状态被解释为测量指示器,代表着镭“发生了衰变”或“未发生衰变”状态。
在玻尔、海森伯和其他人的哥本哈根解释中,测量过程被解释为所谓的“波包坍缩”,即把叠加态分裂成测量仪器的两个状态,并测得了量子系统有两个确定的本征值。显然,我们必须把量子系统的线性动力学与测量的非线性动作区别开来。原因在于,世界的非线性常常被解释为人的意识突现。
欧基尼·威格纳(1961)主张,薛定谔方程的线性,对于有意识的观测者可能不适用,应该以某种非线性程序来代替,据此其中的任何一种选择都可以得到解决(图5.14b)。但是,威格纳的解释使我们不得不去相信,复杂的量子线性叠加仅仅在宇宙中出现了人这样的意识的角落,才将被分解为独立的部分。在弹子球、行星和星系的宏观世界中,EPR关联性是测量不到的,它只在基本粒子如光子的微观世界中才显示出来。显得十分奇怪的是,在宏观世界的独立系统状态——它们可以用具有确定测量值的经典力学来描述的,却是由人这样的意识引起的。
埃弗里特的量子力学的“多世界”解释,将人的意识分裂成不同分支,使不同的、互不相容的世界受到抑制(图5.14c),从而仿佛避免了非线性还原的问题。
在测量过程中,测量仪器和量子系统的动力学的描述使用的方程(t)=
ci(t)ii,式中状态(i)涉及测量仪器的测量值。埃弗里特认为,态矢量(t)不分裂成部分状态,但是出现了所有的分支ii状态(t)描述了多重的同时存在的真实世界,ii相应于第i个平行的世界。因此,所测量的分系统决非一个纯态。在埃弗里特的意义上,n可以解释为相对态,它依赖于观察者或测量仪器的状态:
n=Cn-1(n,)H2。如果n被看作记忆状态,那么具有一定记忆的观察者只可能意识到他自己的世界分支n×n。但是,他能够观测其他的分世界。
埃弗里特解释的优点在于,叠加的非线性还原并不需要解释。而缺陷在于他的多世界的本体论信念,这样的世界原则上是不可观察的。因此,埃弗里特的解释(如果数学上协调)需要奥卡姆剃刀。
在科学史上,拟人的或目的论的论据往往表明,科学在此存在着解释的分歧或失败。因此,一些科学家如罗杰尔·彭罗斯提出,量子力学的线性动力学对于解释出现意识的宇宙演化是不能令人信服的(爱因斯坦说它是“不完善的”)。他争辩道,线性量子力学和非线性广义相对论的统一理论,至少在原则上可以解释世界上的独立宏观系统状态,而不必牵涉到拟人的或目的论原理。在彭罗斯主张的统一理论中,物理系统的线性叠加,当系统对于相对论引力效应充分大时,就会分裂成独立状态。彭罗斯计算了在一个引力子水平上,对于这种效应的最小的曲率单位的情况。该思想是,这种水平应该令人满意地落在线性量子力学定律的原子、分子等等的量子水平与日常经验的经典水平之间。彭罗斯论据的优点在于,量子世界的线性与宏观世界的非线性将可能用统一的物理理论来解释,而不必牵涉任何人F的干预。当然,我们仍然缺乏可检验的统一理论(参照2.4节)。
然而,由此引出的问题是,量子力学是否提供了人的大脑进化的框架,或至少为新的计算机技术去取代经典的计算机系统提供了框架。量子力学的基本思想是量子状态的叠加,这种叠加是由某种测量实现的线性量子动力学和叠加归并的结果。因此,一个量子计算机世界需要一种逻辑门的量子版本,在此输出将是某种统一算符应用于测量的输入和最终作用的结果。量子系统(例如光子)的叠加提醒我们计算的平行性。如果我们感兴趣的是对于许多计算结果的某种适当组合,而不是其部分的细节,量子计算机将变得非常有用。在此意义上,量子计算机可以在相对短的时间内实现可能的数量巨大的平行计算的叠加,从而克服经典计算系统的效率问题。但是,量子计算机仍将按照某种算法方式运行,因为它们的线性动力学是确定论的。测量的非线性将带来非确定论方面。因此,我们不可能期待,量子计算机将以超出图林机能力而以非算法算符方式运行。所以,量子计算机(如果它们构造出来了)对于复杂性理论和克服实际的计算约束可能更有趣。
关于人的大脑,我们想要争辩的是,量子水平上的基本粒子、原子和分子对于其进化是必要的,而不是需要其他的东西——物理学相关态的归并所必要的大脑精神状态。实际上,相当多的神经元对于单个量子及其叠加和牵连状态的归并并不敏感。但是,这些量子状态当然不可能被大脑的精神状态所察觉。我们既不能意识到叠加,也不能意识到它们由非线性的随机事件引起的分裂成单个状态。然而,在大脑的精神状态的形成和相互作用中涉及到量子效应,它们还远未被满意地理解。
5.3神经计算机和协同计算机
在逻辑、经典力学和量子力学之后,我们还要考察复杂动力学系统对于计算机科学和人工智能发展的关系。显然,图林类型机的算法机制面临着严重的障碍是不可能随经典或量子计算机能力的增长而克服的。例如,模式识别和其他的关于人的感知的复杂任务,不可能由程序控制的计算机来把握。人脑的结构看来是完全不同的。
在科学史上,大脑是用最先进的机器技术模型来说明的。因此,在机械化时代,大脑的功能被看作是沿着神经对于肌肉进行作的液压。随着电子技术的出现,大脑被拿来与电报或电话交换机进行比较。由于计算机的发展,大脑也就被当作最先进的计算机。在上一章中,我们见到,甚至量子计算机(如果它们被构造出来)也不可能使它们的能力增加到超出图林类型算法的复杂性。
与程序控制的系列计算机不同,人的大脑和精神的特征包括矛盾性、不完全性、顽健性和抗噪声、混沌态、对于初始条件的敏感性最后但并非最不重要的是还有学习过程。这些特征在复杂系统探究方式中是众所周知的。关于图林类型和复杂系统的构造,一个根本的局限性来自经典系统的顺序的、集中的控制,而复杂动力系统是内在平行的和自组织的。
然而,历史上,最初的神经网络计算机的设计仍然受到了图林机概念的影响。在麦卡洛克和皮茨的著名文章《神经活动中思想内在性的逻辑演算》(1943)中,作者提出了一种被神经元作为阈值逻辑单元的复杂模型,单元中有激发和抑制突触,这里就运用了罗素、希尔伯特、卡纳普及其他人的数理逻辑概念以及图林机概念。一个麦卡洛克-皮茨神经元在时刻n+1发放一个沿其轴突的脉冲y,如果在时刻n它的输入x1,…,xm和权重WI,…,Wm的权重和超过了神经元的阈值O(图5.15a)。
麦卡洛克-皮茨神经元的特殊应用是如下的逻辑关联模型:或门(图5.15b)模拟了句子x1和x2的逻辑析取x1ORx2(形式上是x1Ⅴx2),它为假,仅当x1和x2是假句子,否则它是真的。真值是二元表示0(代表假)和1(代表真)。对于阈值Θ=1和权重W1=1和W2=1,或门以x1w1-x2w2≥Θ的方式发放,只要x1或x2或者x1和x2都是1。
与门(图5.15c)模拟了x1ANDx2的逻辑合取x1并x2(形式上是x1x2),它为真,仅当x1和x2是真句子,否则它是假的。对于阈值Θ=2和权重w1=1和w2=1,与门以x1w1+x2w2≥Θ的方式发放,仅仅当x1和x2都是1。
非门(图5.15d)模拟逻辑否定NOTx1(形式上是x1),它为真,仅当x1是假的,否则它是假的。对于阈值Θ=0和权重w1=-1,非门以x1w1≥Θ的方式发放,仅当x1为0。因此如果x1是1,那么非门并不发放,这意味着输出y=x1=0
一个麦卡洛克-皮茨神经网络是一个麦卡洛克-皮茨神经元系统:把每一神经元的输出分解成为线路而相互关联起来,其中一些输出还与其他神经元的输入相关联(图5.16)。尽管这种系统概念非常简单,但是任何“经典的”冯·诺意曼计算机都可以用这种神经元网络进行模拟。1954年,约翰·冯·诺意曼写了一篇报告稿。它以首次明确阐述存贮程序的思想而闻名,存贮程序与其要操作的数据都可驻留在计算机的记忆装置中。该历史文献表明,冯·诺意曼完全意识到用麦卡洛克-皮茨网络进行计算的可能性。
数学上,一台冯·诺意曼计算机可以设想为一台有限自动机,包括有限输入集X、有限输出集Y和状态的有限集Q。有限自动机的动力学用下一状态的函数&来定义,将时刻t的状态q和输入X变换为时刻t+1的状态&(q,X),以及将输出函数B与状态q关联成为输出B(q)。
一台冯·诺意曼计算机的组件,诸如输入-输出单元、存贮器、逻辑控制单元和算法单元,都容易表明是有限自动机。甚至一台现代的数值计算机,它是由数千元素集成在芯片上的网络,也可以理解为麦卡洛克-皮茨类型的神经网络。一般地说,每一寄存机、图林机或递归函数,都可以用适当的有限自动机网络来模拟。但是这些麦卡洛克-皮茨神经网络的应用仍然是在程序控制系列计算机的框架中工作。
最先试图将图林的通用计算机概念扩展到自繁殖自动机思想又是约翰冯诺意曼。他注意到,一台建造其他机器的机器,会降低被建造机的复杂性,因为它使用的材料不可能多于由建造机所给定的材料。与这种传统的机械观点相反,生物进化中的活的有机体看来至少是可以与其父代一样复杂,而在长期进化中会增加其复杂性(赫伯特·斯宾塞)。
冯·诺意曼的细胞自动机概念,把活的有机体设想为细胞的自繁殖网络从而首次提出了为其建立数学模型的线索。态空间是均一点阵,它被划分为相同的元胞如同棋盘。一台初等的元胞自动机是一个元胞,它可以具有不同的状态,例如可以有“占态”(用一个记号)、“空态”或“色态”。初等自动机的集合体,被叫做一台复合自动机或构型。每一自动机都以其环境即相邻元胞为标志。自动机的动力学是由同步变换规则确定的。冯·诺意曼证明,活系统的典型特征,它们的繁殖自身的趋势,都可以用(平面上的)200000个元胞的自动机来模拟,在此每一元胞有29种可能的状态,4个相邻角上的元胞则作为环境。
这种思想由约翰·康韦发展了,他的元胞自动机可以模拟活系统群体的生长、变化和死亡。下面是一个简单的例子,其中元胞有两种可能的状态“占态”(记号)或“空态”,使用同步规则:
1)生存规则:一个有2至3个占态相邻元胞的占态元胞保持不变化。
2)死亡规则:一个元胞丢失了它的记号,如果它有3个以上的邻居元胞(“群体过密”)或少于两个邻居(“孤立”)。
3)新生规则:如果一个空的元胞正好具有3个占态的相邻元胞,那么它就获得一个记号。
图5.17a示意了一种构型在第三代的“死亡”,图5.17b示意在第二代的“生存”。康韦的理论还有一些更令人吃惊的结果,它们是通过计算机实验发现的。
元胞自动机不仅仅是优美的计算机游戏。它们还是描述了其动力学演化的非线性偏微分方程复杂系统的离散化和量子化模型。让我们再想像一块类似棋盘的元胞的平面。一条有限的元胞串,构成了一台1维元胞机自动机,其中每一个元胞都可以取两种状态之一(“黑”(0)或“白”(1)),它仅仅与其两个最近相邻发生关联,在此它们交换关于其状态的信息。1维元胞自动机的紧随的(下一个)状态是空时平面紧随的元胞串,其中每一都由取得一种或两种状态的元胞构成,依赖于它们先前的(上一个)状态和它们的两个最近相邻。图5.18b-e表示4个元胞自动机在60步中的时间演化。因此,1维元胞自动机的动力学是由3个变量的布尔函数确定的,其中的每一个变量都可以取值0或1。
对于3个变量和两个值,3个近邻有2[3]=8种可能性。在图5.18a中,它们是按照相应的3个数字的二进制数排序的。对于3个近邻中的每一个,必定有一个规则确定中间元胞的随后状态。对于8个数字的序列和两种可能状态,有2[8]=256种可能的组合。这些可能的组合之一,确定了一个1维元胞自动机的动力学,这示意在图5.18a中。
每一规则,由8个数字的二进制数的状态来标志,这些状态是每一随后的元胞串可以采取的。这些二进制数可以按照它们的相应的十进制数来排序。
这些规则的时间演化标志了1维元胞自动机的动力学,从随机的初始条件出发产生出非常不同的元胞模式。计算机实验给出了演化的元胞模式所要采取的如下的吸引子类型。经过一些步骤以后,类型1的系统到达了与起始条件无关的平衡均匀态。这种平衡终态示意为完全的白平面,并相应于某种作为吸引子的不动点(图5.18b)。
类型2的系统,经过一些步骤后,表现出恒定的或周期的演化模式,它是相对独立于其起始条件的。模式的特定位置可能依赖于起始条件,但不是总体模式结构都取决于起始条件。
类型3的系统向混沌态作为终态吸引子演化,而没有任何的总体周期性。这些混沌模式敏感地取决于起始条件,并表现出具有分数维数的自相似行为(图5.18d)。类型4的系统产生高度复杂的结构,具有局域传播形式(图5.18e)。类型3和4的系统对于微小的涨落是敏感的,微小的涨落可以影响秩序的总体变化(“蝴蝶效应”)。因此,在这些情形中,演化过程不可能作出长期预测。
显然,这4种类型的元胞自动机模拟了自组织过程中大家熟悉的非线性复杂系统的吸引子行为。在前面的章节中,我们已经看见了许多物质、生命和精神-大脑进化的例子。在第6章中,我们将要考虑许多与人类社会进化的类似性。一般地,自组织被理解为复杂系统中的相变。宏观模式从微观元素的复杂非线性相互作用中出现。相变的不同终态相应于数学上不同的吸引子。
在图2.27a-e中,已经对于流体的不同吸引子进行了考察,流速是逐步加速的。这些流体模式,与相应的元胞自动机的演化模式有许多相似之处。在最初的水平上,流体到达了均匀的平衡态(“不动点”)。在较高速度时,可以观察到两个或多个顶点的分叉,相应于周期的和准周期的吸引子。最后,有序衰退为确定论混沌,它是复杂系统的分形吸引子。元胞自动机的类型3和类型4对于建立过程模型极为有趣。类型3提供了混沌系统的演化模式。类型4表现了耗散系统的演化模式,这样的系统有时具有拟有机形式,它们可以在有机体和群体的进化中观察到。
从方法论的观点看,一个一维的元胞自动机提供了一种离散的量子化相图模型,描述了依赖于一个空间变量的具有非线性偏微分演化方程的复杂系统的动力学行为。人们局限在离散模型的原因是多方面的。非线性系统的复杂性往往太大了,难以在合理的时间内计算出近似数值。在这种情形下,一个离散的模型对于系统的长期的总体动力学行为,可以提供大致的,但是充分的信息。如果进化规则的相关性被扩大到元胞串中的两个邻居以上,动力学行为就不同了。
二维的元胞自动机,在康韦的生命游戏中已经使用了,可以被解释为采取非线性演化的复杂系统的离散模型,依赖于两个空间变量。显然,当非线性系统的复杂性增加,以及由求解微分方程或甚至由计算数值近似来确定其行为变得越来越无望时,元胞自动机是非常灵活有效的建模工具。
从历史角度看,元胞自动机的现代发展可追溯到冯·诺意曼早期的自繁殖自动机思想。除了自繁殖以外,与传统的计算机相比较,还有另一个特征对于自然复杂系统是根本性的。人的大脑具有学习的可能性,例如,通过感知进行学习。在麦卡洛克-皮茨网络提供的大脑的一级逻辑模型中,人工神经元的功能对于所有时间都是不变的。麦卡洛克-皮茨成功地揭示出,这种类型的形式神经元网络可以计算任何有限的逻辑表示。
但是,为了使神经计算机能够执行复杂的任务,有必要去发现自组织机制,使神经网络能够进行学习。唐纳德·霍布1949年提出的第一个神经生理学习现则,在神经计算机的发展中具有重要意义。神经元突触的敏感性并非一成不变,而是在改变着自身,以有利于重复出过去已经反复出现过的发放模式。
1958年,罗森布洛特设计了第一台学习神经计算机,它以名字“感知机”而闻名。罗森布洛特原先是一位生理学家,专注于人的学习过程的生理学活动。他设计的学习机具有复杂的适应性行为,工程师和物理学家都很感兴趣。因此,用不着惊奇,生理学家的新颖思想被工程师抓住了,那些工程师对机器人和计算机技术,比对于模拟人脑中的过程,具有更大的兴趣。从技术的观点来看,神经计算机的学习程序是否与心-脑系统的学习过程类似不是根本性的。它们必须在管理复杂的适应行为时是有效的,但是可以利用完全不同于已知的生物进化中的方法。
罗森布洛特的神经计算机是一种馈向网络,采用二进制阈值单元,有3个层次。第一层是感知面,叫做“视网膜”,它由刺激细胞构成(S单元)。S单元与中间层相联接,其间的权重固定,在学习中不发生变化。中间层的元素叫做联想细胞(A单元)。每一A单元都有某些S单元的固定权重的输入。换言之,一些S单元将其输出投射到一个A单元上。一个S单元还可以将其输出投射到几个A单元上。中间层是完全与输出层相联接的,输出层的元素叫做反应细胞(R单元)。中间层与输出层之间的权重是变量,因此是能够学习的。
感知机被看作神经计算机,它可以将感知模式分成可能的若干组。在两组的情况下,每一R单元学习以激活和去活方式去区别输入模式。感知机的学习程序是受指导的。因此,必须清楚地认识与所要学习的模式相应的所希望的每一R单元的状态(激活或未被激活)。要学习的模式提供给了该网络,在中间层和输出层之间的权重按照学习规则进行适应。重复此程序,直至所有的模式产生出正确的输出。
学习程序是一种简单的算法:对输出层的每一元素i,实际上输出o,它是由一定模式产生出来的,与所希望的输出d;相比较。如果oi=di,那么该模式就已正确地分类。如果所希望的输出di等于1以及实际上的输出oi等于0,那么在时刻t的所有的权重wij(t)以及激活单元(oj>0)在随后的步骤t+1树放大,或形式上有wij(t+1)=Wij(t)+σoj。常数u是学习速率,它可以按照其大小增加或减少学习的速度。如果所希望的输出等于0,实际上输出等于1,那么所有具有激活元素的权重都会消失,或形式上有wij(t+1)=wij(t)-σoj。
感知机看来是以无所不能的神经网络开创了一个计算机技术的新时代。感知机小组在早期的文章中进行了如此的夸张。但是,1969年,尖锐的批评使得这种热情消失了。那一年,马尔文·闵斯基和西摩·帕佩特出版了一本著名的书《感知机》,书中以数学精确性讨论了感知机的局限性。对于这一分析的反应是,大多数研究小组都放弃了它们对于神经网络和复杂系统探究方式的兴趣,而转向经典的AI和计算机技术,看来这比感知机迷的“猜测”要更有益。
但是1969年以后的这种科学共同体的态度,当然是又一次反应过度了。无批判的热情和无批判的谴责,对于科学的进化都是不合适的做法。达尔文进化用了成千上万年,才使得我们的大脑具有了模式识别的能力。如果我们的工程师只用几年就成功地构造出来类似的神经计算机,那就是奇迹了。
关键是随后的一些问题。感知机能够干什么?不能干什么?感知机为何不能干?回答这些问题的一个基本步骤是闵斯基和帕佩特证明的所谓感知机收敛定理。它保证了原则上可用此种网络学习并可在有限的学习步骤中发现解。在这种意义上,系统收敛到一个解已经得到了证明。
但是由此引出的问题是,特定的解是否原则上可以用感知机进行学习。一般地说,我们必须确定适用于感知机的问题类型。一些简单的例子表明,感知机并非如最初热情中所相信的那样是通用的。例如,一台感知机是不可能区别偶数和奇数的。一个特例是所谓的奇偶性问题对于初等逻辑的如下应用。
感知机不能学习排除OR(缩写为XOR)。这种无法解决的认知任务是感知机应用于AI的一个严重局限。此原因容易说明。排除OR对于xXORy,仅当或x或y为真时为真,并非x和y都为真。一条OR语句的xORy,仅当x和y都为假时为假,否则为真。如下的表提供了布尔函数OR和XOR的值:
现在,设想一个网络,有两个输入单元x和y,以及一个输出单元z,它们可以采取状态1(激活)和0(末激活)。要模拟XOR,对于一个偶的输入(两个输入单元都是激活的或都是末激活的),输出应该为0,而对于一个奇的输入(一个单元是激活的,另一个是末激活的),输出应该为1。在图5.19a,b中OR和XOR的可能输入构型示意在一个坐标系中,其中输人x和y作为坐标。
坐标x和y的每一对(x,y)具有相应的值z,它是用白点(0)或黑点(1)来标记的。一个线性的阈值元素Θ计算加权输入x和y,权重是w1和w2,形式上即是Θ=w1x+w2y。一个简单的求导提供了一条直线,示意在图5.19a,b中。直线的位置是由权重w1和w2确定的。它将阈值元素的激活和末激活的状态隔离开来。
为了求解(“学习”)OR问题或XOR问题,权重w1和w2必须以这样的方式加以调整,使点(x,y)以及值z=1与具有0值的点隔离开。这种线性的隔离对于OR问题从几何上是可能的,但是对于XOR问题是不可能的。一般地说,感知机对于输入模式的分类,局限在线性隔离模式的范围。
这种结果能够容易地被推广到两个以上输入单元和真值。许多问题在线性不可隔离的意义上,类似于XOR。实际上大多数有趣的计算问题都具有这种特征。XOR问题可以由加上一个隐含单元到具有两个输入与输出相关联的网络中来解决。隐含的元素是与输入和输出都关联的(图5.19c)。
当两个输入都是0时,具有正值的隐含中间单元就关闭了。一个0信号到达输出,以及由于在这种情况下阈值为正,所以输出为零。如果两个输入中只有一个为1,隐含单元保持关闭,输出单元由输入和输出之间的直接关联而接通。最后,当两个输入都是1,隐含的单元发放到1,并以负的权重-2抑制了输出的接通。
因此,隐含单元允许某种适当的内部表示。XOR问题已经成为一个在三维坐标体系中用二维平面进行线性分隔的问题,3维坐标系以输出单元的3个输入为坐标。分割是可能的,因为输入(1,1),现在z平面上移动到了点(1,1,1)(图5.19d)。
一台感知机只有一个中间层,它是可以学习的处理元素。对于多层网络,问题是,对于与外界没有关联的多层神经元,产生的错误是不可能直接察觉的。一个错误可以是直接在输出层和其下的中间层之间产生的。
多层神经网络可能具有的表示能力和问题求解能力,取决于学习层的数目和在这些层中的单元数目。因此,对于神经计算机的一个至关重要的问题就是要研究计算的复杂性,因为神经网络的复杂性的增加是从感知机的局限性中走出来的方式。
在4.2节中,我们已经讨论了在多层神经网络中的后向传播(图4.17)。一个后向传播的学习算法使得我们去定义甚至处于隐含层上的一个错误的信号。输出层上的错误是递归地向后传播给下面的层次的。该算法是能够构造具有许多隐含层的网络的,其神经元能够进行学习。比起单层网络来,多层网络在其隐含的层次中可以表示多得多的信息,所以后向传播网络对于克服感知机的弱点是非常有用的模型。
但是,后向传播仅仅从技术上提供了成功的模型,这些模型一般并不与生物进化相类似。它们的权重调整看来很不同于人们所知道的生物突触的行为。计算机技术的目的并不在于模拟大脑,而是在合理的时间内实现的问题有效求解。另一方面,我们必须要放弃孩童式的幻想,认为自然是类似上帝的工程师,进化中他总是在发现最好的解。正如我们在前面的章节已经强调的,自然中没有集中化的控制和编程单元。常常只有局部的解。它们一般并非是“最优”的。
1988年,戈尔曼和西杰诺夫斯基设计了一种馈向网络,并用误差后向传播方法对其进行训练,试图将其用于区别岩石与矿石的声纳系统。要区别出岩石与矿石的回声是相当困难的,甚至用受过训练的人耳也难以胜任,而这对于海底的工程是相当重要的,海底工程需要能区别爆炸矿石和岩石的声纳系统。用于这种目的的网络构造中,输入层有60个单元,隐含层有1-24个单元以及两个输出单元,每一个代表将要进行区别的原型“矿石”或“岩石”(图5.20)。
最初,一定的声纳回声是用频率分析器来处理的,它分解成60个不同的频率带。每一复盖间隔的值域在0和1之间。这些60个值是一个输入矢量的组分,输入矢量给予相应的输入单元。它们由隐含的单元进行变换,导致了两个输出单元之一的激活,这里的值也在0和1之间。因此在一个经过训练的很好调节了权重的网络中,一种矿石的回声导致输出信号(1,0),而岩石的回声则具有输出信号(0,1)。
为了训练此网络,我们必须向它输入矿石和岩石回声的样品。在每一种情况下,输出单元的实际值,都按照相应的输入,进行了测量并与预期值进行比较。其差异是错误信号,引发单元中的权重发生小的变化。用这种梯度下降的程序,网络的权重就缓慢地进行了调整。
戈尔曼和西杰诺夫斯基的矿石-岩石网络是复杂系统对于AI的一种应用。当然,它并没有声称,此系统在模拟人的大脑来区分像“矿石”和“岩石”这样两个概念。但是,我们可以说,这种技术系统也具有某种内部表示,即表示了作为其隐含层中原型矢量的两个概念。在这种限制的意义上,人工系统是有“智能”的,因为它可以完成在人脑情况下用智能来进行评价的任务。人工网络并不局限于对概念进行二元区分。1986年,西杰诺夫斯基和罗森伯格设计了一种叫做NETalk的网络,它已经学会了如何阅读。它采取从英语教科书中形成的字符串,并将它们转化成音素串以输入到语音合成器中。惊人的事实并不是它像小孩似的口吃的声音,在通俗书中它已经被赞为辉煌的成功。NETalk的基本能力是对于若干拼音概念的内部表示。对于字母表中的每一字母,至少有一个音素指定给它。对于许多字母,其中有若干音素需要标记,这取决于词汇的上下文。
西杰诺夫斯基和罗森伯格运用了3层馈向网络。它有一个输入层,一个中间隐含层和一个输出层。尽管后向传播与生物学大脑中“自然地”实现颇为不同,但与其他的解相比,它都表现为最快的学习程序。输入层注视课文的七字符窗口,例如,图5.21a中的短语“The-phone-is-”中的词“phone”。每一个七字符都被29个神经元相继地进行了分析,每一神经元代表了字母表中的一个字母,也包括括号和标点。因此,正好是每一具有29个元素的神经子系统的一个神经元被激活。
输出层包括26个神经元,每一个神经元表示一个拼音组分。对于拼音的位置有6个组分,对于发音有8个组分,对于音高有3个组分,对于标点法有4个组分,对于重读和音节划分有5个组分。于是,从这4组组分中,每一声音都有4种特征。输出层有7×29=203个神经元,与80个隐含层内部神经元联结起来,它又是与输出层的26个神经元相互联结的(图5.21b)。在这些层中的神经元是不联结的。输入和输出层的神经元也是不直接联结的。
隐含层的神经元接收来自203个输入神经元的信号,但是只把26个信号送给输出层。由于内部神经元是阈值单元,具有阈值T1,…,T8,输出是乘以特定权重的,这些积的和的大小决定了此神经元是否激活(图5.21c)。现实中,激活的发生是按照一个连续的“sigmoid曲线”,并非某种数字跃迁。
最初,权重是随机固定的。因此,NETalk始于无意义的结结巴巴的发音。在学习阶段,NETalk运用了特殊的供小孩阅读的课文,其发单是人人皆知的。随机的声音与所希望的声音进行比较,权重由后向传播进行校正。令人瞩目的是,这种程序是一种自组织,而不是一种基于规则的发育程序。对于由实际输出来近似所希望的输出造成的权重改变,仅仅存在一种总体上的要求。对这种课文运行10遍以后,网络已经能够有理解地进行发音。经过50遍以后,就只有5%的错误了。在这一阶段,对于未知的供小孩阅读的课文的发音,错误也只有22%。
今天,像NETalk这样的网络还必须用传统的冯·诺意曼计算机来模拟,因为还没有直接的复杂网络的硬件。因此,每一神经元必须顺序进行计算。甚至在今天,自组织复杂网络的原理还主要是在软件上实现的,而不是在硬件上实现的。然而,我们将谈论“神经计算机”,因为硬件的实现只是一个未来的技术发展问题,有赖于诸如固体材料或光学程序这样的新技术,而不是原则性的理论局限问题。
由神经网络进行的映射,看来是颇为成功的,用于财政、保险和股票交易预见中是有益的。原因在于,对于股票行情的短期预测以混沌时间系列为基础,如果预测的时间周期减少,那么它就变得越来越混沌。
通常的统计程序仅仅在长期预测中才是成功的,它假定了股票的发展可以平稳进行,而又不丢失有关信息。好的统计程序的精确性在60%-75%之间。但是,短期的预测则是颇为有限的。传统的统计程序为了平稳股市的发展,必须要忽略短期预测的基本特性,即经常发生着的小的交换涨落。通常的统计程序中,相关计算因子必须明确给出。一个经过良好训练并适当设计的神经网络能够识别出关联因子,而毋需明确的编程。它能够以自组织的程序权衡输入数据并减少预测的错误。而且,它可以采取改变系统环境的条件,而不像计算机程序必须由编程者明确改变。为了设计一个用于股票预测的神经网络,必须对股市数据进行二进制编码使之作为输入数据。输入矢量的构成中,包括若干分矢量,它们代表着交换量,从昨天来的绝对变化,变化方向,从前天来的变化方向,以及与昨天相比的大于1%的相关量。如果输入矢量具有固定的长度,例如40个单元,那么分矢量的长度可以有些不同,依赖于它们所希望的相关。该系统可以有两个输出单元。左边单元的激活标志了股票值的减少,而右边单元的激活则标志了增加。
在学习阶段,网络中输入的是一定时期实际上的每天的交换率,例如从1989年2月9日至1989年4月18日。以这种学习数据为基础,该网络对于后面19天的发展进行预测。预测结果与实际上的曲线进行比较,以测量该系统的精确性。已经用后向传播方法对于几个多层结构进行了考察。它们以自组织方式发展起来对于预测特定的总体启发性。例如,如果一次预测接近该日期以后某天的实际值,那么错误就是相对小的。这种拇指规则的启发方式,在于这一事实:行情趋势的变化比起它保持不变来是更为不可能的。图5.22a,b示意了,预测曲线(+)和对于银行(Commerzbank)、公司(Mercedes)的实际股票行情曲线(-)。
显然,后向传播的馈向网络在技术上非常有趣,尽管它们看来与生物大脑中的信息处理没有多少相似性。在4.2节中,我们已经分析了具有反馈(图4.8b)和霍布类型学习(图4.9a)的霍普菲尔德系统,它显得也是生物大脑的工作方式。在均匀的布尔神经元网络的情形,神经元的两种状态可以与处于外磁场中的电子自旋的两个可能值联系起来。一个霍普菲尔德模型是一个动力学系统,与金属退火过程类比,将它看作是一种能量函数。由于它是非增的单调函数,系统进入局部能量极小值,相应于局部的稳定稳恒态(不动吸引子)。
因此,霍普菲尔德系统的动力学演化可以相应于精神认识。例如,一个代表字母“A”的始态噪声图像向代表正确图像的终态演化,它用若干个例子来对系统进行了训练(图4.9b)。物理解释使用了平衡热力学的相变。正确的模式与不动点或平衡终态相联系。一个更灵活的推广是波耳兹曼机,它具有非确定论处理器元的随机网络构造,以及分布的知识表示,数学上相应于一个能量函数(图4.11b)。
关于弛豫的一般思想是,一个网络收敛到以局域相互作用为基础的或多或少总体平衡状态。通过反复地修订局部的联接(例如在霍普菲尔德系统通过霍布学习策略),网络作为一个整体终于弛豫地进入了稳定的、优化的状态。我们可以说,局域相互作用导致了协同寻求,它不是受指导的,而是自组织的。一些网络对于精神类型的活动运用了协同寻求策略,例如,对于寻找可能的假设。设想竞争假说的一定范围由神经单元来表示,它们可以激活或抑制自己。于是该系统就离开了不太可能的假设,而奔向更可能的假设。
1986年,麦卡洛克和拉梅尔哈德把这种认知解释运用于模拟两可图的识别。两可图是在格式塔心理学中为人们所熟知的问题。图5.23a示意了一个协同寻求的网络,模拟识别尼克尔立方体两种可能的取向之一。每一单元就是一种涉及尼克尔立方体的一个顶点的假设。缩写是B(黑)、F(前)、L(左)、R(右)。U(上)、L(下)。假设网络由两个联接的子网络构成,每一子网络相应于两种可能解释之一。
不相容假设是负的联接,一致性假设是正的联接。权重的分配使得2个负的输入与3个正的输入格均衡。每一单元都具有3个正的相邻联接和2个竞争的负的联接。每一单元都接受来自激发的一个正的输入。要寻求的假设子网络是最适合于输入的网络。微小的涨落(观察者特定视野的某个小的细节)可以决定哪一种长期的取向被观察到。
为使网络的动力学形象地表示出来,假定所有的单元都是关闭的。然后,一个单元接收了一个随机的正值输入。网络将向一个子网络的所有单元都被激活而所有其他网络的单元都被关闭的状态变化。在认知解释中,我们可以说,此系统已经弛豫地进入了尼克尔立方体两可图左面和右面的两种解释之一。
图5.23b示意了3种不同的演化模式,它们敏感地依赖于不同的起初条件。环路的大小表明每一单元的激活程度。在第3种变化中,达到的是一种决非处在平衡态中的未确定的终态。显然,这种网络的构造原理是协同计算、分布表示和弛豫程序,这是人们在复杂系统动力学中所熟知的。
过去已经提出来许多人工神经网络的设计。它们是受到不同的原理如物理学、化学、生物学、生理学的启发,有时只是出于技术的目的。复杂系统探究方式的共同原理是什么?在前面的章节中,协同学引进了作为处理非线性作用复杂系统的跨学科方法论。对于推动从许多科学学科中确立的共同原理来建立特殊复杂系统的模型,协同学看来是一种成功的自上而下的策略。其主要思想是:复杂系统整体状态的形成可以解释为,处于远离热平衡的学习策略中系统元素的(宏观的)相互作用的演化。整体的有序状态解释为相变的吸引子(不动点、周期、准周期或混沌)。
例如,模式识别被解释为类似于应用在物理学、化学和生物学中的演化方程的相变。我们获得了一种跨学科的研究纲领,它使我们把神经计算的自组织解释为由共同原理支配的物理的、化学的和神经生物学的演化的自然结果。正如在模式形成的情形下,一种特定的识别模式(一张原型的脸)用序参量描述为一组所属特征的集合。
一旦其中属于该序参量的部分特征给定了(例如一张脸的一部分),序参量将完成所有的其他特征,所以整个系统是作为联想记忆发生作用的(例如给出脸的一部分使脸面根据贮存的原型脸重建出来)。按照哈肯的役使原理,识别出来的模式的特征相应于模式生成期间受役使的子系统(图5.24)。
如果将作为原型学习的一小部分脸部提供给一台协同计算机,那么它就能够用编码了的姓名来完成整张脸(图5.24b)。不同程度的模糊图像序列相应于协同计算机中状态的相变。
当一个不完整的模式提供给神经元,在不同神经元状态——每一状态都相应于一个特定的原型模式——之间的竞争就开始了。这种竞争中取胜的是相应于原型模式的神经元系统的整体状态,它对所提供检验的模式有最大的相似性。与对于模式形成有效的动力学完全相似,当一个检验的模式提供给协同计算机时,它将把检验的模式从起始状态(t=0)拉向一个特定的终态,相应于原型模式之一。
检验模式的演化,可以用势场中具有一定位置矢量的粒子的阻尼运动来说明。图5.24c示意了一个这种二维势场的例子。这两个原型相应于两个低谷。如果提供了一个模式,它的特征不可能精确地表明与原型的特征一致,那么该粒子的位置就处于势场的低谷之外。显然,识别是一种对称破缺,这已在图4.20a中的一维例子中进行了说明。
在协同学系统中,势场地形的形状可以由调整序参量来改变。由于协同学系统是开放的,控制参量可以代表能量、物质、信息或其他来自系统环境刺激的输入。当控制参量低于某个临界值,地形可以具有一个稳定的位置如图4.20a中的用虚线标出的一个低谷。在涨落引起的每一激发以后,序参量弛豫地向其静止态演化。当控制参量超过了一定的临界值时,先前稳定的状态就变得不稳定了而被图4.20a中两个低谷的两个稳定状态所取代。
协同计算机的学习程序相应于势场地形的构造。势强度用地形形状表示,示意神经联接的突触力。协同学探究方式的一个优点在于,标志着一个模式的数量巨大的微观细节是用一个宏观序参量来确定的。因此,协同计算机运用了典型的复杂性约化方法,这种方法已经应用在自然进化的协同学模型中(对照3.3节)。
序参量方程允许一种新的(非霍布的)学习,即一种最小化突触数量的策略。与旋晶类型的神经计算机(例如霍普菲尔德系统)相比较,神经元不是阈值元素,而是实施简单的乘法和加法。但是,旋晶类型的神经计算机与协同学计算机的基本区别在于:旋晶类型的复杂系统是物理学上的封闭系统。因此,它们的模式生成是由保守自组织推动的,没有任何的能量、物质或信息从外部输入。由保守自组织形成的典型模式是冬天窗户上的“死的”冰花,它们是在低能低温的平衡态冻结起来的。保守自组织的相变可以完全用波耳兹曼的平衡热力学原理来解释。
在3.3节中,我们已经解释了活系统的模式生成。它只有在远离热平衡时输入能量、物质或信息,才是可能的。这种自组织叫做“耗散”自组织(普里戈金)或“协同”自组织。然而,它们甚至也是可以在物理学、化学进化中发现的。因此,作为活系统的人脑敏感地依赖于来自外部世界的涨落,它将为协同学框架中的新计算机技术提供“蓝图”或模型。自旋玻璃类型的神经计算机对于特定的技术目的可以是实用的、成功的。但是,由于它们是物理上封闭的系统,在原则上不同于如人脑这样的活系统中发生的东西。
协同计算机的模式识别过程自发地产生出对于平移、旋转和标度的不变性。这些识别特征相应于现实的情形。例如,脸部并非总是如同学习阶段给出的那样,而是它们可以平移、旋转、缩小和放大、靠近和置远。协同计算机的一个出色的应用,是振荡的识别(例如两可图)和感知滞后现象。图5.25a示意了一个人们熟悉的滞后现象的例子。当人们的注视力开始从图的左边移向右边,一张男人的脸将在大约6幅模式以后变成一个女孩脸。当人们从相反的方向来进行,从感知到女孩变到一张男人的脸只有在接近左端时才发生。
图5.25b示意了协同计算机在特征序参量的时间演化中的感知过程。间断线指的是解释“女孩”,实线指的是感知“脸部”。第一幅图示意了,从男人脸的感知向女孩的感知的转移,第二幅图示意了从女孩的感知向男人脸的感知的转移。
也许可以提出反对意见,认为至今协同计算机仍然必须用传统的串行计算机来模拟。协同计算机的原理仅仅是在软件领域中实现了,而不是在机器的硬件中得到了实现。但是协同学及其跨学科应用将导致它的材料和技术上的实现。如同激光是一个为人们所熟悉的协同学模型(对照2.4节),它可能在协同学原理的光学计算机的构造中起着根本性作用。在激光中,不同的模出现依赖于激光阈值的临界值。它们可以由它们的光子数来标志。在微观水平上,光子数目的变化率是用非线性演化方程来描述的,依赖于模的获得、丢失和饱和。在宏观水平上,序参量相应于标志若干种光波迹的场幅度(图2.28a,b)。
这是主张一种3层的构造,数据的输入层可以用全息图映射到激光上。激光及其序参量是中间层。它利用它的模,通过自组织起着决策装置的作用。在役使原理意义上的生存的模,激发起新的特征集合。这种水平被设想为输出层。协同计算机的激光构造当然必须得到实验的证实和改进。一台协同计算机将是一种真正的远离热平衡的耗散系统。
显然,复杂动力学系统对于模拟认知行为和技术系统也很有用。人脑可以作为非线性复杂系统来建模,其动力学可以受到不动点、周期或准周期吸引子,甚至是混沌吸引子的支配。例如,实验上已经证明,混沌是一种有效的大脑再置的机制。在对兔子的嗅觉球进行了研究以后,人们对于种种气味的识别已经用神经网络趋向环状渐进状态的滞后现象进行了建模。混沌态在发散、消除先前的气味记忆时就出现了。在发散期间,特定气味作为输入推动了系统趋向相应于该气味的极限环。
混沌态的技术应用是颇为有趣的,因为混沌系统能够产生信息。人们熟知的是,混沌系统敏感地依赖于其起始条件。因此,在动力学演化过程中,两条轨迹可以在一定时间惊人地分开,甚至它们的起始条件仅仅有微小差别时也是如此。由于任何观测都只能以有限精度来实现,因此就可能存在着两种不同的状态,其间的距离要小于我们的分辨能力。在初始状态,观测者看它们是相等的。但是,经过一段时间以后,一个混沌系统就使得在初始看来等同的状态之间的差异表现出来。
实际上,人们已在若干工业领域中对神经计算机的技术应用进行了探索。例子有机器人学、航空学和宇航学(敏感和适应系统,空中导航等等)、医学(医疗数据、治疗和诊断等等的评价和控制)、工业生产(质量控制、产品优化等等)、安全技术、国防、通信技术、银行、邮政等等。技术中的复杂系统探究方式不应该被看作是对于经典AI的竞争甚或对立。在目前的技术发展状态,神经网络和经典的AI系统如专家系统看来是很有用的,并适用于不同的应用领域。对于信号、图像、语音、语音合成、机器人中感觉运动协调等等的分析和识别,复杂系统显得比经典的AI系统更为合适。显然,这些神经网络的例子并非是单个的计算机或机器人,而是指不同程度的复杂功能,它们集成在多任务的复合系统中。从拟人的观点看,由神经网络实际上管理的这些问题,可以划入“低级水平”的问题。
在本章中,以AI类型专家系统为基础的推理模型已经失败了,因为它们精确的串行的程序行为是不容出错、没有灵活性的。与专家系统和知识工程相反,自组织的复杂过程不可能由明确形式化的专家知识来进行控制。另一方面,具有推理算法的以规则为基础的系统,在所有的具有逻辑结构的问题上都是成功的。例如,与感觉运动的协调相对照,逻辑编程显得是一种“高级水平”的知识。然而,低级水平的非线性动力学系统的问题却可以具有极其高度的复杂性。当然,非线性复杂系统并不局限于低级水平的知识,正如我们在前面的章节中已经看到的那样。复杂系统的原理看来是颇为适合于为高级功能建模,例如为概念、思维、自参照状态等等人脑的功能建模。但是,神经网络的技术仍然处于初期阶段。
在当今和未来的技术中,具有多模的基于规则和复杂动力学系统的多相系统对于专门用途的研究是有意义的。一个语音理解系统的构成中,可以包含实施语音识别的神经网络和可以进行句法和语法分析的基于规则的符号模式。混成系统集成了推理和动力学技术,可能对于若干种医学目的是很有用的。例如,设想一个系统,它可以用神经网络来识别和控制医学参量,并结合了与以规则为基础的演绎系统,此种演绎系统可以从识别出的数据中对于特殊的疾病进行诊断。如同大自然中的情形,一个工程师不应该教条地局限在某个“最优”策略上,而是要有目的地发现解答,最终把若干个解集成起来,但不必是最优解的集成。
5.4神经仿生学和电子空间
我们所有实现神经和协同计算机的技术努力,其目的是什么?复杂系统探究方式将使我们能够在科学、技术、工业、经济以及甚至在文化生活中,创建一种新的计算机辅助方法论。但是我们决不要忘记,必须对技术发展的方向及其伦理学目标作出决定。今天,目标是多种多样的,包括认识论的兴趣和科学的兴趣,还有技术、经济、文化以及最后——但不是最少——还包括军事上的应用。毫无疑问,医学研究和应用必定在所有这些研究目标等级中处于较高等级上。这里要提醒持有老观念的读者,医学的目的不仅仅在于从事科学的认知和研究,而且还在于运用。运用也不仅仅是工程意义上知识的技术应用,而且也是为了医治、帮助和康复。知识和研究不过是实现医学的这种基本目的的工具,自从希波克拉底时代以来医学的基本目的就是保护生命。
人的中心器官是大脑。因此,医学上保持大脑健康的任务这种重大责任就落在了神经医生身上。他们必须将其医学治疗看作是针对整个心-脑实体。为了对人的心-脑实体提供最仔细的可能医学治疗,需要一个应用性研究来致力于拓展和提高诊断和治疗能力,包括可能的神经手术、手术计划、手术技术和术后恢复。正如我们已认识到的,人的心-脑实体是进化中最复杂的系统。包括计算神经科学、物理学、工程学、分子生物学、医学和认识论的跨学科研究纲领,对于处理这种复杂系统是必要的。这也就是为什么,一些科学家已经开始了对大脑和精神的跨学科研究纲领,包括伦理学和人类学方面。我们将其称为“神经仿生学”。
一般地,“仿生学”意味着用技术的和人工的程序和系统模拟自然功能和过程。众所周知的例子是,飞机和潜水艇的设计模仿了鸟类和鱼类身体的空气动力学。历史上,仿生学是人类的一种古老的梦想,即试图以用技术手段去模拟自然原理,从而解决复杂的生命问题。在这种传统中,神经仿生学意味着,阐明普通的技术-生物学如何去加强自然神经元的发生学和功能性质以及发展起神经修复术,制备出以硅片和(或者)有机材料为基础的类似于大脑的计算机系统。这并非一幅令人毛骨悚然的弗兰克斯坦的妖怪图景。为了推动人们投身于这些研究目标,只需要让人们看一看患有大脑肿瘤或受意外伤害的病人的凄凉情景就可以了。
神经外科是关注中枢神经系统和人脑的专门医学学科。由于大脑是人的人格和智能的生物媒体,神经外科医生不仅仅要弄清有关大脑的神经学的原理,而且还要获取人的精神及其功能的知识。神经外科已经在病人治疗上取得了进步。通过引入诊断影视程序如计算机化和核磁共振断层照相术,手术中运用微手术程序,在这方面取得了显著的成功。
不过,关于脑疾病人治疗的根本性问题仍然没有解决。例如,成人的中枢神经系统中,从功能角度看,仅仅可以换掉非常有限的受损区组织。这是由于与身体中的其他细胞截然不同,神经细胞在胚胎阶段完成以后不可能进一步分裂。只有胚胎的组织才有这样的潜能,可以使自己适合于周围的宿主组织。所以,疾病或事故引起神经细胞组的损坏往往导致永久性功能障碍。在这个应用领域,人工复杂系统及其自组织原理将受到高度关注。
医学史上曾有过用自体移植物来恢复受损的周围神经的尝试。这种方法是以这样的事实为基础的:甚至成人也有能力再生神经细胞的伸展,这种伸展从脊髓索状组织伸向末梢区域直到目标器官。因此,部分功能上不重要的敏感神经被从身体中的适当地点移走,并插入想要恢复的被打断的神经区域。然而,被打断神经纤维的再生至今还没有得到完全的理解。因此,控制移植物的生长是不可能的,移植物中包括了数百的单个神经细胞伸展——它们应到达目标器官。由于中枢神经细胞是不可能再生的,对于非常接近脊髓索状组织的中心受损,移植也是无效的。
对于周围神经移植的一个改进是在分子生物学的领域中提出来的。对于神经细胞及它们联接的细胞如星状细胞和施旺细胞的生理学和生物化学的理解,可能导致新的神经移植方法。一种中枢神经系统中组织替代的高级方法是身体中自己的细胞移植,这样的细胞在移植前已是遗传上选择过并适应了的。神经生长因子的效应、在移植源和受体大脑的目标区域之间的关系,以及许多其他分子生物学的问题都必须加以调查研究。这些方法是以遗传工程的知识为基础的。
另一个周围神经移植的可能的方法,是运用人工的而不是生物的移植体。用人工替代物来恢复神经系统的受损部分,这在医学和神经病学中都已经进行了尝试。
人工移植体配有学习算法作为自然的“蓝本”。与MCP(麦卡洛克和皮茨)网络不同,它们是工作在真实时间中的BPN(生物脉冲处理)网络。图5.26示意了这种神经-技术植入体的一般图式:学习神经网络编码感觉和运动控制信号,使之成为许多平行脉冲序列,它们被一组植人的微接触体接受,以刺激未受损的神经(图5.26a)。由神经寄存的信号,被神经网络解码,用来控制运动修补体(图5.26b)。
人们对于脊髓索状组织受损的病人,也尝试了借助于BPN系统的电刺激来增进其站立和行走功能。假定末梢组织器是未受损的,末梢神经的电刺激引起了肌肉的收缩。这是由适应性学习网络的平行脉冲引起的,学习网络对病人的感觉系统的听觉命令进行编码(图5.26a)。这个系统具有学习能力,因为它通过把感觉反馈到运动的腿上,以适应特定的病人条件。但是,此系统仍然依赖于病人的意识和说话。在下一步的研究中,脑的无意识的意向性必须由脊髓索状组织中寄存的信号进行解码。然后这些信号可以被例如无线电波送往具有适应性神经编码器的接受器中,再引起如图5.26a所示的肌肉收缩。
有一项雄心勃勃的神经技术项目,它针对的是一定类型的盲人。视网膜色点炎病人的视网膜层受到一定损坏,而视网膜是负责感觉轮廓、表面、颜色和其他的视觉特征的。受损的视网膜层由神经修补术沟通。在所谓的视网植人体的构造中,观景由镜框中的光子接受器(例如半导体)寄存,其中装备了某种适应性的神经网络。外部世界的光信号由神经网络(BPN)处理,神经网络能够学习像人眼一样为接受域建立模型。它们的信号被编码,并测距地输给诱导接受器,在此受损视网膜上排列有电极,以刺激光神经和中枢神经系统(CNS)。在更先进的研究阶段,将不再需要视镜排列,具有适应性神经网络的接受单元可以直接地植人眼中。在最初的试验中,神经技术不可能完全地取代种种视觉功能;然而,所存贮的轮廓和表面的感知,将有助于病人把握方向,这就是目前努力的目标。
如果不同肌肉组的刺激可以直接在修复神经的末端分枝处进行,而不用无机金属电极,那么就可以获得决定性进展。这就必须要使用分子装置来实现生物技术的传导性,即要使用从有机分子设计制造出的电子元件。过程控制器控制着电极并处理信息,它必须以人工神经网络为基础,才能够实现高速数据处理,满足人的行走和站立的要求。显然,这些复杂神经网络的发展需要分子生物学、计算神经科学和高技术硬件工程的跨学科合作。
人工替代受损神经功能的例子还有内耳的耳蜗移植。如果听觉神经是未受损的,通过微手术置入一个有25个极的电极作为皮质器官的代替物。听觉神经现在由适当的电极脉冲来激发,它们模拟了声音模式。脉冲是由串行的以语言知识进行了编码的微处理器来控制的。但是,在进行困难的移去听觉神经的赘生物手术中,有听觉神经受损坏的危险,结果会造成病人变聋。今天有可能把人工神经网络直接联接在中心听觉通道的区域。于是听觉可以得到恢复而不论听觉神经丢失与否。生物技术、计算神经科学和工程技术的跨学科合作再一次表明是必要的。
一般来说,神经外科手术必须要考虑到如下的临床观点:神经外科的诊断、手术计划、手术技术和神经的康复,这些是受生物技术和计算神经科学中的复杂系统探究方式支持的。在诊断方面,计算机化的断层显示过程已经开创了一个新时代。由于神经外科医生不得不处理一种进化中的最复杂的器官,手术计划和进行模拟已成为准备取得成功医治的一个基本步骤。在这一方面,复杂性意味着病人的人格特征,涉及他或她的特定病史,一定致病过程的病理,个体的解剖特征以及一个手术的可能手术后果。
一种新的方法已经用于实践。一个神经外科手术可以用CAD(计算机辅助设计)辅助技术来进行模拟。用计算机产生出一个病理解剖的三维构造,它是由一个特殊的程序来控制的。在模拟中可以发现潜在的困难,从而在实际的手术中得以避免。手术技术的不断发展将减少实际的大型开放手术。立体视镜和内窥镜技术对于减少手术引起的损伤是重要的方法。激光技术与神经外科内窥镜、术内显示过程、计算机控制的调节技术结合的进一步发展,将成为一种有广泛应用的复杂手术工具。
在波士顿的麻省普通医院的一个研究小组,已经用磁共振成像技术(MRI)揭示了人的任务激活的功能成像图,这种任务激活是在视皮层中由光刺激引起的。按时间周期地注入对比剂。采用快速NRI扫描而不用注射,甚至初级的视觉皮层成像也实现了。图5.27显示了作为神经网络的脑认知活动的真实的时间成像。这些高级的基于计算机的复杂神经网络的图像,不仅仅有助于受损的病人,而且最终使我们看见自己的思维和情感。
发展人工神经网络的最重要动力来自这样的事实:以化学元素硅为基础的高度集成电路的生产,将达到它的物理极限。这种技术以程序控制的微处理器原理为基础,不可能进一步微型化。自组织的高度平行计算和策略对于处理大脑的复杂性是必要的。因此,运用某种新的底物来作为信息处理系统的基础,就显得必要了。在此迈出的第一步是开始发展以生物元件为基础的分子电子器件。在神经细胞之间的电信号可能通过有机传导物进行传导。
关于计算神经科学,神经网络的计算机模拟可以有助于鉴明由中枢神经系统和大脑实际运用的算法。现在研究的人工神经网络模型,主要是用矢量计算机、工作站、特殊的合作处理器或移植芯片(transputer
arrays)来进行模拟研究。但是,当然,复杂网络中的空间-时间平行计算的优点,在用经典计算机来进行模拟时已是全部地或部分地丢失了。只有用特殊设计的神经硬件,才能满足实时任务的要求。
在未来的神经仿生学应用中,神经芯片的训练将引起巨大复杂性的非线性作用动力学,这样的芯片可用作人的神经纤维之间的界面。芯片的设计者面临着相互联结的问题:如果成千上万的权重线路要以物理方式联接起来成一个神经元,并要作出数千个神经元,那么这个线路区域将达到这样的数量级,即线路引起的时间延迟将超过代表神经元功能块的运行时间。由于技术结构尺寸的减少受到经济上和物理上的限制,仿生学的设计者现在对相互联结问题倾向于一种构造解。首先,他们要考察神经网络的真实处理时间;其次,要考虑在何种程度上有可能偏离理想的大规模平行计算。
显然,平行计算硬件将显著增加软件的复杂性,并需要新的方法。强大的操作系统。编程工具和灵活的使用者界面都必须这样设计,使得容易与系统进行界面通信。这种任务,在由计算机科学知识程度不一的人员组成的跨学科队伍中将变得特别重要;以知识为基础的专家系统可以有助于研究小组成员,使之与仿生软件一起工作,并将它们集成进研究小组中。编程神经网络硬件将完全不同于经典的冯·诸葛曼计算机的编程。一位编程者必须要鉴明必要的网络拓扑和构造,还必须说明具有相互联结图式的神经元的行为。因此,运用多相的、混成的系统——集成神经网络系统和经典的以知识为基础的系统(在5.2节中已描述),成为神经仿生学中的现实观点。
有些人可能担心,混成的计算机系统及其复杂性的增长不经过高度的专门训练,是不可能把握的。现在的计算机系统和使用者之间的界面必须加以发展。计算机生成图像的操作,应该在“虚拟现实”中直接由语音、视觉和触觉来进行。使用者将获得这样的印象,即通过若干种与其感官相连的技术设备来获得计算机产生的现实的印象。
视觉印象是由操作者及位置感知器——它可以作为眼睛罩戴上——产生的。一个小话筒与语音识别系统联系起来,把人的命令翻译给系统。所谓的“数据手套”把手和手指的运动变换成电信号,产生出触觉并进行建模(图5.28)。
在数据手套中,在两层布之间埋设了光学纤维。它们以特定的模式把光信号变换成电信号。例如,这一技术在航空学中已经有了实际的应用。美国国家航空与宇宙航行局对于机器人的发展很感兴趣,通过模拟空间站中宇航员的手的运动,机器人可以在空间执行复杂而危险的行动。看来可能的是,数据手套原理,甚至适用于模拟整个身体的运动和反应的数据服。
这种情形对于人类的想像力有久远的影响。因此,化学中的分子建模,不仅仅可以用计算机来实现,而且也可以用引入触觉要素来实现。通过数据手套的手段,化学家可以想像抓住一个分子,感觉到它的表面并以所希望的方式对它进行操作。工程师试图通过特殊的技术系统,产生出这些接触和用力的效应。在虚拟现实中,通过数据手套进行的人的操作,必定要接受触觉到的影像客体的反馈。经验世界的复杂性,应该在所有方面被模拟。
宇航学和化学的例子中,模型的虚拟现实相应于宏观和微观宇宙中的某种真实现实。但是,图像计算机产生的奇妙世界景色,仅仅是作为电子实在而存在。在技术可能性与科学幻想之间的界限看来是模糊的。在计算机产生的“远程现实”中,人们感觉到如同影像物体。已经有人建议构造一种所谓的“家庭现实发动机”,它把使用者移入所希望的和不希望的幻想的虚拟世界。如果你愿意,你就可以与玛丽莲·梦露有性关系,或是与阿尔伯特·爱因斯坦进行讨论,这都是计算机产生的虚拟实在——预言家就这样向人们保证。科幻作家如威廉姆·吉布逊描述了由计算机产生的世界——“电子空间”,它将由人们作为惊人的幻觉而经历:
电子空间,每天由成千上万合法操作者经历的交感幻觉,无论在哪个国家,只要是学习了数学概念的孩子……都可以从人类社会中所有的计算机库数据中提取出来的数据图形表示,获得不可思议的复杂性。光线布满精神的非空间中,数据奔流激荡,如同城市中的照明,退去了……
这些见解,当然对于我们文化的发展提出了根本性的批判。人们被锁在塞满自己隐私的箱子中,或操作着由超级克雷和神经网络产生的虚拟现实,这看来是一幅如同奥韦尔的《老兄》(Big
Brother)中那样的可怕图景。
除了那些伦理学问题以外,还有一些严重的认识论问题,它们是计算机产生复杂人工世界的可能性问题。在传统的认识论中,哲学家如贝克莱和休谟采取了唯我论和怀疑论的立场,认为任何手段都不可能证明外在世界的实在性。我们所有的印象也许都是由我们的大脑及其精神状态产生出来的幻象。这些迷惑人的问题,并非是如同孩子般的不诸世事的哲学家的玩笑。它们应该是推动我们去考察和分析我们的论据的有效性的动力。现代逻辑学家和精神哲学家如希拉里·普特南已经以如下的方式对这些问题进行了翻译,它使我们想起了著名的图林试验。
设想一个人被一位“邪恶科学家”动了一次手术。他的大脑已经从身体上移去,置入充满营养物的罐子中,保持大脑还活着。其神经末梢与混成的神经计算机联接起来,使此人——他的大脑——仍然获得对一切事物完全正常的幻觉。他所经历的一切,都来自计算机对于神经末梢的电刺激。如果此人想要举起他的手,计算机的反馈将使他“看见”和“感觉”到手被举起,尽管存在着的仅仅是大脑中相应的模式,而非物理的眼睛或耳朵。那位邪恶的科学家可以使这个可怜的人经历任何情形。普南特说:
这个受害者甚至可以觉得自己正在阅读这些令人愉悦的但是相当荒谬的假设:一位邪恶的科学家把人们的大脑从身体中移去,并将它置入充满营养物的罐子中,保持此大脑活着。再将其神经末梢与超级科学计算机联接起来,使此人即他的大脑获得幻觉……
如果我们的大脑以这种方式置于一口罐子中,我们能够说我们还是自己吗?普南特争辩道,我们不能。我们实际上是置于一口罐子中的大脑这个命题不可能是真的,因为它是自驳斥的。自驳斥的命题是这样一种命题,其真意味着其伪。一个逻辑上的例子是万能定律:所有的普遍陈述都是假的。如果它是真的,那么因为它的普遍性,它就必定是假的。一个认识论的例子是定理“我不存在”,如果这是由我所思维到的,它就是自驳斥的,因此,笛卡尔的论据是,人们可以确信自己的存在,只要人一想到这个定理。我们是置于罐子中的大脑这一命题就具有这一性质。
假定我们是置于营养液罐子中的大脑,传入神经末梢与超级神经计算机联接,产生出大脑的所有感觉产物。由于置于罐子中的人的大脑在很好地发挥功能,当然它就有意识和智能。但是,它的关于树、马等等的思想和形象都与实际的树。马等等没有因果联系,因为实际的树、马等等是处于罐子中的大脑的外部世界,而这些思想和形象是由我们的超级神经计算机产生的。因此,如果我们假定,我们是置于具有所有这些条件的罐子中的大脑,那么词汇“罐子”、“营养液”等等,也就不涉及一个实际的罐子、营养液等等,而是涉及由我们的超级神经计算机产生的一定的思想和形象。结果是,“我们是置于罐子中的大脑”这个句子是假的(图5.29)。
我们必须意识到这样的可能性,即我们是置于罐子中的大脑,并非被物理学、而是被逻辑和哲学排除。物理学上的可能世界——我们是置于罐子中的大脑——与物理学定律是相容的。但是,在一个思想实验中,我们甚至能够必然地导出超出物理世界的真结论。
这些特征的原因看来要归于自参照性的结构,这是心-脑系统高级能力的典型特征。在4.3节和4.4节中,我们已经论证了,自参照性可能是使得意识和自我意识成为可能的根本特征,不仅仅是对于作为生物进化产物的心-脑系统是如此,而且甚至对于采取了完全不同硬件的人工复杂系统也是如此。
图林自己主张一种人们熟知的检验,它可以确定一个如计算机那样的人工系统是否是有意识的:让一个人在一个键盘上与计算机进行交谈,以及与一个并不知道的人进行类似的交谈。如果他不能区分出哪一个是计算机,哪一个是人,那么计算机就是有意识的。简言之,一台计算机,如果它可以通过图林检验,就是有意识的。
关于“罐子中的大脑”的思想实验已经表明,图林的对话检验必定会在某些特定意义上失效。由人工系统使用的词语和句子并不必涉及到实际的对象和事件,而我们在人的自然语言中要涉及到它们。词语和句子的使用可以是由句法模式支配的,它们能够被以高度精致的方式编程为图林机。魏征鲍姆的程序ELIZA模拟了病人与心理学家的对话,可以提供这些可能性的最初线索。在此意义上,图林检验不可能排除,机器的谈话仅仅是一种类似于有智能的人的演讲的句法演示。然而,原则上不可能排除,自组织的复杂系统,通过以原型模式和对于环境的经验作为特殊参考,是能够学习它们的合乎句法的词语和规则的。从这种长远观点看,它是一个伦理问题,即我们是否想要发展那些高度自主的(耗散)系统。
|