首页 理论教育 表示方法的回顾

表示方法的回顾

时间:2022-02-11 理论教育 版权反馈
【摘要】:程序中的数据结构可以表示事实;例如,程序可以用一个4 × 4数组表示wumpus世界的内容。命题逻辑所拥有的第三种特性在表示语言中是受欢迎的,即合成性。“三”是这一对象的另一个名称。这使得人们可以表示通用规律或者规则,诸如语句“与wumpus相邻的方格有臭味”。即,世界由对象构成,对象之间的某些关系或者成立或者不成立。专用的逻辑给出更进一步的本体论约定。

8.1 表示方法的回顾

本节中,我们将讨论表示语言的本质。我们的讨论将引出一阶逻辑的发展。一阶逻辑是一个比第七章所介绍的命题逻辑表达能力更强的语言。我们将着眼于命题逻辑和其它类型的语言以便了解这些语言能做什么不能做什么。我们的讨论将是粗略的,把几个世纪的思想、试验和错误浓缩为几段文字。

程序设计语言(比如C++、Java或Lisp)是到目前为止常用的形式语言中最大的一类。程序本身在某种直接的意义下只表示计算过程。程序中的数据结构可以表示事实;例如,程序可以用一个4 × 4数组表示wumpus世界的内容。因此,程序设计语言的语句World[2,2]←Pit是一种断言[2,2]有陷阱的很自然的方式。(这样的表示可能被认为是专门的;数据库系统被精确地开发出来,以提供一种更通用的、独立于领域的方法来存储和检索事实。)程序设计语言缺乏的是从其它事实派生出事实的任何通用机制;对数据结构的每次更新都是通过一个领域特定的过程来完成,该过程的细节是由程序员根据他或她自己拥有的关于该领域的知识提供的。这一过程性方法可以和命题逻辑的陈述性本质进行对比。在命题逻辑中,知识和推理是分开的,而且推理是完全不依赖于领域的。

程序(以及数据库)中的数据结构的第二个缺点是缺乏任何简便的表述方式,例如,“[2, 2]或[3, 1]中有一个陷阱”或者“如果wumpus在[1, 1],那么它不在[2, 2]中”。程序可以为每个变量保存一个单独的值,而且某些系统中允许该值是“未知的”,但是它们缺乏处理不完全信息所需的表达能力。

命题逻辑是一种陈述性语言,因为它的语义是基于语句和可能世界之间的真值关系的。它还有充分的表达能力,可以采用析取式和否定式来处理不完全信息。命题逻辑所拥有的第三种特性在表示语言中是受欢迎的,即合成性。在合成性语言中,语句的含义是它的各部分含义的一个函数。例如,“S1,4∧S1,2”与“S1,4”和“S1,2”的含义有关。如果S1,4表示[1, 4]有臭气,S1,2表示[1, 2]有臭气,而S1,4∧S1,2却表示法国和波兰在上周的冰球资格赛中战成1比1,这将是一件非常奇怪的事情。显然,非合成性使得推理系统更加困难。

正如我们在第七章所看到的那样,命题逻辑缺乏足够的表达能力,因而无法简明地描述有很多个对象的环境。例如,我们不得不单独为每个方格写一个关于微风和陷阱的规则,如:

B1,1⇔ ( P1,2∨P2,1)

另一方面,用自然语言一劳永逸地表述看来是很容易的,“与陷阱相邻的方格有微风。”自然语言的语法和语义以某种方式使得其能够简明地对环境进行描述。

瞬间灵感暗示自然语言(诸如英语或西班牙语)实际上具有非常强大的表达能力。我们设法几乎全部用自然语言来写作这整本书,只是偶尔会采用其它语言(包括逻辑、数学和图表语言)。语言学和语言哲学中的一种长久传统是把自然语言本质上视为一种陈述性知识表示语言,并试图明确给出它的形式语义。如果这样的研究项目成功的话,它将对人工智能有重要价值,因为它将使得自然语言(或者它的某些派生语言)可以用于表示和推理系统中。

