1、2022-10-241人工智能原理第二讲第二讲知识表示知识表示 之之框架框架/剧本表示剧本表示主讲:王祖喜主讲:王祖喜 华中科技大学图像所华中科技大学图像所2022-10-242知识的表示方法谓词逻辑法谓词逻辑法 状态空间法状态空间法问题归约法问题归约法语义网络法语义网络法 框架表示法框架表示法 面向对象表示面向对象表示 剧本剧本(script)(script)表示表示 过程过程(procedure)(procedure)表示表示 小结小结2022-10-243知识的框架表示2022-10-2441.概念概念知识的框架表示法知识的框架表示法1975年由年由M.Minsky提出,最早用作视觉感知
2、、自然语言对话提出,最早用作视觉感知、自然语言对话等问题的知识表示;目前已作为一种通用数据结构来表示知识对象等问题的知识表示;目前已作为一种通用数据结构来表示知识对象(实体实体)。框架理论认为,人们对现实世界中各种事物的认识都是以一种类似于框架的结框架理论认为,人们对现实世界中各种事物的认识都是以一种类似于框架的结构存储在记忆中的,当面临一种新事物时,就从记忆中找出一个合适的框架并构存储在记忆中的,当面临一种新事物时,就从记忆中找出一个合适的框架并根据实际情况对其细节加以修改、补充,从而形成对当前事物的认识。根据实际情况对其细节加以修改、补充,从而形成对当前事物的认识。例如:当一个人要走近一个
3、教室时,他能根据以往的知识,想象到这个教室一例如:当一个人要走近一个教室时,他能根据以往的知识,想象到这个教室一定有四面墙,有门、窗、天花板和地板,有课桌、椅子、黑板等,尽管他对这定有四面墙,有门、窗、天花板和地板,有课桌、椅子、黑板等,尽管他对这个教室的细节还不清楚,但对教室的基本结构是可以预见的。他之所以能做到个教室的细节还不清楚,但对教室的基本结构是可以预见的。他之所以能做到这一点,是由于他通过以往的认识活动已经在记忆中建立了关于教室的框架,这一点,是由于他通过以往的认识活动已经在记忆中建立了关于教室的框架,该框架不仅指出了相应事物的名称(教室),而且还指出了事物各有关方面的该框架不仅指
4、出了相应事物的名称(教室),而且还指出了事物各有关方面的属性(如有四面墙、有课桌、有黑板,属性(如有四面墙、有课桌、有黑板,)。通过对该框架的查找,很容易)。通过对该框架的查找,很容易得到教室的各有关特征。得到教室的各有关特征。知识的框架表示2022-10-245当他进入教室后,经观察得到了教室的大小、门窗的个数、桌凳的数量、颜色当他进入教室后,经观察得到了教室的大小、门窗的个数、桌凳的数量、颜色等细节,把它们填入到教室框架中,就得到了教室框架的一个具体事例,称为等细节,把它们填入到教室框架中,就得到了教室框架的一个具体事例,称为事例框架。事例框架。2.框架定义框架定义1.框架是用于描述具有固
5、定的静态对象的通用数据结构,该对象用框架是用于描述具有固定的静态对象的通用数据结构,该对象用“对象对象属属性性属性值属性值”表示;表示;2.一个框架由若干个槽(一个框架由若干个槽(Slot)组成,槽用于描述属性;)组成,槽用于描述属性;3.一个槽又可由若干个侧面组成。侧面用于描述相应属性的一个方面;一个槽又可由若干个侧面组成。侧面用于描述相应属性的一个方面;4.槽和侧面所具有的属性值分别称为槽值和侧面值;槽和侧面所具有的属性值分别称为槽值和侧面值;5.一个侧面可有一个或多个侧面值。一个侧面可有一个或多个侧面值。6.对框架、槽或侧面,都可以复加上一些说明性信息,一般是指一些约束条件,对框架、槽或
6、侧面,都可以复加上一些说明性信息,一般是指一些约束条件,用于指出什么样的值才能填入到槽或侧面中。用于指出什么样的值才能填入到槽或侧面中。7.7.槽值或侧面值既可以是数值,字符串,布尔值,也可以是一个在满足某个给定槽值或侧面值既可以是数值,字符串,布尔值,也可以是一个在满足某个给定条件时要执行的动作或过程,特别是它还可以是另一个框架的名字,从而实现条件时要执行的动作或过程,特别是它还可以是另一个框架的名字,从而实现一个框架对另一个框架的调用一个框架对另一个框架的调用 8.框架实质上是一个层次的嵌套链接表。框架实质上是一个层次的嵌套链接表。2022-10-246 槽名槽名1 1 侧面名侧面名1 1
7、 值值1 1,值,值2 2,值值p p1 1 侧面名侧面名2 2 值值1 1,值,值2 2,值值p p2 2 侧面名侧面名m m1 1 值值1 1,值,值2 2,值值p pm1m1槽名槽名2 2 侧面名侧面名1 1 值值1 1,值,值2 2,值值q q1 1 侧面名侧面名2 2 值值1 1,值,值2 2,值值q q2 2 侧面名侧面名m m2 2 值值1 1,值,值2 2,值值q qm2m2 槽名槽名n n 侧面名侧面名1 1 值值1 1,值,值2 2,值值r r1 1 侧面名侧面名2 2 值值1 1,值,值2 2,值值r r2 2 侧面名侧面名mn mn 值值1,1,值值2,2,值值r rm
8、nmn约束:约束:约束条件约束条件1 1 约束条件约束条件n n 框架的一般结构:2022-10-247 例例1:框架名:框架名:商品名称:商品名称:生产厂家:生产厂家:出售商店出售商店:处处 罚:罚:处理方式:处理方式:处罚依据:处罚依据:处罚时间:单位(年、月、日)处罚时间:单位(年、月、日)经办部门:经办部门:在这个框架中,有在这个框架中,有4个槽,其中,个槽,其中,“处罚处罚”槽有槽有4个侧面,侧面个侧面,侧面“处罚时间处罚时间”用用“单单位位”指出了一个填值时的标准限制。指出了一个填值时的标准限制。2022-10-248例例2:框架名框架名:姓名:单位(姓、名)姓名:单位(姓、名)年
9、龄:单位(岁)年龄:单位(岁)性别:范围(男、女)性别:范围(男、女)缺省(男)缺省(男)职称:范围(教授、副教授、职称:范围(教授、副教授、讲师、助教)讲师、助教)缺省(讲师)缺省(讲师)部门:单位(系、教研室)部门:单位(系、教研室)住址:住址:工资:工资:开始工作时间:单位(年、月)开始工作时间:单位(年、月)截止时间:单位(年、月)截止时间:单位(年、月)缺省:现在缺省:现在 把某教师的一组信息填入教师把某教师的一组信息填入教师框架的各个槽框架的各个槽,就得到了相应框架就得到了相应框架的一个事例框架的一个事例框架:框架名:框架名:-1 姓名:夏冰姓名:夏冰 年龄:年龄:3636 性别:
10、女性别:女 职称:副教授职称:副教授 部门:计算机教研室部门:计算机教研室 住址住址:工资:工资:开始工作时间:开始工作时间:1988.91988.9 截止时间:截止时间:1996.91996.9 2022-10-249例1:硕士生的具体框架框架名:框架名:姓名:单位(姓,名)姓名:单位(姓,名)性别:范围(男,女)性别:范围(男,女)默认:男默认:男年龄:单位(岁)年龄:单位(岁)条件:岁条件:岁 16学习专业:单位(专业名)学习专业:单位(专业名)研究方向:单位(方向名)研究方向:单位(方向名)导师姓名:单位(姓,名)导师姓名:单位(姓,名)参加课题:范围(国家级,省部级,其它)参加课题:
11、范围(国家级,省部级,其它)默认:国家级默认:国家级学籍:学籍:住址:单位(楼号,房间号)住址:单位(楼号,房间号)电话:单位(区号),话机号)电话:单位(区号),话机号)入学时间:单位(年,月)入学时间:单位(年,月)学制:单位(年)学制:单位(年)默认:默认:4年年2022-10-2410硕士生的实例框架框架名:框架名:姓名:杨杨姓名:杨杨性别:女性别:女年龄:年龄:23学习专业:计算机应用技术学习专业:计算机应用技术研究方向:人工智能研究方向:人工智能导师姓名:林海导师姓名:林海参加课题:参加课题:学籍:学籍:住址:住址:16号楼号楼316房间号房间号电话:(电话:(010)666688
12、88入学时间:入学时间:2000年年9月月学制:学制:2022-10-2411:=:=框架名框架名:=,:=约束约束,:=|(,):=|:=|:=|:=,:=:=|:=|:=|:=|,:=2022-10-2412框架系统的基本结构框架系统的基本结构是通过诸框架之间的横向或框架系统的基本结构是通过诸框架之间的横向或纵向联系来实现的。纵向联系来实现的。(1)框架之间的横向联系)框架之间的横向联系一个框架的槽值或侧面值可以是另外一个框架的名字。一个框架的槽值或侧面值可以是另外一个框架的名字。如,如,“硕士生硕士生”框架合框架合“硕学籍硕学籍”框架之间为横向联系。框架之间为横向联系。(2)框架之间的纵
13、向联系)框架之间的纵向联系用框架表示具有演绎关系的知识结构时,下层框架与上用框架表示具有演绎关系的知识结构时,下层框架与上层框架之间具有一种继承关系,这种具有继承关系的框层框架之间具有一种继承关系,这种具有继承关系的框架之间的联系称为纵向关系。架之间的联系称为纵向关系。2022-10-2413学生框架为:框架名:框架名:姓名:单位(姓,名)姓名:单位(姓,名)性别:范围(男,女)性别:范围(男,女)默认:男默认:男年龄:单位(岁)年龄:单位(岁)住址:单位(楼号,房间号)住址:单位(楼号,房间号)电话:单位(区号),话机号)电话:单位(区号),话机号)入学时间:单位(年,月)入学时间:单位(年
14、,月)学制:单位(年)学制:单位(年)2022-10-2414硕士生框架为:框架名:框架名:继承:继承:学籍:学籍:研究方向:单位(方向名)研究方向:单位(方向名)导师姓名:单位(姓,名)导师姓名:单位(姓,名)参加课题:范围(国家级,省部级,其它)参加课题:范围(国家级,省部级,其它)默认:国家级默认:国家级学位论文:单位(论文题目)学位论文:单位(论文题目)默认:题目未定默认:题目未定2022-10-2415计算机系硕士生框架为:框架名:框架名:继承:继承:专业:范围(计算机应用技术,计算机软件及理专业:范围(计算机应用技术,计算机软件及理论)论)默认:计算机应用技术默认:计算机应用技术使
15、用计算机:单位(计算机的型号)使用计算机:单位(计算机的型号)2022-10-2416例:一个计算机系硕士生的实例框架框架名:框架名:继承:继承:姓名:柳青姓名:柳青性别:女性别:女年龄:年龄:23研究方向:人工智能研究方向:人工智能.2022-10-2417例1:一个教室A的框架上下层是上下层是part-of关系,黑板是教关系,黑板是教室室A的一部分,但黑板的结构、的一部分,但黑板的结构、性能与教室是完全不同的。性能与教室是完全不同的。最上面是主框架,最上面记着框最上面是主框架,最上面记着框架名,其他部分是由槽和值组成。架名,其他部分是由槽和值组成。槽用中文写出,值用小长方形表槽用中文写出,
16、值用小长方形表示。示。(1)某些值可以是另一个子框架。)某些值可以是另一个子框架。如左墙、右墙、前墙,而且子框如左墙、右墙、前墙,而且子框架可以共享。架可以共享。(2)某些值可以空着,等适当的某些值可以空着,等适当的时候再去填写。时候再去填写。2022-10-2418例2:拱框架2022-10-2419例3:动物分类框架2022-10-24203.3.框架网络框架网络框架间的横向联系:框架间的横向联系:由于框架中的槽值或侧面值都可以是另一个框架的名字,这就在框架之间由于框架中的槽值或侧面值都可以是另一个框架的名字,这就在框架之间 建立起建立起了联系,通过一个框架可以找到另一个框架了联系,通过一
17、个框架可以找到另一个框架,这称为横向联系;这称为横向联系;框架间的纵向联系:框架间的纵向联系:举例说明:在一个学校中,无论是教师,还是学生以及在学校工作的其他人员,举例说明:在一个学校中,无论是教师,还是学生以及在学校工作的其他人员,如干部,实验员,工人等,尽管他们所承担的任务不同,但由于他们都处于学校如干部,实验员,工人等,尽管他们所承担的任务不同,但由于他们都处于学校这个环境中,必然会有一些共同的属性,因此,在对他们进行描述时,可以将它这个环境中,必然会有一些共同的属性,因此,在对他们进行描述时,可以将它们具有的共同属性抽取出来,构成一个上层框架,然后再对各类人员独有的属性们具有的共同属性
18、抽取出来,构成一个上层框架,然后再对各类人员独有的属性分别构成下层框架,为了指明框架间的这种上,下关系,可在下层框架中设立一分别构成下层框架,为了指明框架间的这种上,下关系,可在下层框架中设立一个专用的槽,用以指出他的上层框架是哪一个。这样就在框架间建立了纵向联系;个专用的槽,用以指出他的上层框架是哪一个。这样就在框架间建立了纵向联系;而且对于这种联系,下层框架还可以继承上层框架的属性及值,避免了重复描述,而且对于这种联系,下层框架还可以继承上层框架的属性及值,避免了重复描述,节约了时间和空间的开销。节约了时间和空间的开销。框架间的继承性:框架间的继承性:继承性是框架表示法的一个重要特性,它不
19、仅可以在两个框架之间实现继承关系,继承性是框架表示法的一个重要特性,它不仅可以在两个框架之间实现继承关系,而且还可以通过两两的继承关系,从最低层追搠到最高层,使高层的信息逐层向而且还可以通过两两的继承关系,从最低层追搠到最高层,使高层的信息逐层向低层传递。低层传递。2022-10-2421 像这样具有横向联系及纵向联系的一组框架称为像这样具有横向联系及纵向联系的一组框架称为框架网络框架网络。下图是一个关于师生员工的框架网络。下图是一个关于师生员工的框架网络。师生员工框架师生员工框架教职工框架教职工框架学生框架学生框架教师框架教师框架工人框架工人框架 电子系学生框架电子系学生框架机械系学生框架机
20、械系学生框架教师教师1 教师教师n 学生学生n 学生学生1 师生员工框架师生员工框架用于描述师生员工的共同属性,例如姓名,性别,年龄等;用于描述师生员工的共同属性,例如姓名,性别,年龄等;教职工框架教职工框架用于描述教师,干部,工人的共同属性,凡是在师生员工框用于描述教师,干部,工人的共同属性,凡是在师生员工框 架中已指出的属性在这里可不再重复描述;架中已指出的属性在这里可不再重复描述;(以此类推)(以此类推)教师框架,工人框架教师框架,工人框架其中也只需描述只有他们自己具有的属性。其中也只需描述只有他们自己具有的属性。2022-10-2422 注意注意 1.如果一个在上层框架中描述的属性在下
21、层框架需作进一步说明时,则需要如果一个在上层框架中描述的属性在下层框架需作进一步说明时,则需要在下层框架中再次给出描述。例如,设在师生员工框架中对年龄槽的描述是:在下层框架中再次给出描述。例如,设在师生员工框架中对年龄槽的描述是:年龄:单位(岁)年龄:单位(岁)由于学生一般都在七岁开始上学,因此学生的年龄可由由于学生一般都在七岁开始上学,因此学生的年龄可由 年龄年龄=学龄学龄+7 得到,所以在学生框架中仍可设置年龄槽,并在该槽的描述中给出计算年得到,所以在学生框架中仍可设置年龄槽,并在该槽的描述中给出计算年龄的过程。龄的过程。2.如果在下层框架中对某些槽没有作特别的声明,那么它将自动继承上层框
22、如果在下层框架中对某些槽没有作特别的声明,那么它将自动继承上层框架相应槽的槽值。架相应槽的槽值。下面具体给出上述几个框架的描述:下面具体给出上述几个框架的描述:2022-10-2423师生员工框架为:师生员工框架为:框架名:框架名:姓名:姓名:单位(姓,名)单位(姓,名)年龄:年龄:单位(岁)单位(岁)性别:性别:范围(男,女)范围(男,女)缺省:男缺省:男 健康状况:健康状况:范围范围(健康(健康,一般一般,差)差)缺省:一般缺省:一般 住址:住址:教职工框架为:教职工框架为:框架名:框架名:继承:继承:工作类别:范围工作类别:范围(教师(教师,干部干部,工人)工人)缺省:教师缺省:教师 开
23、始工作时间:单位(年,月)开始工作时间:单位(年,月)截止工作时间:单位(年,月)截止工作时间:单位(年,月)缺省:现在缺省:现在 离退休状况:范围(离休,退休)离退休状况:范围(离休,退休)缺省:退休缺省:退休2022-10-2424教师框架为:教师框架为:框架名:框架名:继承继承 部门:单位(系,教研室)部门:单位(系,教研室)语种:范围(英语语种:范围(英语,法语法语,日语日语,德语德语,俄语)俄语)缺省:英语缺省:英语 外语水平:范围(优,良,中,差)外语水平:范围(优,良,中,差)缺省:良缺省:良 职称:范围(教授职称:范围(教授,副教授副教授,讲师讲师,助教)助教)缺省:讲师缺省:
24、讲师 研究方向:研究方向:某个教师的事例框架为:某个教师的事例框架为:框架名:框架名:继承:继承:姓名:孙林姓名:孙林 年龄:年龄:28 健康状况:健康健康状况:健康 部门:计算机系软件教研室部门:计算机系软件教研室 语种:德语语种:德语 开始工作时间:开始工作时间:1985.9 .2022-10-2425 由以上框架描述可以看出:由以上框架描述可以看出:(1)在框架网络中。既有用在框架网络中。既有用“继承继承“槽指出的上、下层框架间的纵向联系,槽指出的上、下层框架间的纵向联系,也有以框架名作为槽值指出的框架间的横向联系,因此框架网络之间是也有以框架名作为槽值指出的框架间的横向联系,因此框架网
25、络之间是一个纵横交错的复杂的框架体系结构。一个纵横交错的复杂的框架体系结构。(2)原则上说,事例框架中的每一个槽都应给出槽值,但对可以继承上层原则上说,事例框架中的每一个槽都应给出槽值,但对可以继承上层框架槽值的槽,其槽值可不给出。例如在上面的教师框架槽值的槽,其槽值可不给出。例如在上面的教师-1的框架中,虽然的框架中,虽然没有给出性别,职称槽及其槽值,但由继承性可知孙林的性别为没有给出性别,职称槽及其槽值,但由继承性可知孙林的性别为“男男“,职称为讲师。职称为讲师。2022-10-24264.框架中槽的设置与组织框架中槽的设置与组织 框架是一种集事物各方面属性的描述为一体,并反映相关事物间各
26、种关系的数据结构。框架是一种集事物各方面属性的描述为一体,并反映相关事物间各种关系的数据结构。在此结构中,在此结构中,槽起至关重要的作用,因为不仅要用他描述事物各方面的属性,而且还槽起至关重要的作用,因为不仅要用他描述事物各方面的属性,而且还要用他指出相关事物间的复杂关系要用他指出相关事物间的复杂关系。因此要注意以下几个方面的关系:。因此要注意以下几个方面的关系:(1)充分表达事物各有关方面的属性充分表达事物各有关方面的属性合理地设置槽合理地设置槽 在以框架作为知识表示模式的系统中,知识是通过事物的属性来表示的。为使系统具在以框架作为知识表示模式的系统中,知识是通过事物的属性来表示的。为使系统
27、具有丰富的知识,以满足问题的求解的需要,就要求框架中有足够的槽把事物各方面的有丰富的知识,以满足问题的求解的需要,就要求框架中有足够的槽把事物各方面的属性充分表达出来。这里说的属性充分表达出来。这里说的“各有关方面的属性各有关方面的属性”有两方面的含义:有两方面的含义:要与系统的设计目标相一致,凡是系统设计目标所要求的属性,或者问题要与系统的设计目标相一致,凡是系统设计目标所要求的属性,或者问题 求解中有可能要用到的属性都应该用相应的槽把他们表示出来;求解中有可能要用到的属性都应该用相应的槽把他们表示出来;仅仅需要对有关的属性设立槽,不可面面俱到,以免浪费空间和降低系统仅仅需要对有关的属性设立
28、槽,不可面面俱到,以免浪费空间和降低系统 的运行效率。的运行效率。2022-10-2427(2)充分表达相关事物间的各种关系充分表达相关事物间的各种关系由槽中的框架名建立联系由槽中的框架名建立联系 现实世界中的事物一般不是孤立的,彼此之间存在千丝万缕的联系。为了将其中有关现实世界中的事物一般不是孤立的,彼此之间存在千丝万缕的联系。为了将其中有关的联系反映出来,以构成完整的知识体系,需要设置相应的槽来描述这些联系。的联系反映出来,以构成完整的知识体系,需要设置相应的槽来描述这些联系。在框架系统中,事物间的联系是通过在槽中填入相应的框架名来实现,至于它们之间在框架系统中,事物间的联系是通过在槽中填
29、入相应的框架名来实现,至于它们之间究竟是一种什么样的关系,则是由槽名来指明的。究竟是一种什么样的关系,则是由槽名来指明的。在框架表示系统中通常定义一些标准槽名,应用时不用说明就可直接使用称这些槽在框架表示系统中通常定义一些标准槽名,应用时不用说明就可直接使用称这些槽名为系统预定义槽名。现简单介绍几个:名为系统预定义槽名。现简单介绍几个:.ISA槽槽 ISA槽用于指出事物间抽象概念上的类属关系。其直观含义是槽用于指出事物间抽象概念上的类属关系。其直观含义是“是一个是一个”,“是一是一种种”,“是一只是一只”。当它用作某下层框架的槽时,表示该下层框架所描述的事物。当它用作某下层框架的槽时,表示该下
30、层框架所描述的事物是其上层框架的一个特例,上层框架是比下层框架更一般或更抽象的概念。设有下面是其上层框架的一个特例,上层框架是比下层框架更一般或更抽象的概念。设有下面两个框架:两个框架:2022-10-2428框架名:框架名:姓名:单位(姓,名)姓名:单位(姓,名)年龄:单位(岁)年龄:单位(岁)性别:范围(男,女)性别:范围(男,女)缺省:男缺省:男框架名:框架名:ISA:脑力:特好脑力:特好在此例中,棋手框架中的在此例中,棋手框架中的ISA槽指出该框架槽指出该框架所描述的事物是运动员框架所所描述的事物是运动员框架所 描述事物的描述事物的属性及值。属性及值。.AKO槽槽 AKO槽用于具体的指
31、出事物间的类属关系。其直观含义是槽用于具体的指出事物间的类属关系。其直观含义是“是一种是一种”,当当 它用作某下层框架的槽时,就明确的指出该下层框架所描述的事物是其上层它用作某下层框架的槽时,就明确的指出该下层框架所描述的事物是其上层 框架所描述事物的一种,下层框架可以继承其上层框架所描述的属性及值。框架所描述事物的一种,下层框架可以继承其上层框架所描述的属性及值。对上面的例子,可将棋手框架中的对上面的例子,可将棋手框架中的ISA改为改为AKO。2022-10-2429.Subclass槽槽 subclass槽用于指出子类与类(或子集与超集)之间的类属关系。当用它作为某下层槽用于指出子类与类(
32、或子集与超集)之间的类属关系。当用它作为某下层框架的槽时,表示该下层框架是其上层框架的一个子类(或子集)。框架的槽时,表示该下层框架是其上层框架的一个子类(或子集)。在上例中,由于在上例中,由于“棋手棋手”是是“运动员的一个子类,故可将运动员的一个子类,故可将ISA该为该为Subclass。.Instance槽槽 Instance槽用来建立槽用来建立AKO槽的逆关系。当用它作为某上层框架的槽值时,可用来指出槽的逆关系。当用它作为某上层框架的槽值时,可用来指出它的下层框架是哪些。它的下层框架是哪些。框架名:框架名:Instance:,姓名:单位(姓,名)姓名:单位(姓,名)年龄:单位(岁)年龄:
33、单位(岁)性别:范围(男,女)性别:范围(男,女)缺省:男缺省:男2022-10-2430.Part-of槽槽 Part-of槽用于指出部分与全体的关系。当它用作某下层框架的槽时,它指槽用于指出部分与全体的关系。当它用作某下层框架的槽时,它指出该下层框架所描述的事物只是其上层框架所描述的事物的一部分。例如,出该下层框架所描述的事物只是其上层框架所描述的事物的一部分。例如,上层框架是对汽车的描述,下层框架是对轮胎的描述。显然,轮胎是汽车的上层框架是对汽车的描述,下层框架是对轮胎的描述。显然,轮胎是汽车的一部分。一部分。这里应注意将这里应注意将Part-of槽与上面讨论的那四种槽区分开来:槽与上面
34、讨论的那四种槽区分开来:前述前述4种槽是上、下层框架间的类属关系,它们由共同的特性,可以继承;种槽是上、下层框架间的类属关系,它们由共同的特性,可以继承;Part-of槽只指出下层是上层的一个子结构,两者一般不具有共同的特征,槽只指出下层是上层的一个子结构,两者一般不具有共同的特征,不能继承。不能继承。如:上层描述汽车,而下层描述轮胎,轮胎是汽车的一部分,但两者的结构、如:上层描述汽车,而下层描述轮胎,轮胎是汽车的一部分,但两者的结构、性能缺完全不同,这是可选用性能缺完全不同,这是可选用Part-of槽指出其上下层的关系槽指出其上下层的关系部分与全体。部分与全体。2022-10-2431.In
35、fer槽槽 Infer槽用于指出两个框架所描述的事物间的逻辑推理关系,用它可以表示相应的产生槽用于指出两个框架所描述的事物间的逻辑推理关系,用它可以表示相应的产生式规则。式规则。例如:设有下面知识:例如:设有下面知识:如果咳嗽,发烧且流涕,则八成是患了感冒,如果咳嗽,发烧且流涕,则八成是患了感冒,需服用感冒清,一日三次,每次需服用感冒清,一日三次,每次2-3粒,粒,多喝开水多喝开水 对该知识对该知识,可用如下两个框架表示:,可用如下两个框架表示:框架名:框架名:症状症状1:咳嗽:咳嗽 症状症状2:发烧:发烧 症状症状3:流涕:流涕 Infer:可信度:可信度:0.8框架名:框架名:病名:感冒病
36、名:感冒 治疗方法:治疗方法:服用感冒清,一日三次,每次服用感冒清,一日三次,每次2-3粒粒 注意事项注意事项:多喝开水:多喝开水 预后:良好预后:良好.Possible-Reason槽。槽。其作用与其作用与Infer槽作用相反,它用来把某个结论与可能的原因联系起来。槽作用相反,它用来把某个结论与可能的原因联系起来。2022-10-2432(3)对槽及侧面进行合理的组织对槽及侧面进行合理的组织利用其上下层间的继承性利用其上下层间的继承性 基于框架上、下层的继承性,尽量将不同框架中的相同属性抽取出来,放入其上层框基于框架上、下层的继承性,尽量将不同框架中的相同属性抽取出来,放入其上层框架,而在下
37、层框架中只描述相应事物独有的属性。架,而在下层框架中只描述相应事物独有的属性。这样可大大减少信息的重复性,其且有利于知识的一致性。这样可大大减少信息的重复性,其且有利于知识的一致性。例如:例如:将鸽子、啄木鸟、布谷鸟、燕子等动物,用框架将其特征描述出来?将鸽子、啄木鸟、布谷鸟、燕子等动物,用框架将其特征描述出来?上层:有羽毛、会飞、有两只爪等共同特性;上层:有羽毛、会飞、有两只爪等共同特性;下层:各种鸟独有的特征各建一个框架;下层:各种鸟独有的特征各建一个框架;联系:用联系:用AKO或或Instance将上下层联系起来。将上下层联系起来。(4)有利于进行框架推理有利于进行框架推理 用框架表示知
38、识的系统一般由两大部分组成:用框架表示知识的系统一般由两大部分组成:1.由框架及其相互关联构成的知识库(提供求解问题所需要的知识);由框架及其相互关联构成的知识库(提供求解问题所需要的知识);2.由一组解释程序构成的框架推理机(针对用户提出的问题,通过运用知识库中的相由一组解释程序构成的框架推理机(针对用户提出的问题,通过运用知识库中的相关知识完成求解问题的任务,给出问题的解)。关知识完成求解问题的任务,给出问题的解)。框架推理是一个反复进行框架匹配的过程,为了使推理得以进行,通常需要框架推理是一个反复进行框架匹配的过程,为了使推理得以进行,通常需要 设置相设置相应的槽来配合。怎样设置?与推理
39、方法有关。应的槽来配合。怎样设置?与推理方法有关。2022-10-24335.框架系统中求解问题的基本过程框架系统中求解问题的基本过程 在用框架表示知识的系统中,问题的求解主要是通过匹配与填槽实现的。在用框架表示知识的系统中,问题的求解主要是通过匹配与填槽实现的。要求解某个问题时要求解某个问题时:(1)首先把这个问题用一个框架表示出来;首先把这个问题用一个框架表示出来;(2)然后通过与知识库中已有的框架进行匹配,找出一个或几个可匹配的预选然后通过与知识库中已有的框架进行匹配,找出一个或几个可匹配的预选 框架作为初步假设,并在此初步假设的引导下收集进一步的信息框架作为初步假设,并在此初步假设的引
40、导下收集进一步的信息;(框架的匹配是通过对相应的槽的槽名及槽值逐个比较实现的。如果两个框架的各框架的匹配是通过对相应的槽的槽名及槽值逐个比较实现的。如果两个框架的各 对应槽没有矛盾,或者满足预先规定的某些条件,就认为这两个框架可以匹配。)对应槽没有矛盾,或者满足预先规定的某些条件,就认为这两个框架可以匹配。)(3)最后用某种评价方法对预选框架进行评价,以便决定是否接受它。最后用某种评价方法对预选框架进行评价,以便决定是否接受它。由于框架间存在继承关系,两个框架的比较往往牵涉到上层、上上层框架;由于框架间存在继承关系,两个框架的比较往往牵涉到上层、上上层框架;而且框架间的匹配都有不确定性,所以匹
41、配比较困难。在不同的系统中,可而且框架间的匹配都有不确定性,所以匹配比较困难。在不同的系统中,可 采用不同的解决方法,如设置采用不同的解决方法,如设置“必要条件槽必要条件槽”、“充分条件槽充分条件槽”等。等。2022-10-2434框架的推理框架没有固定的推理机理,框架没有固定的推理机理,框架是一种复杂结构的语义网络。因此语义网络框架是一种复杂结构的语义网络。因此语义网络推理中的推理中的匹配匹配和特性和特性继承继承在框架系统中也可以实在框架系统中也可以实行。行。框架系统的推理框架系统的推理和语义网络一样遵循和语义网络一样遵循匹配匹配和和继承继承原则。原则。2022-10-2435除此以外,由于
42、框架用于描述具有固定格式的事除此以外,由于框架用于描述具有固定格式的事物、动作和事件,因此可以在新的情况下,推论物、动作和事件,因此可以在新的情况下,推论出未被观察到的事实。出未被观察到的事实。框架用以下几种途径来帮助实现这一点:框架用以下几种途径来帮助实现这一点:(1)框架包含它所描述的情况或物体的多方面的信息。框架包含它所描述的情况或物体的多方面的信息。这些信息可以被引用,就像已经直接观察到这些信息一这些信息可以被引用,就像已经直接观察到这些信息一样。例如,当一个程序访问一个样。例如,当一个程序访问一个ROOM框架时,不论框架时,不论是否有证据说明屋子里有门,都可以推论出,在屋子里是否有证
43、据说明屋子里有门,都可以推论出,在屋子里至少有一个门。之所以能这样做,是因为至少有一个门。之所以能这样做,是因为ROOM框架框架中包含中包含 对屋子的描述,其中包括在屋子里必须有门的对屋子的描述,其中包括在屋子里必须有门的事实。事实。2022-10-2436(2)框架包含物体必须具有的属性。在填充框架的各个框架包含物体必须具有的属性。在填充框架的各个槽时,要用到这些属性。建立对某一情况的描述要求先槽时,要用到这些属性。建立对某一情况的描述要求先建立对此情况的各个方面的描述。与描述这个情况的框建立对此情况的各个方面的描述。与描述这个情况的框架中的各个槽有关的信息可用来指导如何建立这些方面架中的各
44、个槽有关的信息可用来指导如何建立这些方面的描述。的描述。(3)框架描述它们所代表的概念的典型事例。如果某一框架描述它们所代表的概念的典型事例。如果某一情况在很多方面和一个框架相匹配,只有少部分相互之情况在很多方面和一个框架相匹配,只有少部分相互之间存在不同之处。这些不同之处很可能对应于当前情况间存在不同之处。这些不同之处很可能对应于当前情况的重要方面,也许应该对这些不同之处作出解答。因此,的重要方面,也许应该对这些不同之处作出解答。因此,如果一个椅子被认为应有如果一个椅子被认为应有4条腿,而某一椅子只有条腿,而某一椅子只有3条腿,条腿,那么或许这把椅子需要修理。那么或许这把椅子需要修理。202
45、2-10-2437在以某种方式应用框架以前,首先要确认这个框在以某种方式应用框架以前,首先要确认这个框架是适用于当前所研究的情况的。这时可以利用架是适用于当前所研究的情况的。这时可以利用一定数量的部分证据来初步选择候选框架。这些一定数量的部分证据来初步选择候选框架。这些候选框架就被具体化,以建立一个描述当前情况候选框架就被具体化,以建立一个描述当前情况的实例。这样的框架将包含若干个必须填入填充的实例。这样的框架将包含若干个必须填入填充值的槽。值的槽。2022-10-2438然后程序通过检测当前的情况,试图找到合适的然后程序通过检测当前的情况,试图找到合适的填充值。如果可以找到满足要求的填充值,
46、就把填充值。如果可以找到满足要求的填充值,就把它们填入到这个具体框架的相应槽中去。它们填入到这个具体框架的相应槽中去。如果找不到合适的填充值,就必须选择新的框架。如果找不到合适的填充值,就必须选择新的框架。从建立第一个具体的框架试验失败的原因中可为从建立第一个具体的框架试验失败的原因中可为下一个应该试验什么框架提供有用的线索。在另下一个应该试验什么框架提供有用的线索。在另一方面,如果找到了合适的值,框架就被认为适一方面,如果找到了合适的值,框架就被认为适合于描述当前的情况。合于描述当前的情况。2022-10-2439当然,当前的情况可能改变。那么,关于产生什当然,当前的情况可能改变。那么,关于
47、产生什么变化的信息么变化的信息(例如,我们可以按顺时针方向沿屋例如,我们可以按顺时针方向沿屋子走动子走动)可用来帮助选择描述这个新情况的框架。可用来帮助选择描述这个新情况的框架。用一个框架来具体体现一个特定情况的过程,经用一个框架来具体体现一个特定情况的过程,经常常不是很顺利的不是很顺利的。但当这个过程碰到障碍时,经。但当这个过程碰到障碍时,经常不必放弃原来的努力去从头开始,而是有很多常不必放弃原来的努力去从头开始,而是有很多办法可想的:办法可想的:2022-10-2440框架系统的问题求解办法:框架系统的问题求解办法:(1)选择和当前情况相对应的当前的框架片断,并把这个框架片断和选择和当前情
48、况相对应的当前的框架片断,并把这个框架片断和候补框架相匹配。选择最佳匹配。候补框架相匹配。选择最佳匹配。如果当前的框架,总的来说差不多是可以接受的,则许多已经做的,有如果当前的框架,总的来说差不多是可以接受的,则许多已经做的,有关建立子结构以填入这个框架的工作将可保留。关建立子结构以填入这个框架的工作将可保留。(2)尽管当前的框架和要描述的情况之间有不相匹配的地方,但是仍尽管当前的框架和要描述的情况之间有不相匹配的地方,但是仍然可以继续应用这个框架。然可以继续应用这个框架。例如,所研究的只有例如,所研究的只有3条腿的椅子,可能是一个破椅子或是有另一个在条腿的椅子,可能是一个破椅子或是有另一个在
49、椅子前面的物体挡住了一条腿。椅子前面的物体挡住了一条腿。框架的某一部分包含关于哪些特性是允许不相匹配的信息。同样的,也框架的某一部分包含关于哪些特性是允许不相匹配的信息。同样的,也有一般的启发性原则,有一般的启发性原则,比如一个漏失某项期望特性的框架比如一个漏失某项期望特性的框架(可能由于被挡住视线造成的可能由于被挡住视线造成的)比另一个多比另一个多了某一项不应有的特性的框架更适合当前的情况。举例来说,一个人只有一了某一项不应有的特性的框架更适合当前的情况。举例来说,一个人只有一条腿比说一个人有条腿比说一个人有3条腿或有尾巴更合乎情理些。条腿或有尾巴更合乎情理些。2022-10-2441(3)
50、查询框架之间专门保存的链,以提出应朝哪个方向进行试探的建查询框架之间专门保存的链,以提出应朝哪个方向进行试探的建议。议。例如,如果和例如,如果和CHAIR框架匹配时,发现没有靠背,并且太宽,这时就建框架匹配时,发现没有靠背,并且太宽,这时就建议用议用BENCH(条凳条凳)框架;如果太高,并且没有靠背,就建议用框架;如果太高,并且没有靠背,就建议用STOOL(凳凳子子)框架。框架。图图 相似网络相似网络2022-10-2442(4)沿着框架系统排列的层次结构向上移动沿着框架系统排列的层次结构向上移动(即从狗框架即从狗框架哺乳动物框哺乳动物框架架动物框架动物框架),直到找到一个足够通用,并不与已有