第二章 AI知识表示oommtt

更新时间:2023-10-04 12:35:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

概述

知识表示是人工智能研究中最基本的问题之一。

在知识处理中总要问到:如何表示知识,怎样使机器能懂这些知识,能对之进行处理,并能以一种人类能理解的方式将处理结果告诉人们。

在AI系统中,给出一个清晰简洁的有关知识的描述是很困难的。 09

第二章 知识表示 概述

知识的定义(难以给出明确的定义,只能从不同方面加以理解) Feigenbaum:知识是经过消减、塑造、解释和转换的信息。 Bernstein:知识是由特定领域的描述、关系和过程组成的。 Hayes-roth:知识是事实、信念和启发式规则。

从知识库的观点看,知识是某领域中所涉及的各有关方面的一种符号表示。 09 概述 数据:用一组符号及其组合表示的信息称为数据,是记录信息的符号,是信息的载体和表示。 信息:是对数据的解释,数据在特定场合下的具体含义。 知识:把有关信息关联到一起所形成的信息结构称为知识。 09 概述

知识的种类

以知识的作用范围来划分: 常识性知识,领域性知识 以知识的作用及表示来划分:

事实性知识,规则性知识,控制性知识,元知识 以知识的确定性来划分: 确定性知识,不确定性知识 以人类的思维及认识来划分 逻辑性知识,形象性知识 09 概述

知识的表示

研究用机器表示知识的可行性、有效性的一般方法,是一种数据结构与控制结构的统一体。 知识表示的分类 陈述性知识表示

主要用来描述事实性知识 过程性知识表示

用来描述规则性知识和控制结构知识 09

表示方法(各有特点,并存) 谓词逻辑法

产生式规则表示法 语义网络法 状态空间法 问题归约法

框架表示 面向对象表示 脚本方法表示 过程式表示 09

表示方法 —谓词逻辑法

逻辑是一种重要的知识表示方法。使用逻辑法表示知识,须将以自然语言描述的知识,通过引入谓词、函数加以形式描述,获得有关的逻辑公式,进而以机器内码表示。

用一阶谓词逻辑公式可以表示事物的状态、属性、概念等事实性知识,也可以表示事物间具有确定因果关系的规则性知识。 09

表示方法 —谓词逻辑法

一阶谓词逻辑是谓词逻辑中最直观的一种逻辑。它以谓词形式来表示动作的主体、客体。客体可以多个。 如:张三与李四打网球(Zhang and Li play tennis),可写为:PLAY(Zhang, Li, tennis) 这里谓词是PLAY ,动词主体是Zhang和 Li,而客体是tennis。 09

表示方法 —谓词逻辑法 谓词逻辑规范表达式:

P ( x1, x2, x3, ?), P是谓词符号(简称谓词),xi(i=1,2,?n)是参数项(简称项);由于有n个参数项,P(x1, x2, ?, xn)表示了一个n元谓词公式。项可以是常量、变量或函数。

基本符号:谓词符号、变量符号、函数符号、常量符号、括号和逗号。 09

表示方法 —谓词逻辑法

例:用谓词公式表示“机器人(ROBOT)在1号房间(R1)内”。 当机器人ROBOT移到房间R2时,谓词公式可以表示为: INROOM (ROBOT, R2)

这两个谓词公式的通用形式就是: 09

表示方法 —谓词逻辑法

例如,谓词公式表示“李的母亲和他的父亲结婚”。

注意:一般的,常量符号用大写字母表示,变量符号用小写字母表示。 09

表示方法 —谓词逻辑法

连词和量词(Connective & Quantifiers)

谓词公式是谓词演算的基本单元,也称为原子公式。通过引入连词和量词,可以把原子公式组合为复合谓词公式。通常将复合谓词公式称为逻辑语句,所以谓词演算也称为谓词逻辑。 连词:谓词演算中使用的连词主要有 ┑(非)、∧(与)、∨(或)、 -> (蕴涵)和<=>(等价,有时也表示为 ?)。 09

表示方法 —谓词逻辑法 连词

与·合取(conjunction)合取就是用连词∧把几个公式连接起来而构成的公式。合取项是合取式的每个组成部分。

例:Like(I,Music)∧LIKE(I,Painting) (我喜爱音乐和绘画。)

或·析取(disjunction) 析取就是用连词∨把几个公式连接起来而构成的公式。析取项是析取式的每个组成部分。 例:Play(Lili,Basketball) ∨Play(Lili,Football) (李力打篮球或踢足球。) 09

表示方法 —谓词逻辑法 连词