自然语言的现代观点是,它提供一种稍微不同的用途,也就是说作为交流的媒介而不是单纯的表示。当一个演讲者指点着说:“看!”听众便明白,比如说,超人最终在屋顶上现身了。然而,我们并不想说,语句“看!”对该事实进行了编码。相反,语句的含义取决于语句本身以及说出该语句时的上下文。显然,人们无法在知识库中存储诸如“看!”这样的语句,并期望能够在没有同时保存上下文的表示的情况下复原它的含义——这就带来了上下文本身如何表示的问题。自然语言也是非合成性的——诸如“于是她看到它”的语句的含义可能取决于由很多前述和后继语句构成的一个上下文。最后,自然语言存在歧义性的困扰,歧义性将造成思考的困难。正如 Pinker(1995)所言“当人们考虑春天(Spring)时,他们显然没有感到困扰,他们到底是在考虑一个季节还是某个发出啵嘤(弹簧突然弹开或振动时发出的声音)响声的事物(弹簧的英文单词也是spring——译者注)——如果一个词语可以对应于两种想法,那么,想法就不能是词语”。

我们的方法将要采用命题逻辑的基础——即一种陈述式的、上下文无关且无歧义性的合成语义——并在这一基础上,借用自然语言的表达思想,同时避开它的缺点,构造出一种更具表达能力的逻辑。当我们观察自然语言的语法时,最明显的元素是指代对象的名词和名词短语(方格、陷阱、wumpus)以及表示对象之间关系的动词和动词短语(有微风的、相邻、射击)。有些关系属于函数——在该关系中,对于给定“输入”,只有一个“值”。很容易从罗列对象、关系和函数的实例开始:

• 对象:人们、房子、数字、理论、麦当劳、颜色、棒球比赛、战争、世纪……

• 关系:可以是一元关系或称属性,诸如:红色的、圆的、伪造的、质数的、多楼层的……;也可以是更常见的n元关系,诸如:是……的哥哥、比……大、在……里面、是……的一部分、有……颜色、在……之后发生、拥有、在……之间……

• 函数:……的父亲、最好的朋友、……的第三局、比……多一个、……的开始……

实际上,可以认为几乎每条断言都涉及对象和属性或者关系。一些实例如下:

• “一加二等于三”

对象:一、二、三、一加二;关系:等于;函数:加。(“一加二”是通过将“加”函数应用于对象“一”和“二”而得到的对象的名称。“三”是这一对象的另一个名称。)

• “与wumpus相邻的方格是有臭味的”

对象:wumpus、方格;属性:有臭味的;关系:相邻。

• “邪恶的约翰王于1200年统治英格兰。”

对象:约翰、英格兰、1200年;关系:统治;属性:邪恶的、王。

一阶逻辑的语言是围绕对象和关系建立起来的,我们将在后一节中给出它的语法和语义的定义。它在数学、哲学和人工智能中的地位如此重要,确切原因是这些领域——实际上,人类生存的每一天的大部分——从处理对象以及对象之间的关系的角度来考虑是很有用的。一阶逻辑还可以表达关于全域中某些或全部对象的事实。这使得人们可以表示通用规律或者规则,诸如语句“与wumpus相邻的方格有臭味”。

命题逻辑和一阶逻辑之间最基本的区别在于每种语言所给出的本体论约定——即关于现实本质的假设不同。例如,命题逻辑假定世界中的事实要么成立要么不成立。每个事实只能处于真或假这两种状态之一[17]。一阶逻辑的假设更多。即,世界由对象构成,对象之间的某些关系或者成立或者不成立。专用的逻辑给出更进一步的本体论约定。例如,时序逻辑假定,事实在特定时间成立而且那些时间(可以是时间点或者时间区间)是有次序的。因此,专用逻辑赋予某些类型的对象(以及关于它们的公理)逻辑中的“头等”状态,而不是在知识库中对它们进行简单定义。高阶逻辑把一阶逻辑中的关系和函数本身也视为对象。这使得任何人可以对所有的关系做出断言——例如,人们可以定义传递关系的含义。与多数专用逻辑不同,高阶逻辑一定比一阶逻辑表达能力更强,这一点表现在一些高阶逻辑语句无法由任何有限数量的一阶逻辑语句来表达。

