知识表达与处理方法62朱福喜.ppt
,第10章 知识表达与处理方法,10.1 概述,10.1.1 知识和知识表示的含义,1知识的定义知识是用人们对于可重复信息之间联系的认识,它是信息经过加工整理、解释、挑选和改造而形成的。比较有代表性的定义有:Feigenbaum:知识是经过裁剪、塑造、解释、选择和转换了的信息。Bernstein:知识由特定领域的描述、关系和过程组成。Heyes-Roth:知识=事实+信念+启发式。,在AI领域,研究知识表示方法的目的是用知识来改善程序的性能,具体表现为:利用知识来帮助选择或限制程序搜索的范围;利用知识来帮助程序识别、判断、规划与学习。AI的研究集中在如何使程序拥有知识而具有智能行为。,3智能系统中的知识,要使计算机系统具有智能,一般来说至少应使系统拥有以下几个方面的知识:关于对象(Object)的知识,如火山、人。知识表示应能表示各种知识对象以及对象的类型、性质等。事件(Event),能表示事件的时序,因果关系等,如:天下雨,火山在一定条件下会爆发等。行为(Performance),如何写文章,如何造句,如何证明定理等。元知识(Metaknowledge),是关于知识的知识,即什么是知识,以及如何运用知识。,10.1.2 AI中知识表示方法分类,AI中知识表示方法注重知识的运用,所以将知识表示方法粗略地可分为以下两大类。1过程式知识表示(procedure)过程性知识是一般是表示如何做的知识,是有关系统变化、问题求解过程的操作、演算和行为的知识。这种知识是隐含在程序之中的,机器无法从程序的编码中抽取出这些知识。过程式知识表示描述表示控制规则和控制结构的知识,给出一些客观规律,告诉怎么作。,.陈述式知识表示(declarative),陈述式知识描述系统状态、环境和条件,以及问题的概念、定义和事实。陈述式知识表示描述这种事实性知识,描述客观事物所涉及的对象是什么,有时有必要给出对象之间的联系。它的表示与知识运用(推理)是分开处理的。这种知识是显式表示的,如:isa(John,man)isa(ABC,triangle)cat(a,b)cat(b,c)cat(c,a),10.1.3 AI对知识表示方法的要求,从知识利用上讲,衡量知识表示方法可以从以下三个方面考察:便于获取,便于表示新知识,并以合适方式与已有知识相连接。便于搜索,在求解问题时,能够较快地在知识库中找出有关知识。因此,知识库应具有较好的记忆组织结构。便于推理,要能够从已有知识中推出需要的答案或结论。,10.1.4 知识表示要注意的问题,理想的内部表示要能真实的直接反映外部世界的事实,内部知识表示与自然语言和外部世界三者之间的关系可用下图描述。,10.2 逻辑表示法,逻辑是一种比较常见的知识表示法,在人工智能领域中,很早就使用一阶谓词逻辑来表示知识。一阶谓词逻辑是一种形式语言,其根本目的在于把数学中的逻辑论证进行符号化,使我们能够采用数学演绎的方式,证明一个新的语句(或断言)是从哪些已知正确的语句推导出来的,从而也就这个新语句也是正确的。,例10.1 已知命题公式集合s可以转化为如下2条子句。起大风(5日)起大风(x日)天气变冷(x+1)日)根据是否可以推断6日天气要变冷呢?可以用如下的反证法予以证明。首先假设6日天气不会变冷,用公式表示为 天气变冷(6日),逻辑表示法的主要优点:自然。逻辑表示法是人们对问题直观理解的一种描述,易于被人们接受。明确。逻辑表示法对如何表示事实以及如何表示事实之间的复杂关系有明确的规定。灵活。逻辑表示法把知识和知识处理的方法有效地区分开来了,使得在使用知识时,无需考虑程序处理知识的细节问题。模块化。各条知识都是相对独立的,容易模块化,添加、删除、修改知识的工作比较容易。,10.3产生式表示法,1943年美国数学家波斯特(Post)首先提出的产生式系统(production system),产生式是指类似于AAa的符号变换规则。产生式系统的广泛使用主要有两点理由:用产生式系统结构求解问题过程和人类求解问题的思维过程很相像,因而可以用来模拟人们求解问题时的思维过程。人们可以把产生式当作人工智能系统中的一个基本的知识结构单元。,10.3.1 产生式系统的组成,产生式系统由全局数据库(Global Database)、产生式规则集(Set of Product Rules)和控制策略(Control Strategies)三部分组成。各部分之间的关系如图3-3所示。,全局数据库是产生式系统所使用的主要数据结构,它存放输入的事实和问题状态以及所求解问题的所有信息,包括推理的中间结果和最后结果。全局数据库中的数据根据应用的问题不同,可以是常量、变量、谓词、表结构、图像等等。全局数据库中的数据是产生式规则的处理对象。,规则集是某领域知识的用规则形式的表示的集合,规则用产生式来表示。规则集包含将问题从初始状态转换到目标状态的那些变换规则。规则的一般形式为:条件行为 或 前提结论用一般计算机程序语言表示为:if then,控制策略或控制系统是规则的解释程序,它规定了如何选择一条可应用的规则对全局数据库进行操作,即决定了问题求解过程或推理路线。控制策略负责产生式规则前提或条件语全局数据库中数据的匹配,按一定的策略从匹配超过的规则(可能不止一条)中选出一条加以执行(执行规则行为部分规定的操作,或得到规则结论部分描述的结论),并在合适的时候结束产生式系统的运行。,10.3.2 产生式系统的知识表示,产生式系统的知识表示方法,包括事实的表示和规则的表示。1.事实的表示(1)孤立事实的表示 孤立事实通常用三元组(对象,属性,值)或(关系,对象,对象)表示,其中对象就是语言变量。,若要表示老王、老张是朋友,则可表示成(friend,Wang,Zhang)如果增加不确定的度量,可增加一个因子表示两人友谊的可信度。如(friendship,Wang,Zhang,0.8)可理解为王、张二人友谊的可信度为0.8。,(2)有关联事实的表示 a.树型结构在MYCIN霉菌素系统中表示事实用的是四元组,为了查找的方便,它把不同的对象(即上下文)按层次组成一种上下文树。,b.网状结构在PROSPECTOR(探勘者;采矿者)探矿系统中,整个静态知识以语义网络的结构把相关的知识连在一起,这样就使查找更加方便了。PROSPECTOR将不同对象的矿石按子集和成员关系组成一个网络。网络最左分支表示“方铅矿是硫化铅的成员,硫化铅是硫化矿的子集,而硫化矿又是矿石的子集”。其中s表示子集关系,表示y是x的子集;e表示成员关系,表示y是x的成员。,2.规则的表示(1)单个规则的表示 对于单个规则一般由前项和后项两部分组成。前项由逻辑连接词组成各种不同的前提条件;后项表示前提条件为真时,应采取的行为或所得的结论。如果考虑不精确推理,则可考虑附加可置信度量值。MYCIN规则中,无论前项或后项,其基本部分是关联三元组(特性对象取值)或一个谓词加上三元组。,MYCIN系统中的规则定义为:=(IF THEN ELSE)其中各部分的定义分别为:=(AND)=(OR|()=()=|=(),具体的MYCIN规则以及它在机器内部用LISP 语言的表示。MYCIN系统中有如下所示的一个典型规则:前提条件:细菌革氏染色阴性 形态杆状 生长需氧结论:该细菌是肠杆菌属,CF=0.8。,采用LISP表达式描述为:PREMISE:($AND(SAME CNTXT GRAM GRAMNEG)(SAME CNTXT MORPH ROD)(SAME CNTXT AIR AEROBIC)ACTION:(CONCLUDE CNTXT CLASS ENTEROBACTERIACEAE肠杆菌科 TALLY 0.8),SAME,$AND,CONCLUDE为自定义的函数SAME(C,P,LST)的3个自变量分别是上下文C,临床参数(特性)P,P的可能取值LST。SAME谓词函数的取值是根据其自变量对象-特性-取值所表达内容的置信度,取0.21.0之间任一数值,当置信度CF0.2时取为NIL。$ANDconditioncondition也是特殊的谓词函数,与LISP中系统定义的函数AND不同,其取值范围与SAME函数类似。TALLY是规则的置信度。,(2)有关联规则间关系的表示在知识库(规则库)中某些规则常按某种特征组织起来放在一起,形成某种结构。这样既便于规则库的维护管理,也方便于规则的使用。a.规则按参数分类在MYCIN中每一项特性(临床参数)设有一种专门的特征表如:,IDENT:属细菌属性PROP-ORG CONTAINED-IN:(RULE 030)EXPECT:(ONE OF(ORGANISMS)LABDATA:T LOOKAHEAD:(RULE004,RULE054,RULE168)PROMPT:(Enter the identity(genus)of*)TRANS:(THE IDENTITY OF*)UPDATED-BY:(RULE021,RULE003,,lookahead:指明哪些规则的前提涉及该参数。update-by:指出从哪些规则的行为部分可存取该参数。EXPECT:指出该参数的取值范围,如(YN)指取值是或否;LABDATA:指出该参数是否为实验的原始数据,若为T,则在推理时可向用户提问,索取该参数;,PROMPT:为MYCIN向用户显示的提示符,其中*号表示在提问的过程中可用当前涉及的上下文替代的内容;TRANS:为便于人机对话,指出如何将该参数的内容翻译成英语表达式。,b.规则的网状结构 规则之间可以以各种方式相互联系,当某一规则的结论正好是另一规则的前提或前提的一部分时,这两个规则就形成了一种“序关系”。如果用箭头表示这种序关系,在规则之间就形成了一种复杂的网状结构。例10.2 PROSPECTOR系统中由不同规则所形成的部分推理网络图如图3-6所示,这是Kuroko-型均匀结构的硫化矿沉积的部分矿床模型。,10.3.3 产生式系统的推理方式,1.正向推理 正向推理是从已知事实出发,通过规则库求得结论,称为数据驱动方式,也称作自底向上的方式。推理过程是:规则集中规则的前件与数据库中的事实进行匹配,得到匹配的规则集合;从匹配规则集合中选择一条规则作为使用规则;执行使用规则,将该使用规则后件的执行结果送入数据库。重复这个过程直到达到目标。,例10.3 动物识别系统IDENTFIER包含有如下规则:规则I2如果该动物能产乳,那么它是哺乳动物。规则I8如果该动物是哺乳动物,它反刍,那么它是有蹄动物而且是偶蹄动物。规则I11 如果该动物是有蹄动物,它有长颈,它有长腿,它的颜色是黄褐色,它有深色斑点,那么 它是长颈鹿。,根据规则,假如已知某个动物产乳,依规则I2可以推出这个动物是哺乳动物。如果再知该动物反刍时,依规则I8又可以推出该动物有蹄且是偶蹄动物,于是得到新的事实:该动物是有蹄动物。再加上该动物有长腿、长颈等事实,利用规则I11,可以推出该动物是长颈鹿。,2.逆向推理,逆向推理是从目标(作为假设)出发,逆向使用规则,找到已知事实。逆向推理过程如下:规则集中的规则后件与假设的目标事实进行匹配,得到匹配的规则集合。从匹配规则集合中选择一条规则作为使用规则。将使用规则的前件作为新的假设子目标。重复这个过程,直至各子目标均为已知事实后成功结束。,3.双向推理,双向推理,又叫混合推理,既自顶向下,又自底向上,从两个方向作推理,直至某个中间界面上两个方向的结果相符便成功结束。不难想象这种双向推理较正向推理或逆向推理所形成的推理网络来得小,从而推理效率更高。例如,在动物识别系统中,已知某动物具有特征:长腿、长颈、反刍、产乳。为了识别一个动物,可以进行以下的双向推理.,10.3.4 产生式规则的选择与匹配,通常搜索策略的主要任务是确定如何选取规则的方式和方法。选择规则的基本方式有两种:()不考虑给定问题所具有的特定知识。()考虑问题领域可应用的知识。选择规则的方法可以使用匹配。,1.规则的匹配,匹配方式有如下几种:(1)用索引匹配 对全局数据库Gd(Global database)加索引,再通过映射函数找出相应的规则。例如:自动情报检索系统,将用户需求输入到Gd,其中的关键词作为索引。如用作者名为索引,则利用已知作者名找书的规则;用书名为索引,则利用已知书名找书的规则。,(2)变量匹配 例如,符号积分,使用规则:udvuv-vdu,而系统实际求积分时,要查找Gd中xdy 的形式,要求x与u,y与v匹配。(3)近似匹配 在匹配中,有大部分条件符合或接近符合,则可认为规则匹配。,2规则的选取,在匹配之后,可用规则如果有若干条,如何选择哪一条来执行?在不考虑利用启发式知识的情况下,有如下一些原则可用于规则地选择。(1)专用与通用性排序,如果某一规则的条件部分比另一规则的条件部分所规定的情况更为专门化,则更为专门化的规则优先使用。那么如何确定哪个规则更专门化呢?下面用实例说明。,例10.4 美式足球训练规则:pr1:If 是第四次开始进攻(Fourth down)且进攻方前三次进攻中前进的距离少于10码 then 可以在第四次进攻时踢悬空球pr2:If 是第四次开始进攻(Fourth down)且进攻方前三次进攻中前进的距离少于10码)且进攻位置在对方球门线30码之内 then 可以射门(field goal),以上两个规则,pr2比pr1更专门化,因为pr2条件限制更多一些。通常的判定方法是:如果某一规则的前件集包含另一规则的所有前件,则前一规则较后一规则更为专门化。如果某一规则中的变量处在第二规则中是常量,而其余相同,则后一规则比前一规则更专门化。,(2)规则排序,通过对问题领域的了解,规则集本身就可划分优先次序。那些最适用的或使用频率最高的规则优先使用。例如,模仿心理疗法的行为的智能程序ELIZA,有规则:pr1:;pr2:;prn:;其中,最后一个规则为:prn:if nil then“tell me more about your family”因为最后一个规则的前件是空的,无条件地可以使用,所以要安排在无其他规则可使用时才可使用。,(3)数据排序,将规则中的条件部分按某个优先次序排序。(4)规模排序,按条件部分的多少排序,条件多者优先。(5)就近排序,最近使用的规则排在优先位置,这样使用多的规则优先。(6)按上下文限制将规则分组,如在医学专家系统MYCIN中,不同上下文用不同组的规则进行诊断或开处方。,10.3.5 产生式表示的特点,产生式以规则作为形式单元,格式固定,易于表示,且知识单元间相互独立,易于建立知识库。推理方式单纯,适于模拟强数据驱动特点的智能行为。知识库与推理机相分离,这种结构易于修改知识库,可增加新的规则去适应新的情况,而不会破坏系统的其他部分。易于对系统的推理路径作出解释。,10.4 语义网络表示法,语义网络是Quillian在1968年研究人类联想记忆时提出的心理学模型,认为记忆是由概念间的联系实现的。1972年Simmons首先将语义网络表示法用于自然语言理解系统。语义网络是知识的一种图解表示,它由结点和弧线组成。结点用于表示实体、概念和情况等,弧线用于表示结点间的关系。,语义网络表示由下列4个相关部分组成:词法部分 决定该表示方法词汇表中允许有哪些符号,它涉及各个结点和弧线。结构部分 叙述符号排列的约束条件,指定各弧线连接的结点对。过程部分 说明访问过程,这些过程能用来建立和修正概念的描述,以及回答相关问题。语义部分 确定与描述相关的意义的方法,即确定有关结点和对应弧线的排列及其相互关系。,10.4.1 语义网络结构,语义网络是对知识的有向图表示方法。一个语义网络是由一些以三元组(结点1,弧,结点2)的图形表示连接而成的有向图。其结点表示概念、事物、事件、情况等;弧是有方向和有标注的,方向体现主次关系,结点1为主,结点2为辅。弧上的标注表示结点1的属性或结点1和结点2之间的关系。这样一个三元组的图形表示为:,10.4.2 二元语义网络的表示,二元语义网络可以用来表示一些涉及变元的简单的事实,其实质还是一个三元组:(R,x,y)。例如,表示“所有的燕子(swallow)都是鸟(bird)”这一事实,可建立二个结点:SWALLOW 和 BIRD。两节点以ISA(表示“是一个”)链相连,如下图所示:,对于事实“知更鸟是鸟,所有的鸟都有翅膀”,知更鸟、鸟以及翅膀分别用 ROBIN、BIRD及 WINGS表示。因为知更鸟是鸟的一部分,因此在RONBIN和BIRD之间用弧线连接,并加标记AKO(a kind of的缩写),以表示这种关系;又因为翅膀属于鸟的一个组成部分,所以在BIRD和WINGS之间也用弧线连接,并加标记has-part,其语义网络为:,如果增添新的事实,只需在语义网络中增加新的结点和弧线就可以了。如果在上图所示的语义网络中,要增添事实:“CLYDE是一个知更鸟,并且有一个叫做NEST-1的巢。”,10.4.3 多元语义网络的表示,语义网络结点之间的连接是二元关系。如果要表示的事实是多元关系,必须将多元关系转化为二元关系,然后用语义网表示出来。必要时要在语义网中增加一些中间结点。具体来说,多元关系R(x1,x2,xn)可以转成 R(x11,x12)R(x21,x22)R(xn1,xn2,)。例如,TRIANGLE(a,b,c)表示一个三角形由三条边a,b,c构成,可表述成:cat(a,b)cat(b,c)cat(c,a),又例如,要表达:“John gave Mary a book.”这一事实,用谓词可表示为:GIVE(JOHN,MARY,BOOK)这是一个多元关系,用语义网络表示如图所示。其中G1是增加的一个节点,用来表示一个特定GIVING-EVENTS事件,10.4.4 连接词和量词的表示,从逻辑上看,一个基本的语义网络相当于一组二元谓词,因为三元组(结点1,弧,结点2)可以写成P(个体1,个体2)。其中,P与表达结点1、结点2之间关系的弧相对应,个体1,个体2与结点1、结点2 相对应。这样,语义网络可以作为一种“粒度”较大的、表达信息更丰富知识单元,在这种知识单元中也存在与谓词逻辑中类似的各种连接词及量词。,1.合取,在上例中与节点G1 相连的链GIVER,OBJ以RECIP之间是合取关系。因为只有给予者是JOHN,接受者是MARY,给予物是BOOK,这三个关系同时成立时,才构成事件G1。在语义网络的表示中约定:如果不另外增加标志,就意味着弧与弧之间的关系就是合取。,2.析取,下图表示的就是具有“或”关系的语义网络,其含义用谓词公式表示出来就是:ISA(A,B)PART-OF(B,C),在语义网络中,为了表示“或”的关系,一种最常用的方法是将“或”关系的弧用一条封闭虚线包围起来,并标记DIS。,如果“与”关系是嵌套在“或”关系内的,则这些具有“与”关系的弧用标记为CONJ的封闭虚线包围起来。例如句子“JOHN是一个程序员或者MARY是一个律师”,其语义网络表示 为:,3.否定,为表示否定关系,可以采用ISA和 PART-OF 关系或标注出NEG界限,如:,如果我们要用语义网络表示 IS A(A,B)PART-OF(B,C)可利用ISA和PART-OF 来表示这个事实。如果不希望改变这个表达式的形式,那么可以利用NEG界限,如下图所示。,4.蕴涵,在语义网络中可用标注ANTE和CONSE界限来表示蕴涵关系。ANTE和CONSE界限分别用来把与前提条件(antecedent)及与结果(consequence)相关的弧联系在一起。例如,我们可用下图 来表示:“Every one who lives at 37 Maple 枫树 Street is a programmer.”。,5.量化,(1)存在量词的量化 存在量词在语义网络中可直接用ISA链来表示。例如,要表示:The dog bits the postman.这句话意味着所涉及的是存在量化。,(2)全称量词的量化 全称量词的在语义网中的量化,其量词的辖域可以是整个语义网络,也可以是把语义网络分割后的某一个范围。要表达“JOHN给了所有人一件东西”,可用图3-15的语义网络表示出来。,10.4.5 语义网络的推理过程,语义网络中的推理过程主要有两种,一种是继承,另一种是匹配。1.继承在语义网络中所谓继承是把对事物的描述从概念结点或类结点传递到实例结点中去。例如在下图所示的语义网络中BRICK是概念结点,BRICK12是一个实例结点。BRICK结点在其SHAPE(外形)槽中填入了RECTANGULAR(矩形),说明砖块的外形是矩形的。这个描述可以通过ISA链传递给实例结点BRICK12。,因此,虽然BRICK12没有SHAPE槽,但可以从这个语义网络推理出BRICK12的外形是矩形的。,(1)值继承。最简单的值继承是ISA关系下的直接继承。例如:,另外,还有一种AKO(A-KIND-OF)弧也用于语义网络中的描述特性的继承。ISA和AKO弧都可以直接地表示类的成员关系以及子类和类之间的关系,提供了一种把知识从某一层传递到另一层的途径。,(2)“如果需要”继承。在某些情况下,当我们不知道槽值但又需要这个槽值时,可以利用if-needed继承,进行这种计算的程序称为if-needed程序。这种槽有if-needed侧面,if-needed程序就有放在这侧面中。例如,如图3-18(a)所示,一个确定重量的程序存放在BLOCK节点的WEIGHT槽的IF-NEEDED侧面中。在需要的时候执行这个程序,就可以根据BRICK12的密度计算出重量,并把它存入BRICK12的WEIGHT槽的侧面中,其结果如图3-18(b)所示。,(3)默认继承。某个弧值具有相当程度的真实性,但又不能十分肯定的,因此设定为默认值,放在这个结点中,并标明这个弧为DEFAULT(默认)弧。只要不与现有事实相冲突,就默认这个值为这个结点的值,语义网中这种推理称为默认继承。,2匹配,语义网络中推理方法主要是依靠匹配。进行匹配时,根据提出的问题可构成局部网络,这个网络中有的结点或弧的标记是空的,表示有待求解的。依据这个局部网络到知识库中寻找匹配的网络,以便求得问题的解答。研究下图中的STRUCTURE35。已知这个结构有两个部件,一个砖块BRICK12和一个楔块WEDGE18。一旦在STRUCTURE和TOY-HOUSE之间放上ISA弧,我们就可以知道BRICK12必须支撑WEDGE18。,3语义网络上的推理,带蕴涵结点的语义网络又称为推理网络。语义网络的演绎就是在推理网络上的搜索过程。此时的语义网络实际上演化为基于网络的规则系统。推理网络上的搜索也有正向推理、逆向推理和双向推理。推理网络上的正向推理过程为:根据已知断言网络,从推理网络的最低层结点出发,按规则所指方向逐步向上搜索,直到最高层假说断言结点为止。,10.4.6 语义网络的一般描述,语义网络能把实体的结构、属性与实体间的因果关系显示地和简明地表达出来,这样可以联想方式实现对系统的解释。由于与概念相关的属性和联系被组织在一个相应的结点中,因而语义网络使概念易于访问和学习。语义网络表现问题更加直观,更易于理解,适合于知识工程师与领域专家沟通。,10.4.6 语义网络的一般描述,语义网络结构的语义解释依赖于该结构的推理过程而没有固定结构的约定,因而得到的推理不能保证像谓词逻辑法那样有效。语义网络结点间的联系可能是线状、树状或网状的,甚至是递归状的结构,使相应的知识存储和检索需要比较复杂的过程。,10.5 框架表示法,10.5.1 框架理论,1975年Minsky在他的论文“A Framework for representing knowledge”中提出了框架理论,后来被逐步成为一种被广泛使用的知识表示方法。框架理论的提出是基于这样的心理学研究成果:即在人类日常的思维及理解活动中已存储了大量的典型情景,当分析和理解所遇到的新情况时,人们并不是从头分析新情况,而是从记忆中选择(即匹配)某个轮廓的基本知识结构(即框架)与当前的现实情况进行某种程度的匹配。,10.5.2 框架结构,框架是基于概念的抽象程度表现出自上而下的分层结构,它的最顶层是固定的一类事物。框架由框架名和描述事物各个方面的槽组成。每个槽有可以拥有若干侧面,而每个侧面可以拥有若干个值。这些内容可以根据具体问题的具体需要来取舍。一个框架的一般结构如下:,例如,一个人可以用其职业、身高和体重等项信息来描述,因而可以用这些项目组成框架的槽。当描述一个具体的人时,再用这些项目的具体值填入到相应的槽中。下面给出的是描述JOHN这个人的一个框架。JOHN isa:PERSON Profession:PROGRAMMER Height:1.8m Weight:79kg,框架系统具有树状结构。每个结点具有如下框架结构形式:框架名AKO VALUEPROP DEFAULTSF IF-NEEDEDCONFLICT ADD其中,框架名用类名表示,AKO是一个槽,VALUE是它的侧面。PROP槽用来记录该结点所具有的特性,其侧面DEFAULT表示该槽的内容是可以进行默认继承的,即当为非NIL时,PROP的槽值为,当为NIL时,PROP的槽值用其父结点的PROP槽值来代替。,框架的一个重要属性是其继承性。为此,一个框架系统常被表示成一种树形结构,树的每一个结点是一个框架结构,子结点与父结点之间用ISA或AKO槽连接,从而有实例框架、类框架、超类框架,等等。所谓框架的继承性,就是当子结点的某些槽值或侧面值没有被直接记录时,可以从其父结点继承这些值,这种继承性和语义网是类似的。,10.5.3 框架表示下的推理,1匹配 框架的匹配,就是根据已知事实寻找合适的框架。其过程可描述为:根据已知事实,与知识库中预先存储的框架进行匹配逐槽比较,从中找出一个或几个与该事实所提供情况最适合的预选框架,形成初步假设;然后对所有预选框架进行评估,以决定最适合的预选框架。由于类框架、超类框架等是对一类事物的一般性描述,当应用于某个具体事物时,具体事物往往存在偏离该类事物的某些特殊性,因此,框架的匹配只能做到不完全匹配。,2填槽 填槽就是进行槽值的计算,主要有两种计算槽值的方法:继承和附加过程。继承是指下层框架可以共享上层框架(直至顶层框架)中定义的有关属性和属性值,又分为:值继承、属性继承和限制继承。“驼鸟小白”框架可以继承“驼鸟框架”中“脚”槽中“数量”侧面的值,这是值继承;“驼鸟小黑框架”可以继承“驼鸟框架”的“超类”槽,这是属性继承;“驼鸟框架”不能继承“鸟框架”中“会飞”槽,这就是限制继承。,附加过程又叫幽灵(DEMON)程序,是附加在数据结构上,并在询问或修改数据结构所存放的值时被激活的过程。附加过程主要有:if-needed:按需求值。本程序所属槽的值将被使用而该槽又暂时无值时,自动启动本程序。if-added:一旦所属槽被赋值则启动本程序。if-removed:删除本程序所属槽的时候启动本程序。if-modified:本程序所属槽值被修改时启动本程序。,例如,确定一个人的年龄,在已知知识库中要匹配的框架为:框名:年龄 NIL if needed ASK if added CHECK这时便自动启动if need 槽的附加过程ASK。例如,当用户输入“25”后,便将年龄槽设定为25,进而启动if added槽执行附加过程CHECK程序,用来检查该年龄值是否合适。如果这个框架有默认槽:default 20,那么当用户没有输入年龄时,就默认年龄为20。,10.6 过程式知识表示,过程式知识表示就是将有关某一问题领域的知识,连同如何使用这些知识的方法,隐式地表达为一个求解问题的过程。过程表示法的知识描述形式就是程序,所有的信息均隐含在程序中。因而从程序求解问题效率上来说,过程式表达要比陈述式表达要高得多,但缺点是过程式表示难以添加新知识和扩充新的功能。过程式知识表示依赖于具体的问题领域,所以它没有固定的表示形式。,