蕴涵(Implication) :蕴涵 表示“如果-那么”的语句。用连词->连接两个公式所构成的公式叫做蕴涵。 IF A THEN B , A ->B 例:Runs(Lihua,Fastest) -> Wins(Lihua,Champion) (如果刘华跑得最快,那么他取得冠军) 非(NOT) 表示否定,~、┑均可表示。

例:~Inroom(Robot,R2)(机器人不在2号房间内。) 09

表示方法 —谓词逻辑法 量词

为扩大命题演算能力,就需要引入变量和有关的表示方式。为此,谓词演算引入了量词来表示对变量的处理。量词分为二类: 全称量词--以符号 表示,( x)P(x)表示对于某个论域中的所有个体x,都有P(x)真值为T。 存在量词--以符号 $表示, ( $ x)P(x) 表示某个论域中至少存在一个个体x,使P(x) 真值为T。

这里,P(x)是任意逻辑语句,也称作量词的管辖范围。 09

表示方法 —谓词逻辑法

量词:以下是几个应用量词的例子 ( x)[Robot(x) -> Color(x, Gray)] 所有机器人都是灰色的;

(x)[Road(x)-> Lead(x, Roma)] 条条大路通罗马;

( $ x)[Isa(x,Robot)∧Inroom(x,R1)] 至少有一个机器人在房间R1 中; 09

表示方法 —谓词逻辑法 量词:

出现在量词符号中的变量,称为量词的约束变量(或称变元),其取值仅在量词的辖域内有效。不受量词约束的变量,称为自由变量。自由变量是相对的。

例如:( x)[Person(x)∧Give(Mary,x,y)]

Mary给每人某个东西。 09

表示方法 —谓词逻辑法

谓词公式表示知识的基本步骤:

定义谓词及个体,确定每个谓词及个体的确切含义;

根据所要表达的事物或概念,为每个谓词中的变元赋以特定的值;

根据所要表达的知识的语义,用适当的连接符号将各个谓词连接起来,形成谓词公式。 09

谓词公式表示知识举例

例: 张晓辉是一名计算机系的学生,但他不喜欢编程序。 第一步:定义谓词

COMPUTER(x):x是计算机系学生 LIKE(x,y):x喜欢y

涉及到的个体:张晓辉,编程序 第二步:将个体带入谓词中

COMPUTER(zhangxh), ~LIKE(zhangxh,program) 第三步:根据语义,用逻辑连接词连接谓词

COMPUTER(zhangxh) ∧ ~LIKE(zhangxh,program)

表示方法 —谓词逻辑法 09 19

谓词公式表示知识举例

例: 李小鹏比他父亲长的高。 第一步:定义谓词

HIGHER(x,y):x比y高

涉及到的个体:李小鹏,李小鹏的父亲(函数表示) 第二步:将个体带入谓词中 HIGHER(lixp,father(lixp)),

表示方法 —谓词逻辑法 09 20

谓词公式表示知识举例 例: 人人爱劳动。

第一步:定义谓词

MAN(x):x是人; LOVE(x,y):x喜欢y 第二步,第三步:

(? x)[MAN(x)->LOVE(x,labour)]

表示方法 —谓词逻辑法 09 21

谓词公式表示知识举例 例:

所有整数不是偶数就是奇数。 自然数都是大于零的整数。 第一步:定义谓词

N(x):x是自然数;I(x):x是整数;E(x):x是偶数 O(x):x是奇数;GZ(x):x大于零 第二步,第三步: (? x)[I(x)->E(x) ∨O(x)] ( ? x)[N(x)->GZ(x)∧I(x)]

表示方法 —谓词逻辑法 09 22

表示方法 —谓词逻辑法

例:有的人喜欢梅花,有的人喜欢菊花,有的人既喜欢梅花又喜欢菊花。 定义谓词 P(x):x是人 L(x,y):x喜欢y

其中,y的个体域是{梅花,菊花}。 将知识用谓词表示为:

($ x )(P(x)→(L(x, 梅花)∨L(x, 菊花)∨L(x, 梅花)∧L(x, 菊花))) 09

表示方法 —谓词逻辑法

例:不是每个计算机系的学生都喜欢在计算机上编程序。 定义谓词

S(x):x是计算机系学生

L(x, pragramming):x喜欢编程序 U(x,computer):x使用计算机 将知识用谓词表示为: ? ( x) (S(x)→(L(x, pragramming)∧U(x,computer))) 09

例: 机器人搬弄积木块问题表示

设在一个房间里,有一个机器人ROBOT ,一个壁橱ALCOVE,一个积木块BOX,两个桌子A和B。机器人可把积木块BOX从一种状态变换成另一种状态。

初始状态:机器人ROBOT在壁橱ALCOVE的旁边,且两手是空的,桌子A上放着积木块BOX,桌子B是空的。

