第三章 知识表示和推理之框架表示法
- 格式:ppt
- 大小:200.00 KB
- 文档页数:33
常用的知识表示方法知识表示方法是人工智能中一个非常重要的领域,其主要目的是设计一种计算机程序,使其能够利用已有的知识去推理、学习和解决新问题。
在现代人工智能系统中,有许多常用的知识表示方法,包括逻辑表示、产生式表示、框架表示、语义网络表示、神经网络表示、本体表示等等。
下面将分别对这些知识表示方法展开详细的描述。
1. 逻辑表示逻辑表示是指使用逻辑语句来描述知识的方式。
这种表示方法最早应用于人工智能领域,它使用命题逻辑、谓词逻辑、模态逻辑等形式化逻辑体系来表达知识。
逻辑表示法的优点是表达简单直观,易于推理,而且能够容易地与其它知识表示方法相结合。
该方法的主要缺点是计算复杂度较高,不适用于大规模的知识表示。
2. 产生式表示产生式表示法是一种基于规则的知识表示方法,它通过一系列的规则来描述问题解决过程。
规则通常由条件和结果两部分组成,当条件满足时,就会执行规则,得到相应的输出结果。
产生式表示法的优点是表达简单易懂,适合大规模知识的表示和处理。
该方法的主要缺点是规则的编写和管理比较困难,而且可能出现死循环等问题。
3. 框架表示框架表示法是一种以对象为中心的知识表示方法,它通过描述事物的属性、关系、功能等方面来构建一个框架模型,从而达到表示知识的目的。
框架表示法的优点是具有良好的结构、易于维护和扩展。
该方法的主要缺点是无法处理复杂的关系和不确定性,而且不适用于处理嵌套结构。
4. 语义网络表示语义网络表示法是一种以图形为基础的知识表示方法,它通过节点和边的组合来描述概念、关系和属性等知识。
语义网络表示法的优点是视觉化表达直观,易于理解和调试,适用于复杂的知识系统。
该方法的主要缺点是不适用于大量数据的处理,因为图形结构比较复杂,计算开销较大。
5. 基于案例的表示基于案例的表示法是一种通过描述已有的实例来表达知识的方法,它将具体的案例作为基本单位,通过比较和分析不同案例之间的相似性和差异性来实现知识的表示和推理。
框架表示法1.简介框架表示法理论是由美国的人工智能学者明斯基在1975年首先提出来的。
该理论认为人们对现实世界中各种事物的认识都是以一种类似于框架的结构存储在记忆中,当面临一个新事物时,就从记忆中找出一个合适的框架,并根据实际情况对其细节加以修改、补充,从而形成对当前事物的认识。
也就是说框架表示法表示的是一种经验性的知识。
2.1 概述框架是描述对象(事物,事件或概念)属性的一种数据结构。
框架网络是由不同的框架通过属性之间的关系而建立起来的联系,从而构成了框架网络。
框架网络能够充分表达相关对象之间的各种关系。
2.2 框架的基本形式一个框架由若干个被称为“槽”的结构组成,每一个槽又可根据实际需要分为若干个“侧面”。
槽用于描述对象的某一方面的属性。
侧面用于描述相应属性的一个方面。
槽和侧面所具有的属性值分别称为槽值和侧面值.2.3 框架的BNF描述<框架式>::=<框架头><槽部分>[<约束部分>]<框架头>::=框架名<框架名的值><槽部分>::=<槽>,[<槽>]<约束部分>::=约束<约束条件>,[<约束条件>]<框架名的值>::=<符号名>|<符号名>(<参数>,[<参数>])<槽>::=<槽名><槽值>|<侧面部分><槽名>::=<系统预定义槽名>|<用户自定义槽名><槽值>::=<静态描述>|<过程>|<谓词>|<框架名的值>|<空><侧面部分>::=<侧面名>,[<侧面>]<侧面>::=<侧面名><侧面值><侧面名>::=<系统预定义侧面名>|<用户自定义侧面名><侧面值>::=<静态描述>|<过程>|<谓词>|<框架名的值>|<空><静态描述>::=<数值>|<字符串>|<布尔值>|<其他值><过程>::=<动作>|<动作>,[<动作>]<参数>::=<符号名>几点说明:(1)框架名的值允许带有用符号名表示的参数.当一个框架A调用另一个带有符号名参数的框架B时A需要为B提供相应的参数.(2)当槽值或侧面值是一个过程时,它既可以是一个动作串又可以是对某个过程的调用.2.4 框架的知识表示步骤框架是一种描述对象属性并反映相关个对象间的各种关系的数据结构,并且可以把它视作知识单位.对于要表达的知识,其中可能包含着许多对象,各个对象之间有着各种各样的联系,将这些有关系的对象的框架联结起来便形成了要表达知识的框架系统.框架表示知识的具体步骤:1)分析代表的知识对象及其属性,对框架中的槽进行合理设置.在槽及侧面的设置上要考虑两方面的因素:①要符合系统的设计目标,凡是系统目标中所要求的属性或是问题求解过程中可能用到的属性都要设置相应的槽.②不能盲目的把所有的甚至无用的属性都用槽表示出来.2)对各对象间的各种联系进行考察.使用一些常用的或根据具体需要定义一些表达联系的槽名,来描述上下层框架间的联系.在框架系统中,对象间的联系是通过各个槽的槽名来表述的.通常在框架系统中定义一些公用,常用且标准的槽名,并把这些槽名称为系统预定义槽名.易于理解.比如常见的有:ISA,AKO和Instance等3.1 框架推理的基本过程在用框架表示知识的系统中,推理主要是通过框架匹配与填槽来实现的.首先把要求解的问题用一个称为问题框架的框架表示出来,然后把初始问题框架与知识库中的框架进行匹配.比较原则是如果两个框架对应的槽没有冲突或满足预设的某些条件就可以认为两个框架匹配成功.3.2 框架推理形式框架链是一种复杂的语义网络.语义网络中的推理在框架中同样可以进行,但对框架最主要的推理形式为填充槽值.填充槽值有几种办法实现,主要有两种:匹配和继承.1)匹配框架是一类事物的完整描述,因此框架匹配只能做到部分匹配.2) 继承继承有两种:直接继承和复杂继承直接继承:下层框架直接从上层框架中继承所有的属性值和条件.复杂继承:以时序继承为例,即有条件的继承.个框架是不完全匹配,或称为不确定性匹配.框架表示法的特点:优点:1)结构性2)继承性由于子框架可以继承父框架的槽值,也可以进行补充和修改,因此多重继承有可能产生属性描述的多义性.如何解决,目前还没有统一的方法.不足:不善于表示过程性知识,因此可以把框架表示法与产生式结合起来已取得互补的效果.。
知识表⽰的⽅法——逻辑表⽰法、产⽣式表⽰法、框架表⽰法、语义⽹络表⽰法、⾯向对象表⽰知识表⽰的⽅法知识表⽰⽅法种类繁多,通常有直接表⽰、逻辑表⽰、产⽣式规则表⽰法、语义⽹络表⽰法、框架表⽰法、脚本表⽰⽅法、过程表⽰、混合型知识表⽰⽅法、⾯向对象的表⽰⽅法等。
在本⽂中,着重介绍⽬前使⽤较多的知识表⽰⽅法。
⽬前使⽤较多的知识表⽰⽅法主要有:逻辑表⽰法、产⽣式表⽰法、框架表⽰法、语义⽹络表⽰法、⾯向对象表⽰等等。
2.3.2.1 ⼀阶谓词逻辑表⽰法[45]通过引⼊谓词、函数来对知识加以形式化描述,获得有关的逻辑公式,进⽽以机器内部代码表⽰的⼀种⽅法。
谓词逻辑是⼀种形式语⾔,它与⼈类的⾃然语⾔⽐较接近,是⽬前能够表达⼈类思维活动的⼀种最精确的语⾔,它具有丰富的表达能⼒,因⽽可以表⽰⼤量常识知识。
它具有简单、⾃然、精确、灵活、容易实现等特点。
⼀阶谓词的⼀般形式为 P(x1, x2 (x)n)。
其中,P 是谓词,x1, x2 (x)n是常量、变元或函数。
谓词逻辑适⽤于表⽰事物的状态、属性、概念等事实性的知识,也可以⽤来表⽰事物间关系的知识,即规则。
例如:物体 A 在物体 B 的上⾯,可以表⽰为:On(A,B);物体 A 是书,可以表⽰为:book(A);书 A 在书 B 上,可以表⽰为:On(book(A),book(B))。
⼀阶谓词逻辑表⽰法的局限性在于它难以表达不确定性知识和启发性知识,推理⽅法在事实较多时易于出现组合爆炸,且推理过程繁杂、效率低。
2.3.2.2 产⽣式表⽰法多数较为简单的专家系统(Expert System)都是以产⽣式表⽰知识,相应的系统被称作产⽣式系统。
产⽣式系统,由知识库和推理机组成。
其中知识库由事实库和规则库组成。
事实库是已知事实的集合,规则库是产⽣式规则的集合。
规则则是产⽣式规则。
规则库蕴涵着将问题从初始状态转换到解状态的那些变换规则,规则库是专家系统的核⼼部分。
规则可以表⽰成与或树的形式,基于事实库中的事实通过与或树求值的过程就是推理。