逻辑还可以根据它的认识论约定——关于每个事实它所允许的知识的可能状态——进行刻画。在命题逻辑和一阶逻辑中,一条语句代表一个事实,而且智能体不是相信语句为真、相信其为假,就是没有任何意见。因此这些逻辑对于任何语句具有3个可能的知识状态。另一方面,采用概率论的系统可以有从0(完全不相信)到1(完全相信)的任何信度 [18]。例如,概率wumpus世界的智能体可能相信wumpus位于[1, 3]的概率是0.75。5种不同逻辑的本体论和认识论的约定总结如图8.1所示。

图8.1 形式语言和它们的本体论约定以及认识论约定

我们将在下一节中深入了解一阶逻辑的细节。正如一个物理系的学生也要求熟知某些数学,研究人工智能的学生需要开发自己处理逻辑符号的才能。此外,不要太关注于逻辑符号的细节同样非常重要——毕竟,存在许多不同的版本。需要掌握的主要事情是语言如何使得简明的表示变得容易以及它的语义如何导致可靠的推理过程。

思维的语言

哲学家和心理学家已经对人类和其它动物如何表示知识这个问题思考了很长时间。可以明确的是自然语言的演化过程对于人类开发这种知识表示能力扮演了重要角色。另一方面,很多心理学证据表明人类并不是直接把语言用于他们的内部表示。例如,下列两句短语中哪一句是第8.1节的开篇?

“在本节中,我们将讨论表示语言的本质……”

“本节涵盖了知识表示语言的主题……”

Wanner(1974)发现,受试对象在这种测试中做出正确选择的概率处于随机水平——大约为50%,而记住他们所读内容,准确率可达到90%。这暗示着人们对词语进行处理进而形成某种我们称之为记忆的非语言表示。

语言使人类能够表示思想并影响其思想表示的确切机制依然是一个让人着迷的问题。著名的萨皮尔-沃尔夫假说(Sapir-Whorf hypothesis)声称我们所说的语言深刻地影响着我们思考和决策的方式,尤其是通过建立分类结构,我们将世界划分为不同种类的事物。沃尔夫(Whorf,1956)宣布爱斯基摩人有很多表示雪的词语,因此相对使用其它语言的人而言,对雪有不同方式的体验。在其他一些人(Fortescue,1984)支持他的观点的时候,一些语言学家对这一观点的事实基础提出了质疑——Pullum(1991)争辩说:因纽特语、尤皮克语以及其它相关的语言似乎都有和英语大致相同数目的用于描述与雪相关概念的词语。对世界的某些方面更熟知的人群能发展出更加详细的词汇表,这一点是勿庸置疑的——例如,野外昆虫学家将多数被我们称为甲虫的生物细分为数十万个物种,而且个人熟悉很多这些物种。(进化生物学家J. B. S. Haldane曾经抱怨过造物主“对甲虫的过度喜好”。)另外,经验丰富的滑雪者有很多关于雪的术语——粉末、杂脍、土豆泥、油渣、玉米、胶泥、面包皮、糖、沥青、灯芯绒、绒毛、糊状混合物,等等——外行人是不熟悉这些表示的区别的。不甚清楚的地方在于其因果关系的方向——滑雪者只通过学习这些词汇就可以了解区别,还是这些区别从个体体验中涌现出来并逐渐符合当前社会的标记?这一问题对于研究儿童智力发育尤其重要。至今,我们对语言学习和学会思考二者纠缠到何种程度还知之甚少。例如,概念名称的知识,诸如单身汉,能使构造和推理包含该名称的更复杂概念,比如合格的单身汉,更为容易吗?

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