目标状态:机器人ROBOT将把积木块BOX从桌子A转移到桌子B上。

第一步:涉及常量

机器人:ROBOT;积木块:BOX;壁橱:ALCOVE; 桌子:A;桌子:B。 第二步:定义谓词:

TABLE(x) 表x是桌子 EMPTYHANDED(x) 表x双手是空的 AT(x,y) 表x在y旁 HOLDS(x,y) 表x拿着y ON(x,y) 表x在y上

EMPTYTABLE(x) 表桌子x是空的 09 25

设定初始状态是:

AT(ROBOT,ALCOVE) ∧ EMPTYHANDED(ROBOT) ∧ ON(BOX,A) ∧ TABLE(A) ∧ TABLE(B) ∧

EMPTYTABLE(B) 目标状态是

AT(ROBOT,ALCOVE) ∧ EMPTYHANDED(ROBOT) ∧ ON(BOX,B) ∧ TABLE(A) ∧ TABLE(B) ∧

EMPTYTABLE(A)

问题是依机器人可进行的操作,实现一个由初始状态到目标状态的机器人操作过程。 09 26

机器人的每个操作的结果所引起的状态变化,可用对原状态的增添表和删除表来表示。如机器人由初始状态把BOX从A桌移到B桌上,然后仍回到壁室,这时同初始状态相比有 增添表 ON(BOX,B) 删除表 ON(BOX,A)

又如机器人由初始状态,走近A桌,然后拿起BOX,这时同初始状态相比有 增添表 AT(ROBOT,A)

HOLDS(ROBOT,BOX) 删除表 AT(ROBOT,ALCOVE)

EMPTYHANDED(ROBOT) ON(BOX,A) 进一步说,机器人的每一操作还需有先决条件。如机器人拿起A桌上的BOX这一操作,先决条件是

ON(BOX,A),AT(ROBOT ,A) EMPTYHANDED (ROBOT) 09 27

表示方法 —谓词逻辑法 谓词公式的取值:

当一谓词公式中不含变量,或变量值均取定时,谓词公式所表示的事物间的关系也就唯一确定。若这种关系在应用域确实存在,则谓词公式取值为真(记为T),否则为假(记为F)。在这个意义上,每个谓词公式均有一个确定的真值:T或F。 09

表示方法 —谓词逻辑法

谓词能够更加细致地刻画知识: 表达能力强

如:北京是个城市, City(x) 把城市这个概念分割出来。把“城市” 与“北京”两个概念连接在一起,而且说明“北京”是“城市”的子概念。(概念有了层次) 谓词可以代表变化的情况

如:City(北京),真。 City(煤球),假 09

表示方法 —谓词逻辑法

在不同的知识之间建立联系(逻辑表达形式)

如:Human(x) → Lawed(x), 人人都受法律管制,x是同一个人。

Commit(x) → Punished(x), 犯了罪就要受惩罚,其中x不一定是人也可以是动物。

而 {[Human(x) → Lawed(x)]→[Commit(x) → Punished(x)]},意为如果由于某个x是人而受法律管制,则这个人犯了罪就一定要受到惩罚。(用谓词把所有的概念联系起来) 09

表示方法 —谓词逻辑法 存在问题:

谓词表示越细,推理越慢、效率越低,但表示清楚。实际中是要折衷的。 09

表示方法 —谓词逻辑法

谓词逻辑法是应用最广的方法之一,其原因是:

谓词逻辑与数据库,特别是关系数据库就有密切的关系。在关系数据库中,逻辑代数表达式是谓词表达式之一。因此,如果采用谓词逻辑作为系统的理论背景,则可将数据库系统扩展改造成知识库。

一阶谓词逻辑具有完备的逻辑推理算法。如果对逻辑的某些外延扩展后,则可把大部分的知识表达成一阶谓词逻辑的形式。(知识易表达,表示范围大) 09

表示方法 —谓词逻辑法

谓词逻辑本身具有比较扎实的数学基础,知识的表达方式决定了系统的主要结构。因此,对知识表达方式的严密科学性要求就比较容易得到满足。这样对形式理论的扩展导致了整个系统框架的发展。

逻辑推理是公理集合中演绎而得出结论的过程。由于逻辑及形式系统具有的重要性质,可以保证知识库中新旧知识在逻辑上的一致性(或通过相应的一套处理过程检验)、和所演绎出来的结论的正确性。而其它的表示方法在这点上还不能与其相比。 09

表示方法(各有特点,并存) 谓词逻辑法

产生式规则表示法 语义网络法 状态空间法 问题归约法 框架表示 面向对象表示 脚本方法表示 过程式表示 09

表示方法—产生式表示法(if?then?)

