人工智能第6章知识表示.

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第6章知识表示第6章知识表示6.1知识及其表示6.2框架6.3语义网络6.4面向对象知识表示第6章知识表示6.1知识及其表示6.1.1知识的概念究竟什么是知识呢?我们认为:知识就是人们对客观事物(包括自然的和人造的)及其规律的认识,知识还包括利用客观规律解决实际问题的方法和策略。对客观事物及其规律的认识,包括对事物的现象、本质、属性、状态、关系、联系和运动等的认识,即对客观事物的原理的认识。利用客观规律解决实际问题的方法和策略,包括解决问题的步骤、操作、规则、过程、技术、技巧等具体的微观性方法;也包括诸如战术、战略、计谋、策略等宏观性方法。所以,就内容而言,知识可分为(客观)原理性知识和(主观)方法性知识两大类。就形式而言,知识可分为显式的和隐式的。第6章知识表示6.1.2知识表示面向计算机的知识描述或表达形式和方法。面向人的知识表示可以是语言、文字、数字、符号、公式、图表、图形、图像等多种形式。这些表示形式是人所能接受、理解和处理的形式。但面向人的这些知识表示形式,目前还不能完全直接用于计算机,因此就需要研究适于计算机的知识表示模式。具体来讲,就是要用某种约定的(外部)形式结构来描述知识,而且这种形式结构还要能够转换为机器的内部形式,使得计算机能方便地存储、处理和利用。第6章知识表示6.1.3知识表示的语言实现上面谈的知识表示仅指知识的逻辑结构或形式。要把这些外部的逻辑形式转化为机器的内部形式,还需要程序语言支持。原则上讲,一般的通用程序设计语言都可实现上述的大部分表示方法。但使用专用的面向某一知识表示的语言更为方便和有效。因此,几乎每一种知识表示方法都有其相应的专用实现语言。例如,支持谓词逻辑的语言有PROLOG和LISP,专门支持产生式的语言有OPS5,专门支持框架的语言有FRL,支持面向对象表示的语言有Smalltalk、C++和Java等,支持神经网络表示的语言有AXON….第6章知识表示6.2框架6.2.1框架的概念框架是一种结构模式,其一般形式是:框架名槽名1槽值1|侧面名11侧面值111,侧面值112,…侧面名12侧面值121,侧面值122,…槽名2槽值2|侧面名21侧面值211,侧面值212,…侧面名22侧面值221,侧面值222,……槽名k槽值k|侧面名k1侧面值k11,侧面值k12,…侧面名k2侧面值k21,侧面值k22,…其中槽值和侧面值可以是数值、字符串、布尔值,也可以是一个动作或过程,甚至还可以是另一个框架的名字。第6章知识表示例6.1一个描述“教师”的框架:框架名:教师类属:知识分子工作:范围:(教学,科研;缺省:教学)性别:(男,女)学历:(中师,高师)类型:(小学教师,中学教师,大学教师)可以看出,这个框架的名字为“教师”,它含有5个槽,槽名分别是“类属”、“工作”、“性别”、“学历”和“类型”。这些槽名的右面就是其值,如“知识分子”、“男”、“女”、“高师”、“中师”等等。其中“知识分子”又是一个框架名,“范围”、“缺省”就是侧面名,其后是侧面值,如:“教学”、“科研”等。用括的槽值也是框架名。第6章知识表示例6.2一个描述“大学教师”的框架:框架名:大学教师类属:教师学历:(学士,硕士,博士)专业:学科专业职称:(助教,讲师,副教授,教授)外语:语种:范围:(英,法,日,俄,德,…)缺省:英水平:(优,良,中,差)缺省:良描述一个具体教师的框架:框架名:教师-1类属:大学教师姓名:李明性别:男年龄:25学历:博士职称:助教专业:计算机应用外语:英水平:良部门:计算机系软件教研室工作:参加工作时间:1995年8月工龄:当前年份-参加工作年份工资:工资单可以看出,两个框架之间存在一种层次关系。一般称前者为上位框架(或父框架),后者为下位框架(或子框架)。当然,上位和下位是相对而言的。第6章知识表示6.2.2框架的表达能力由框架的形式可以看出,框架适合表达结构性的知识。所以,概念、对象等知识最适于用框架表示。其实,框架的槽就是对象的属性或状态,槽值就是属性值或状态值。框架还可以表示行为(动作),所以,有些过程性事件或情节也可用框架网络来表示。第6章知识表示例6.4关于房间的框架:框架名:房间墙数x1:缺省:x1=4条件:x10窗数x2:缺省:x2=2条件:x2≥0门数x3:缺省:x3=1条件:x30前墙:(墙框架(w1,d1))后墙:(墙框架(w2,d2))左墙:(墙框架(w3,d3))右墙:(墙框架(w4,d4))天花板:天花板框架地板:地板框架门:门框架窗:窗框架条件:w1+w2+w3+w4=x2d1+d2+d3+d4=x3类型:(办公室,教室,会客室,卧室,厨房,仓库,…)第6章知识表示例6.5机器人纠纷问题的框架描述。图6―1机器人纠纷问题框架名:〈打人-1〉动作:打动作发出者:罗宾动作接受者:苏西后果:(〈打人-2〉,〈哭泣-1〉)框架名:〈打人-2〉动作:打动作发出者:苏西动作接受者:罗宾后果:(〈打人-1〉,〈哭泣-2〉)框架名:〈哭-1〉动作:哭动作发出者:苏西后果:(〈得意,懊悔)框架名:〈哭-2〉动作:哭动作发出者:罗宾后果:心里平衡第6章知识表示产生式规则也可用框架表示。例:产生式如果头痛且发烧,则患感冒。用框架表示可为:框架名:诊断1前提:条件1:头痛条件2:发烧结论:患感冒第6章知识表示6.2.3基于框架的推理基于框架的推理方法是继承:子框架可以拥有其父框架的槽及其槽值。实现继承的操作有匹配、搜索和填槽。匹配:问题框架同知识库中的框架模式匹配。所谓问题框架,就是要求解某个问题时,先把问题用一个框架表示出来,然后与知识库中的已有框架进行匹配。如果匹配成功,就可获得有关信息。搜索就是沿着框架间的纵向和横向联系,在框架网络中进行查找。搜索的目的是为了获得有关信息。第6章知识表示6.2.4框架的程序语言实现PROLOG可方便地实现框架。用PROLOG实现框架表示,一般采用含结构或表的谓词来实现。因为框架实际上就是树,而PROLOG的结构也是树.表的元素个数和层数都不限定,可动态变化,因此,更适于表示一般的框架。例如,前面的“教师”框架用PROLOG可表示如下:frame(name(教师),kind_of(知识分子),work(scope(教学,科研),default(教学)),sex(男,女),reco_of_f_s(中师,高师),type(“小学教师”,“中学教师”,“大学教师”)).第6章知识表示框架的通用表示形式参考:其中的subtreelist是递归定义的。按此定义所有框架都取统一的表示形式。domainsname=name(string)body=body(subtreelist)subtreelist=subtree*subtree=st(string,subtreelist)databaseframe(name,body)clausesframe(name(“教师”),body([st(“类属”,[st(“知识分子”,[])]),st(“工作”,[st(“范围”,[st(“教学”,[]),st(科研,[])]),st(缺省,[st(教学,[])])]),st(性别,[st(男,[]),st(女,[])]),st(学历,[st(中师,[]),st(高师,[])]),st(类型,[st(小学教师,[]),st(中学教师,[]),st(大学教师[])])]))第6章知识表示6.3语义网络6.3.1语义网络的概念语义网络是由节点和边(也称有向弧)组成的一种有向图。其中节点表示事物、对象、概念、行为、性质、状态等;有向边表示节点之间的某种联系或关系。例如图是一个语义网络。其中,边上的标记是边的语义。图6―2苹果的语义网络第6章知识表示语义网络的概念最先由Quillian提出来的(1968年,博士论文):把语义网络作为人类联想记忆的一个显式心理模型。所以,语义网络也称联想网络。语义网络可以划分为五个级别:执行级、逻辑级、认识论级、概念级和语言学级。七种类型:(1)命题语义网(包括分块联想网络);(2)数据语义网:以数据为中心的语义网络;(3)语言语义网:用于自然语言的分析和理解;(4)结构语义网:描述客观事物的结构,常见于模式识别和机器学习等领域;(5)分类语义网:描述抽象概念及其层次;(6)推理语义网:是一种命题网,但它已在某种程度上规范化,更适于推理;(7)框架语义网:与框架相结合的第6章知识表示6.3.2语义网络的表达能力语义网络不仅可以表示事物的属性、状态、行为等,而且更适合于表示事物之间的关系和联系。而表示一个事物的层次、状态、行为的语义网络,也可以看作是该事物与其属性、状态或行为的一种关系。抽象地说,语义网络可表示事物之间的关系。因此,关系(或联系)型的知识和能化为关系型的知识都可以用语义网络来表示。智能系统专家思维专家知识困难问题专家系统是一种能解决具有能模拟第6章知识表示1.实例关系实例关系表示类与其实例(个体)之间的关系。这是最常见的一种语义关系。例如,“小华是一个大学生”就可表示为图6―4。其中,关系“是一个”一般标识为“is-a”,或ISA。小华大学生ISA第6章知识表示2.分类(或从属、泛化)关系分类关系是指事物间的类属关系,图6―5就是一个描述分类关系的语义网络。其中下层概念节点除了可继承、细化、补充上层概念节点的属性外,还出现了变异的情况:鸟是鸵鸟的上层概念节点,其属性是“有羽毛”、“会飞”,但鸵鸟的属性只是继承了“有羽毛”这一属性,而把鸟的“会飞”变异为“不会飞”。其中,关系“是一种”一般标识为“akindof”或AKO。第6章知识表示3.组装关系如果下层概念是上层概念的一个方面或者一部分,则称它们的关系是组装关系。例如图6―6所示的语义网络就是一种聚集关系。其中,关系“一部分”一般标识为“apartof”。桌子桌腿桌面一部分apartof第6章知识表示4.属性关系属性关系表示对象的属性及其属性值。如图表示simon是一个人,男性,40岁,职业是教师。PersonsumonISA男40教师sexageprofession第6章知识表示张三计算机学会是成员5.集合与成员关系意思是“是……的成员”,它表示成员(或元素)与集合之间的关系。例如,“张三是计算机学会会员”。其中,关系“是成员”一般标识为“a-member-of”。第6章知识表示第6章知识表示6.逻辑关系如果一个概念可由另一个概念推出,两个概念间存在因果关系,则称它们之间是逻辑关系。图6―9所示的语义网络就是一个逻辑关系。雨天外出ANDOR带雨披带雨伞则第6章知识表示7.方位关系在描述一个事物时,经常需要指出它发生的时间、位置,或者指出它的组成、形状等等,此时可用相应的方位关系语义网络表示。例如事实:张宏是石油学院的一名助教;石油学院位于西安市电子二路;张宏今年25岁。电子2路石油学院张宏助教西安市区25岁位于工作在职务属于年龄第6章知识表示8.所属关系所属关系表示“具有”的意思。例如“狗有尾巴”图6―11表示所属关系的语义网络狗尾巴have第6章知识表示语义网络中的语义关系是多种多样的,一般根据实际关系定义。如常见的还有before、after、at等表示时间次序关系和located-on、located-under等表示位置关系。进一步,还可对带有全称量词和存在量词的谓词公式的语义加以表示。语义网络实际上是一种复合的二元关系图。网络中的一条边就是一个二元关系,而整个网络可以看作是由这些二元关系拼接而成。第6章知识表示还可以从语句角度来考察语义网。例如,对于如下的语句(或事件):小王送给小李一本书。用语义网络可表示如图,其中S代表整个语句。这种表示被称为是自然语言语句的深层结构表示。送书小王小李书giverrecipientSobject第6章知识表示语义网络

1 / 40
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功