第二讲知识表示框架剧本对象表示法.ppt
《第二讲知识表示框架剧本对象表示法.ppt》由会员分享,可在线阅读,更多相关《第二讲知识表示框架剧本对象表示法.ppt(80页珍藏版)》请在三一文库上搜索。
1、2019/4/5,1,人工智能原理,第二讲 知识表示 之 框架/剧本表示,主讲:王祖喜 华中科技大学图像所,2019/4/5,2,知识的表示方法,谓词逻辑法 状态空间法 问题归约法 语义网络法 框架表示法 面向对象表示 剧本(script)表示 过程(procedure)表示 小结,2019/4/5,3,知识的框架表示,2019/4/5,4,1. 概念 知识的框架表示法1975年由M.Minsky提出,最早用作视觉感知、自然语言对话等问题的知识表示;目前已作为一种通用数据结构来表示知识对象(实体)。 框架理论认为,人们对现实世界中各种事物的认识都是以一种类似于框架的结构存储在记忆中的,当面临
2、一种新事物时,就从记忆中找出一个合适的框架并根据实际情况对其细节加以修改、补充,从而形成对当前事物的认识。 例如:当一个人要走近一个教室时,他能根据以往的知识,想象到这个教室一定有四面墙,有门、窗、天花板和地板,有课桌、椅子、黑板等,尽管他对这个教室的细节还不清楚,但对教室的基本结构是可以预见的。他之所以能做到这一点,是由于他通过以往的认识活动已经在记忆中建立了关于教室的框架,该框架不仅指出了相应事物的名称(教室),而且还指出了事物各有关方面的属性(如有四面墙、有课桌、有黑板,)。通过对该框架的查找,很容易得到教室的各有关特征。,知识的框架表示,2019/4/5,5,当他进入教室后,经观察得到
3、了教室的大小、门窗的个数、桌凳的数量、颜色等细节,把它们填入到教室框架中,就得到了教室框架的一个具体事例,称为事例框架。 2. 框架定义 框架是用于描述具有固定的静态对象的通用数据结构,该对象用“对象属性属性值”表示; 一个框架由若干个槽(Slot)组成,槽用于描述属性; 一个槽又可由若干个侧面组成。侧面用于描述相应属性的一个方面; 槽和侧面所具有的属性值分别称为槽值和侧面值; 一个侧面可有一个或多个侧面值。 对框架、槽或侧面,都可以复加上一些说明性信息,一般是指一些约束条件,用于指出什么样的值才能填入到槽或侧面中。 槽值或侧面值既可以是数值,字符串,布尔值,也可以是一个在满足某个给定条件时要
4、执行的动作或过程,特别是它还可以是另一个框架的名字,从而实现一个框架对另一个框架的调用 框架实质上是一个层次的嵌套链接表。,2019/4/5,6, 槽名1 侧面名1 值1,值2,值p1 侧面名2 值1,值2,值p2 侧面名m1 值1,值2,值pm1 槽名2 侧面名1 值1,值2,值q1 侧面名2 值1,值2,值q2 侧面名m2 值1,值2,值qm2 槽名n 侧面名1 值1,值2,值r1 侧面名2 值1,值2,值r2 侧面名mn 值1,值2,值rmn 约束: 约束条件1 约束条件n,框架的一般结构:,2019/4/5,7,例1: 框架名: 商品名称: 生产厂家: 出售商店: 处 罚: 处理方式:
5、 处罚依据: 处罚时间:单位(年、月、日) 经办部门: 在这个框架中,有4个槽,其中,“处罚”槽有4个侧面,侧面“处罚时间”用“单位”指出了一个填值时的标准限制。,2019/4/5,8,例2: 框架名: 姓名:单位(姓、名) 年龄:单位(岁) 性别:范围(男、女) 缺省(男) 职称:范围(教授、副教授、 讲师、助教) 缺省(讲师) 部门:单位(系、教研室) 住址: 工资: 开始工作时间:单位(年、月) 截止时间:单位(年、月) 缺省:现在,把某教师的一组信息填入教师框架的各个槽,就得到了相应框架的一个事例框架: 框架名: 姓名:夏冰 年龄:36 性别:女 职称:副教授 部门:计算机教研室 住址
6、: 工资: 开始工作时间:1988.9 截止时间:1996.9,2019/4/5,9,例1:硕士生的具体框架,框架名: 姓名:单位(姓,名) 性别:范围(男,女) 默认:男 年龄:单位(岁) 条件:岁 16 学习专业:单位(专业名) 研究方向:单位(方向名) 导师姓名:单位(姓,名) 参加课题:范围(国家级,省部级,其它) 默认:国家级 学籍: 住址:单位(楼号,房间号) 电话:单位(区号),话机号) 入学时间:单位(年,月) 学制:单位(年) 默认:4年,2019/4/5,10,硕士生的实例框架,框架名: 姓名:杨杨 性别:女 年龄:23 学习专业:计算机应用技术 研究方向:人工智能 导师姓
7、名:林海 参加课题: 学籍: 住址:16号楼316房间号 电话:(010)66668888 入学时间:2000年9月 学制:,2019/4/5,11,框架的BNF描述: : : = : : = 框架名 : : = , : : = 约束 , : : = | (,) : : = | : : = | : : = | | | | : : = , : : = : : = | : : = | | | | : : = | | | : : = | , : : = ,2019/4/5,12,框架系统的基本结构,框架系统的基本结构是通过诸框架之间的横向或纵向联系来实现的。 (1)框架之间的横向联系 一个框架的槽值
8、或侧面值可以是另外一个框架的名字。如,“硕士生”框架合“硕学籍”框架之间为横向联系。 (2)框架之间的纵向联系 用框架表示具有演绎关系的知识结构时,下层框架与上层框架之间具有一种继承关系,这种具有继承关系的框架之间的联系称为纵向关系。,2019/4/5,13,学生框架为:,框架名: 姓名:单位(姓,名) 性别:范围(男,女) 默认:男 年龄:单位(岁) 住址:单位(楼号,房间号) 电话:单位(区号),话机号) 入学时间:单位(年,月) 学制:单位(年),2019/4/5,14,硕士生框架为:,框架名: 继承: 学籍: 研究方向:单位(方向名) 导师姓名:单位(姓,名) 参加课题:范围(国家级,
9、省部级,其它) 默认:国家级 学位论文:单位(论文题目) 默认:题目未定,2019/4/5,15,计算机系硕士生框架为:,框架名: 继承: 专业:范围(计算机应用技术,计算机软件及理论) 默认:计算机应用技术 使用计算机:单位(计算机的型号),2019/4/5,16,例:一个计算机系硕士生的实例框架,框架名: 继承: 姓名:柳青 性别:女 年龄:23 研究方向:人工智能 ,2019/4/5,17,例1:一个教室A的框架,上下层是part-of关系,黑板是教室A的一部分,但黑板的结构、性能与教室是完全不同的。 最上面是主框架,最上面记着框架名,其他部分是由槽和值组成。槽用中文写出,值用小长方形表
10、示。 (1)某些值可以是另一个子框架。如左墙、右墙、前墙,而且子框架可以共享。 (2)某些值可以空着,等适当的时候再去填写。,2019/4/5,18,例2:拱框架,2019/4/5,19,例3:动物分类框架,2019/4/5,20,3.框架网络 框架间的横向联系: 由于框架中的槽值或侧面值都可以是另一个框架的名字,这就在框架之间 建立起了联系,通过一个框架可以找到另一个框架,这称为横向联系; 框架间的纵向联系: 举例说明:在一个学校中,无论是教师,还是学生以及在学校工作的其他人员,如干部,实验员,工人等,尽管他们所承担的任务不同,但由于他们都处于学校这个环境中,必然会有一些共同的属性,因此,在
11、对他们进行描述时,可以将它们具有的共同属性抽取出来,构成一个上层框架,然后再对各类人员独有的属性分别构成下层框架,为了指明框架间的这种上,下关系,可在下层框架中设立一个专用的槽,用以指出他的上层框架是哪一个。这样就在框架间建立了纵向联系; 而且对于这种联系,下层框架还可以继承上层框架的属性及值,避免了重复描述,节约了时间和空间的开销。 框架间的继承性: 继承性是框架表示法的一个重要特性,它不仅可以在两个框架之间实现继承关系,而且还可以通过两两的继承关系,从最低层追搠到最高层,使高层的信息逐层向低层传递。,2019/4/5,21,像这样具有横向联系及纵向联系的一组框架称为框架网络。 下图是一个关
12、于师生员工的框架网络。, 师生员工框架用于描述师生员工的共同属性,例如姓名,性别,年龄等; 教职工框架用于描述教师,干部,工人的共同属性,凡是在师生员工框 架中已指出的属性在这里可不再重复描述; (以此类推) 教师框架,工人框架其中也只需描述只有他们自己具有的属性。,2019/4/5,22,注意 1. 如果一个在上层框架中描述的属性在下层框架需作进一步说明时,则需要在下层框架中再次给出描述。例如,设在师生员工框架中对年龄槽的描述是: 年龄:单位(岁) 由于学生一般都在七岁开始上学,因此学生的年龄可由 年龄=学龄+7 得到,所以在学生框架中仍可设置年龄槽,并在该槽的描述中给出计算年龄的过程。 2
13、. 如果在下层框架中对某些槽没有作特别的声明,那么它将自动继承上层框架相应槽的槽值。 下面具体给出上述几个框架的描述:,2019/4/5,23,师生员工框架为: 框架名: 姓名: 单位(姓,名) 年龄: 单位(岁) 性别: 范围(男,女) 缺省:男 健康状况: 范围 (健康,一般,差) 缺省:一般 住址: ,教职工框架为: 框架名: 继承: 工作类别:范围 (教师,干部,工人) 缺省:教师 开始工作时间:单位(年,月) 截止工作时间:单位(年,月) 缺省:现在 离退休状况:范围(离休,退休) 缺省:退休,2019/4/5,24,教师框架为: 框架名: 继承 部门:单位(系,教研室) 语种:范围
14、(英语,法语,日语,德语,俄语) 缺省:英语 外语水平:范围(优,良,中,差) 缺省:良 职称:范围(教授,副教授,讲师,助教) 缺省:讲师 研究方向:,某个教师的事例框架为: 框架名: 继承: 姓名:孙林 年龄:28 健康状况:健康 部门:计算机系软件教研室 语种:德语 开始工作时间:1985.9 ,2019/4/5,25,由以上框架描述可以看出: (1) 在框架网络中。既有用“继承“槽指出的上、下层框架间的纵向联系,也有以框架名作为槽值指出的框架间的横向联系,因此框架网络之间是一个纵横交错的复杂的框架体系结构。 (2) 原则上说,事例框架中的每一个槽都应给出槽值,但对可以继承上层框架槽值的
15、槽,其槽值可不给出。例如在上面的教师-1的框架中,虽然没有给出性别,职称槽及其槽值,但由继承性可知孙林的性别为“男“,职称为讲师。,2019/4/5,26,4. 框架中槽的设置与组织 框架是一种集事物各方面属性的描述为一体,并反映相关事物间各种关系的数据结构。在此结构中,槽起至关重要的作用,因为不仅要用他描述事物各方面的属性,而且还要用他指出相关事物间的复杂关系。因此要注意以下几个方面的关系: (1) 充分表达事物各有关方面的属性合理地设置槽 在以框架作为知识表示模式的系统中,知识是通过事物的属性来表示的。为使系统具有丰富的知识,以满足问题的求解的需要,就要求框架中有足够的槽把事物各方面的属性
16、充分表达出来。这里说的“各有关方面的属性”有两方面的含义: 要与系统的设计目标相一致,凡是系统设计目标所要求的属性,或者问题 求解中有可能要用到的属性都应该用相应的槽把他们表示出来; 仅仅需要对有关的属性设立槽,不可面面俱到,以免浪费空间和降低系统 的运行效率。,2019/4/5,27,(2) 充分表达相关事物间的各种关系由槽中的框架名建立联系 现实世界中的事物一般不是孤立的,彼此之间存在千丝万缕的联系。为了将其中有关的联系反映出来,以构成完整的知识体系,需要设置相应的槽来描述这些联系。 在框架系统中,事物间的联系是通过在槽中填入相应的框架名来实现,至于它们之间究竟是一种什么样的关系,则是由槽
17、名来指明的。 在框架表示系统中通常定义一些标准槽名,应用时不用说明就可直接使用称这些槽名为系统预定义槽名。现简单介绍几个: . ISA槽 ISA槽用于指出事物间抽象概念上的类属关系。其直观含义是“是一个”,“是一种”,“是一只” 。当它用作某下层框架的槽时,表示该下层框架所描述的事物是其上层框架的一个特例,上层框架是比下层框架更一般或更抽象的概念。设有下面两个框架:,2019/4/5,28,框架名: 姓名:单位(姓,名) 年龄:单位(岁) 性别:范围(男,女) 缺省:男 框架名: ISA: 脑力:特好,在此例中,棋手框架中的ISA槽指出该框架所描述的事物是运动员框架所 描述事物的属性及值。,.
18、 AKO槽 AKO槽用于具体的指出事物间的类属关系。其直观含义是“是一种”,当 它用作某下层框架的槽时,就明确的指出该下层框架所描述的事物是其上层 框架所描述事物的一种,下层框架可以继承其上层框架所描述的属性及值。 对上面的例子,可将棋手框架中的ISA改为AKO。,2019/4/5,29,. Subclass槽 subclass槽用于指出子类与类(或子集与超集)之间的类属关系。当用它作为某下层框架的槽时,表示该下层框架是其上层框架的一个子类(或子集)。 在上例中,由于“棋手”是“运动员的一个子类,故可将ISA该为Subclass。 . Instance槽 Instance槽用来建立AKO槽的逆
19、关系。当用它作为某上层框架的槽值时,可用来指出它的下层框架是哪些。 框架名: Instance:, 姓名:单位(姓,名) 年龄:单位(岁) 性别:范围(男,女) 缺省:男,2019/4/5,30,. Part-of槽 Part-of槽用于指出部分与全体的关系。当它用作某下层框架的槽时,它指出该下层框架所描述的事物只是其上层框架所描述的事物的一部分。例如,上层框架是对汽车的描述,下层框架是对轮胎的描述。显然,轮胎是汽车的一部分。 这里应注意将Part-of槽与上面讨论的那四种槽区分开来: 前述4种槽是上、下层框架间的类属关系,它们由共同的特性,可以继承; Part-of槽只指出下层是上层的一个子
20、结构,两者一般不具有共同的特征,不能继承。 如:上层描述汽车,而下层描述轮胎,轮胎是汽车的一部分,但两者的结构、性能缺完全不同,这是可选用Part-of槽指出其上下层的关系部分与全体。,2019/4/5,31,. Infer槽 Infer槽用于指出两个框架所描述的事物间的逻辑推理关系,用它可以表示相应的产生式规则。 例如:设有下面知识: 如果咳嗽,发烧且流涕,则八成是患了感冒, 需服用感冒清,一日三次,每次2-3粒, 多喝开水 对该知识 ,可用如下两个框架表示: 框架名: 症状1:咳嗽 症状2:发烧 症状3:流涕 Infer: 可信度:0.8,框架名: 病名:感冒 治疗方法:服用感冒清,一日三
21、次,每次2-3粒 注意事项 :多喝开水 预后:良好,. Possible-Reason槽。 其作用与Infer槽作用相反,它用来把某个结论与可能的原因联系起来。,2019/4/5,32,(3) 对槽及侧面进行合理的组织利用其上下层间的继承性 基于框架上、下层的继承性,尽量将不同框架中的相同属性抽取出来,放入其上层框架,而在下层框架中只描述相应事物独有的属性。 这样可大大减少信息的重复性,其且有利于知识的一致性。 例如: 将鸽子、啄木鸟、布谷鸟、燕子等动物,用框架将其特征描述出来? 上层:有羽毛、会飞、有两只爪等共同特性; 下层:各种鸟独有的特征各建一个框架; 联系:用AKO或Instance将
22、上下层联系起来。 (4) 有利于进行框架推理 用框架表示知识的系统一般由两大部分组成: 1. 由框架及其相互关联构成的知识库(提供求解问题所需要的知识); 2. 由一组解释程序构成的框架推理机(针对用户提出的问题,通过运用知识库中的相关知识完成求解问题的任务,给出问题的解)。 框架推理是一个反复进行框架匹配的过程,为了使推理得以进行,通常需要 设置相应的槽来配合。怎样设置?与推理方法有关。,2019/4/5,33,5. 框架系统中求解问题的基本过程 在用框架表示知识的系统中,问题的求解主要是通过匹配与填槽实现的。 要求解某个问题时: (1) 首先把这个问题用一个框架表示出来; (2) 然后通过
23、与知识库中已有的框架进行匹配,找出一个或几个可匹配的预选 框架作为初步假设,并在此初步假设的引导下收集进一步的信息; (框架的匹配是通过对相应的槽的槽名及槽值逐个比较实现的。如果两个框架的各 对应槽没有矛盾,或者满足预先规定的某些条件,就认为这两个框架可以匹配。) (3) 最后用某种评价方法对预选框架进行评价,以便决定是否接受它。 由于框架间存在继承关系,两个框架的比较往往牵涉到上层、上上层框架; 而且框架间的匹配都有不确定性,所以匹配比较困难。在不同的系统中,可 采用不同的解决方法,如设置“必要条件槽”、“充分条件槽”等。,2019/4/5,34,框架的推理,框架没有固定的推理机理, 框架是
24、一种复杂结构的语义网络。因此语义网络推理中的匹配和特性继承在框架系统中也可以实行。框架系统的推理和语义网络一样遵循匹配和继承原则。,2019/4/5,35,除此以外,由于框架用于描述具有固定格式的事物、动作和事件,因此可以在新的情况下,推论出未被观察到的事实。 框架用以下几种途径来帮助实现这一点: (1) 框架包含它所描述的情况或物体的多方面的信息。这些信息可以被引用,就像已经直接观察到这些信息一样。例如,当一个程序访问一个ROOM框架时,不论是否有证据说明屋子里有门,都可以推论出,在屋子里至少有一个门。之所以能这样做,是因为ROOM框架中包含 对屋子的描述,其中包括在屋子里必须有门的事实。,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第二 知识 表示 框架 剧本 对象
链接地址:https://www.31doc.com/p-2523623.html