- 1、本文档共40页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
人工智能 第6章 知识表示课件
第6章 知识表示 ;6.1 知识及其表示 ; 6.1.2 知识表示
面向计算机的知识描述或表达形式和方法。
面向人的知识表示可以是语言、文字、数字、符号、公式、图表、图形、图像等多种形式。这些表示形式是人所能接受、理解和处理的形式。但面向人的这些知识表示形式,目前还不能完全直接用于计算机,因此就需要研究适于计算机的知识表示模式。
具体来讲,就是要用某种约定的(外部)形式结构来描述知识,而且这种形式结构还要能够转换为机器的内部形式,使得计算机能方便地存储、处理和利用。; 6.1.3 知识表示的语言实现
上面谈的知识表示仅指知识的逻辑结构或形式。要把这些外部的逻辑形式转化为机器的内部形式,还需要程序语言支持。
原则上讲,一般的通用程序设计语言都可实现上述的大部分表示方法。但使用专用的面向某一知识表示的语言更为方便和有效。因此,几乎每一种知识表示方法都有其相应的专用实现语言。
例如,支持谓词逻辑的语言有PROLOG和LISP,专门支持产生式的语言有OPS5,专门支持框架的语言有FRL,支持面向对象表示的语言有Smalltalk、C++和Java等,支持神经网络表示的语言有AXON….;6.2 框 架 ;例6.1 一个描述“教师”的框架:
框架名:教师
类属:知识分子
工作:范围:(教学,科研;缺省:教学)
性别:(男,女)
学历:(中师,高师)
类型:(小学教师,中学教师,大学教师)
;例6.2 一个描述“大学教师”的框架:
框架名:大学教师
类属:教师
学历:(学士,硕士,博士)
专业:学科专业
职称:(助教,讲师,副教授,教授)
外语:语种:范围:(英,法,日,俄,德,…)
缺省:英
水平:(优,良,中,差)
缺省:良; 6.2.2 框架的表达能力
由框架的形式可以看出,框架适合表达结构性的知识。所以,概念、对象等知识最适于用框架表示。其实,框架的槽就是对象的属性或状态,槽值就是属性值或状态值。
框架还可以表示行为(动作),所以,有些过程性事件或情节也可用框架网络来表示。
;例6.4 关于房间的框架:
框架名:房间
墙数x1:
缺省:x1=4
条件:x10
窗数x2:
缺省:x2=2
条件:x2≥0
门数x3:
缺省:x3=1
条件:x30; 例6.5 机器人纠纷问题的框架描述。 ; 产生式规则也可用框架表示。
例: 产生式
如果头痛且发烧,则患感冒。
用框架表示可为:
框架名:诊断1
前提:条件1:头痛
条件2:发烧
结论:患感冒
; 6.2.3 基于框架的推理
基于框架的推理方法是继承:子框架可以拥有其父框架的槽及其槽值。
实现继承的操作有匹配、搜索和填槽。
匹配:问题框架同知识库中的框架模式匹配。所谓问题框架,就是要求解某个问题时,先把问题用一个框架表示出来,然后与知识库中的已有框架进行匹配。如果匹配成功,就可获得有关信息。
搜索就是沿着框架间的纵向和横向联系,在框架网络中进行查找。搜索的目的是为了获得有关信息。 ; 6.2.4 框架的程序语言实现
PROLOG可方便地实现框架。用PROLOG实现框架表示,一般采用含结构或表的谓词来实现。因为框架实际上就是树,而PROLOG的结构也是树.表的元素个数和层数都不限定,可动态变化,因此,更适于表示一般的框架。
例如,前面的“教师”框架用PROLOG可表示如下:
frame(name(教师),
kind_of(知识分子),
work(scope(教学,科研),default(教学)),
sex(男,女),
reco_of_f_s(中师,高师),
type(“小学教师”,“中学教师”,“大学教师”)).
; 框架的通用表示形式参考:其中的subtreelist是递归定义的。按此定义所有框架都取统一的表示形式。
domains
name=name(string)
body=body(subtreelist)
subtreelist=subtree*
文档评论(0)