美国数学家Post,1943年提出了一种计算形式体系里所使用的术语。主要是使用类似文法的规则,对符号串做替换运算。这就是最早的一个产生式系统。

到了60年代,产生式系统成为认知心理学研究人类心理活动中信息加工过程的基础,由此心理学家认为,人脑对知识的存储就是产生式形式。因此,用它来建立人类认知模型。 到目前为止,产生式系统已发展成为人工智能系统中最典型最普遍的一种结构。产生式表示方法是专家系统的第一选择的知识表达方式。 09

表示方法—产生式表示法

产生式表示方法容易描述事实、规则以及它们的不确定性度量。 事实的表示

事实可看作是断言一个语言变量的值或断言多个语言变量之间关系的陈述句。 例1:香蕉是黄色的。 语言变量——香蕉,值——黄色的

例2:小李喜欢小莉。 语言变量——小李、小莉,关系值——喜欢

一般使用三元组(对象,属性,值)或(关系,对象1,对象2)来表示事实,其中对象就是语言变量,若考虑不确定性就成四元组表示了。这种表示的机器内部实现就是一个表。 09

表示方法—产生式表示法 例:对事实

“老李年龄今年是65岁”可表示成: (Li,Age,65)

而“老赵和老张是朋友”可写成: (Friend, Zhao,Zhang)

注:三元组(对象,属性,值)表示考虑了不确定性之后的四元表示为(对象,属性,值,不确定度量值) 例:“老赵和老张是朋友的可信度是0.6”表示为: (Friend, Zhao,Zhang,0.6) 09

表示方法—产生式表示法 规则的表示:

表示事物间的因果关系及启发式关联 以:“if condition then action”的单一形式来表示,将规则作为知识的单位。其中的Condition部分称作条件式前件或模式,而Action部分称作动作或后件或结论。

条件部分常是一些事实的合取,而结论常是某一事实B,如果考虑不确定性,需另附可信度度量值。

其基本形式为:P ?? Q 或者:IF P then Q 09

表示方法—产生式表示法 产生式与蕴含式的区别: 蕴含式只能表示确定知识,其值为真或者假;产生式不仅可以表示确定性知识也可表示不确定性知识。

例:在专家系统中MYCIN中有如下产生式: IF 本生物的染色斑是革兰氏阴性, 本微生物的形状呈杆状, 病人是中间宿主

THEN 该微生物是绿脓杆菌,置信度为0.6

在产生式表示中,决定一个产生式是否可用是通过检查已知事实是否与前提中所规定的条件相匹配来实现的,并且匹配可以是精确的也可以是不精确的。谓词逻辑中的蕴含则要求匹配一定是精确的。 09

表示方法—产生式表示法 产生式系统组成

一般来讲, 产生式系统由三个基本部分组成:规则库、综合数据库和推理机。前二者构成产生式系统的问题表示(描述),后者则控制应用规则推出解答的全过程。

推理机 规则库 综合数据库 09

表示方法—产生式表示法 产生式系统组成

规则库-专家系统的核心

规则库是产生式规则的集合,用于描述应用领域的常识和启发式知识,所以规则库就是产生

式系统的知识库。

例:天上下雨 → 地上湿(条件--〉结论)

→ 中国的首都是北京(无论什么前提) 09

表示方法—产生式表示法 产生式系统组成 综合数据库

综合数据库用于描述问题求解状态,典型情况下,可以是表示为谓词公式的事实元素集;但也可以是任何的数据结构,如向量、数组和表格等。

综合数据库可视为外部数据库输入的事实以及推理过程中间结果的存贮池。随着中间结果的不断加入,使综合数据库描述的问题状态逐步转变为目标状态。 09

表示方法—产生式表示法

例:关于动物世界的产生式系统有规则:

若 某动物是哺乳动物,且吃肉;则 这种动物是食肉动物。 如果表示为更便于计算机操作的形式化方式为 (Mammal x)∧ (Eat x Meat) ?? (Carnivore x)

产生式系统的基本组成关于动物世界的产生式系统有如下综合数据库: ?

(Mammal Dog) (Eat Dog Meat) ? 09

产生式系统组成 推理机

推理机是一个程序,控制协调规则库与数据的运行,包含了控制策略和推理方式。

基本的控制流程是:

识别--行动 ??循环

在识别阶段,控制系统在规则库中识别条件为真的规则,使这些规则激活;然后行动阶段,执行激活的规则。

表示方法—产生式表示法 09

表示方法—产生式表示法

控制策略就是确定选用什么规则或如何应用规则。 通常从选择规则到执行操作要分三部分来完成: 匹配 冲突解决 操作 09

本文来源:https://www.bwwdw.com/article/xmad.html

Top