知识库系统课件_第1页
知识库系统课件_第2页
知识库系统课件_第3页
知识库系统课件_第4页
知识库系统课件_第5页
已阅读5页,还剩133页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1.基本概念什么是知识知识的分类知识的属性什么是知识表示11.基本概念什么是知识1基本概念什么是知识这里所谈的知识是知识处理的特殊对象,与日常生活的知识有较大的区别。知识是以各种不同方式把多个信息关联在一起的信息结构。或者表达为“知识是多个信息之间的关联”。如果把“不与任何其他信息关联”即单独的一个信息也被认为是一种特殊的关联方式(不关联),则单个的信息也可以看做是知识的特例,将此称之为“原子事实”。如:“他是军人”,“穿军装”等。如果把这两种信息用“如果…则…”这种因果关系联系起来就成了一条知识(规则),即“如果他是军人,则穿军装”。2基本概念什么是知识2基本概念知识的分类事实:是指人类对客观事物的值或状态的描述。这种知识一般不包含任何变量,可以用一个值为真的命题陈述或一种状态的描述来表达。如今天天气很热,他今年50岁等,都表示一个事实。它描述了客观事物在某种条件下各种属性或状态的真实值。规则:指可以分为前提(条件)和结论两部分,用来表达因果关系的知识。它的一般形式为:如果A则B。A表示前提,B表示结论或应采取的动作。规律:上述的规则知识一般还可以分为不带变量和带变量的规则两种。把带变量的规则称为规律。规律中的变量一旦被实例化为一个具体的值,则规律就变成了一条具体的不带变量的规则。因此由规律可以引出许多具体的规则。3基本概念知识的分类3基本概念知识的属性真实性相对性不完全性模糊性可表示性表示方式:各种符号的逻辑组合,用图形表示,物理表示方式引申另外三种属性:可存储性、可传递性和可处理性。4基本概念知识的属性4基本概念什么是知识表示所谓知识表示实际上就是对知识的一种描述,即用一些约定的符号把知识编码成一组计算机可以接受的数据结构。5基本概念什么是知识表示52.知识表示方法产生式规则语义网络62.知识表示方法产生式规则6知识表示方法知识表示方法有:一阶谓词逻辑、产生式规则、语义网络、框架理论、面向对象等多种表示方法。7知识表示方法知识表示方法有:72.1产生式规则产生式规则的出现产生式(Production)一词,首先是由美国数学家波斯特(E.Post)提出来的。波斯特根据替换规则提出了一种称为波斯特机的计算模型,模型中的每一条规则当时被称为一个产生式。后来,这一术语几经修改扩充,被用到许多领域。例如,形式语言中的文法规则就称为产生式。产生式也称为产生式规则,或简称规则。82.1产生式规则产生式规则的出现8产生式的一般形式前件→后件(P→Q)其中,前件就是前提,后件是结论或动作,前件和后件可以是由逻辑运算符AND、OR、NOT组成的表达式。产生式规则的语义是:如果前提满足,则可得结论或者执行相应的动作,即后件由前件来触发。所以,前件是规则的执行条件,后件是规则体。

产生式规则9产生式的一般形式产生式规则9例如,下面就是几个产生式规则:(1)如果银行存款利率下调,那么股票价格上涨。(2)如果炉温超过上限,则立即关闭风门。(3)如果键盘突然失灵,且屏幕上出现怪字符,则是病毒发作。(4)如果胶卷感光度为200,光线条件为晴天,目标距离不超过5米,则快门速度取250,光圈大小取f16。一条产生式规则就是一条知识。用产生式可以实现推理和操作,产生式规则是知识表示形式。产生式规则10例如,下面就是几个产生式规则:产生式规则10产生式规则产生式规则的与或树表示一组产生式规则可形象地用一棵“与或树”表示如图:这里用带弧线的表示“与”关系,不带弧线的表示“或”关系。11产生式规则产生式规则的与或树表示11产生式规则产生式规则组:B1,B2→A;B3,B4,B5→A;

C1,C2→B1;C3→B2;

C4,C5,C6→B3;C7→B4;

C8→B4;C9,C10→B5D1,D2→C5;

D3→C5;

D4,D5,D6→C8;AB5B4B3B2B1C1C2C3C4C5C6C7C8C9C10D1D2D3D4D5D612产生式规则产生式规则组:AB5B4B3B2B1C1C2C3C产生式规则产生式规则的左右端都可以为空→后件:表示后件是一个无条件成立的结论(即一个事实)或是一个无条件执行的动作。前件→:表示一个问题,什么情况下会使前件成立(为真)。13产生式规则产生式规则的左右端都可以为空13产生式系统的组成产生式系统由三部分组成:产生式规则库、推理机和动态数据库,其结构如图所示。产生式规则14产生式系统的组成产生式规则14产生式系统结构

产生式规则库推理机动态数据库产生式规则库亦称产生式规则集,由领域规则组成,在机器中以某种动态数据结构进行组织。推理机亦称控制执行机构,它是一个程序模块,负责产生式规则的前提条件测试或匹配,规则的调度与选取,规则体的解释和执行。即推理机实施推理,并对推理进行控制,它也就是规则的解释程序。动态数据库是动态数据结构,用来存放初始事实数据、中间结果和最后结果等。15产生式系统结构产生式规则库推理机动态数据库产生式规则库亦产生式系统的运行过程产生式系统运行时,除了需要规则库以外,还需要有初始事实(或数据)和目标条件。目标条件是系统正常结束的条件,也是系统的求解目标。产生式系统启动后,推理机就开始推理,按所给的目标进行问题求解。推理机的一次推理过程,可如图所示。产生式规则16产生式系统的运行过程产生式规则16推理机的一次推理过程

从规则库中取一个条规则,将其前提同当前动态数据库中的事实/数据进行模式匹配匹配成功否把该规则的结论放入当前动态数据库:或执行规则所规定的动作NY产生式规则17推理机的一次推理过程从规则库中取一个条规则,将其前提同当前产生式系统的运行过程一个实际的产生式系统,其目标条件一般不会只经一步推理就可满足,往往要经过多步推理才能满足或者证明问题无解。产生式系统的运行过程就是从初始事实出发,寻求到达目标条件的通路的过程。所以,产生式系统的运行过程也是一个搜索的过程,但一般把产生式系统的整个运行过程也称为推理。

产生式规则18产生式系统的运行过程产生式规则18控制策略与常用算法产生式系统的推理可分为正向推理和反向推理两种基本方式。正向推理就是从初始事实数据出发,正向使用规则进行推理(即用规则前提与动态数据库中的事实匹配,或用动态数据库中的数据测试规则的前提条件,然后产生结论或动作),朝目标方向前进。下面我们给出产生式系统正向推理和反向推理的常用算法。产生式规则19控制策略与常用算法产生式规则19正向推理算法:步1:将初始事实/数据置入动态数据库;步2:用动态数据库中的事实/数据,匹配/测试目标条件,若目标条件满足,则推理成功,结束。步3:用规则库中各规则的前提匹配动态数据库中的事实/数据,将匹配成功的规则组成待用规则集;步4:若待用规则集为空,则运行失败,退出。步5:用某种策略,从待用规则集中选取一条规则,将其结论加入动态数据库,或者执行其动作,撤消待用规则集,转步2。规则的选择策略成为冲突消解策略。产生式系统的推理方式、搜索策略及冲突消解策略等,一般统称为推理控制策略,简称控制策略。控制策略体现在推理机的算法描述中。产生式规则20正向推理算法:产生式规则20正向推理的动态数据库

动态数据库推理控制策略与常用算法可以看出,随着推理的进行,动态数据库的内容或者状态在不断变化。如果把动态数据库的每一个状态作为一个节点的话,则上述推理过程就是一个从初始状态(初始事实或数据)到目标状态(目标条件)的状态图搜索过程。产生式规则21正向推理的动态数据库动态数据库推理控制策略与常用算法产生式控制策略与常用算法例:动物分类问题的产生式系统描述及其求解。设由下列动物识别规则组成一个规则库,推理机采用上述正向推理算法,建立一个产生式系统。该产生式系统就是一个小型动物分类知识库系统。规则如下:

产生式规则22控制策略与常用算法产生式规则22r1:若某动物有奶,则它是哺乳动物。r2:若某动物有毛发,则它是哺乳动物。r3:若某动物有羽毛,则它是鸟。r4:若某动物会飞且生蛋,则它是鸟。r5:若某动物是哺乳动物且有爪且有犬齿且目盯前方,则它是食肉动物。r6:若某动物是哺乳动物且吃肉,则它是食肉动物。r7:若某动物是哺乳动物且有蹄,则它是有蹄动物。r8:若某动物是有蹄动物且反刍食物,则它是偶蹄动物。产生式规则23r1:若某动物有奶,则它是哺乳动物。产生式规则23r9:若某动物是食肉动物且黄褐色且有黑色条纹,则它是老虎。r10:若某动物是食肉动物且黄褐色且有黑色斑点,则它是金钱豹。r11:若某动物是有蹄动物且长腿且长脖子且黄褐色且有暗斑点,则它是长颈鹿。r12:若某动物是有蹄动物且白色且有黑色条纹,则它是斑马。r13:若某动物是鸟且不会飞且长腿且长脖子且黑白色,则它是驼鸟。r14:若某动物是鸟且不会飞且会游泳且黑白色,则它是企鹅。r15:若某动物是鸟且善飞且不怕风浪,则它是海燕。产生式规则24r9:若某动物是食肉动物且黄褐色且有黑色条纹,则它是老虎。产再给出初始事实:f1:某动物有毛发。f2:吃肉。f3:黄褐色。f4:有黑色条纹。目标条件为:该动物是什么?易见,该系统的运行结果为:该动物是老虎。其推理树如图所示。产生式规则25再给出初始事实:产生式规则25动物分类正向推理树老虎食肉动物哺乳动物有毛发吃肉黄褐色有黑色条纹26动物分类正向推理树老虎食肉动物哺乳动物有毛发吃肉黄褐色有黑控制策略与常用算法反向推理算法

反向推理就是从目标出发,反向使用规则进行推理(即用规则结论与目标匹配,又产生新的目标,然后对新目标再作同样的处理),朝初始事实或数据方向前进。产生式规则27控制策略与常用算法产生式规则27产生式规则控制策略与常用算法反向推理算法:步1:将要求证的目标(称为假设)构成一个假设集。步2:从假设集中选出一个假设,检查该假设是否在动态数据库中,如在,则该假设成立,此时,若假设集为空,则成功退出,否则仍执行步2;若该假设不在数据库中,则执行下一步。步3:检查该假设是否可由规则库的某个知识导出。若不能由某个知识导出,则询问用户该假设是否为可由用户证实的原始事实,若是,该假设成立,并将其放入动态数据库,再重新寻找新的假设,若不是,则转入步5;若能由某个知识导出,则执行下一步。28产生式规则控制策略与常用算法28产生式规则控制策略与常用算法反向推理算法:步4:将规则库中可以导出该假设的所有知识构成一个可用知识集。步5:检查可用知识集是否为空,若空,失败退出;否则执行下一步。步6:按冲突消解策略从可用知识集中取出一个知识,继续执行下一步。在推理的某一步,如果知识库中有多条知识可用,则称发生了冲突。步7:将该知识的前提中的每个子条件都作为新的假设放入假设集,转入步2.可以看出,上述反向推理算法的推理过程也是一个图搜索过程,而且一般是一个与或树搜索如下图所示的反向推理树。29产生式规则控制策略与常用算法29动物分类反向推理树

老虎食肉动物黄褐色有黑色条纹有爪有犬齿哺乳动物目盯前方有奶有毛发吃肉30动物分类反向推理树老虎食肉动物黄褐色有黑色条纹有爪有犬齿哺可以看出,与正向推理不同,这次的推理树是从上而下扩展而成的,而且推理过程中还发生过回溯。反向推理也称为后向推理、反向链、目标驱动的推理等。从上面的两个算法可以看出,正向推理是自底向上的综合过程,而反向推理则是自顶向下的分析过程。除了正向推理和反向推理外,产生式系统还可进行双向推理。双向推理就是同时从初始数据和目标条件出发进行推理,如果在中间某处相遇,则推理搜索成功。

产生式规则31可以看出,与正向推理不同,这次的推理树是从上而下扩展而成的,产生式系统的应用由上述产生式系统与图搜索的关系可见,产生式系统完全可以作为问题求解的表示模型和求解模型,而且可作为人工智能问题求解系统的通用模型。用产生式系统也可实现基于谓词逻辑的演绎推理和证明。事实上,当一个产生式系统中的规则是逻辑蕴含式时,其运行过程就是演绎推理(假言推理或三段论)的过程。这时目标值已知时就是证明,当目标值未知时就是推理求值。由于产生式系统既可用于操作性问题求解,也可用于推理性问题求解。因此,产生式系统也是专家系统的基本结构形式。用它既可实现规划型专家系统,也可实现结论型专家系统。产生式规则32产生式系统的应用产生式规则32产生式规则的程序语言实现上面我们对产生式的讨论,只是用自然语言进行描述并仅在概念层次上进行阐述,而并未涉及它的具体结构和程序语言实现问题。现在讨论产生式规则的程序语言实现问题。首先,讨论产生式规则的结构问题。一般来讲,产生式规则的前提和结论部分可以是一个复杂的逻辑表达式,但为了使表达简单规范,且便于推理,在实践中人们往往把规则的前提部分作成形如:

产生式规则33产生式规则的程序语言实现产生式规则33产生式规则的程序语言实现条件1AND条件2AND…AND条件n

或条件1OR条件2OR…OR条件m的形式(其中的条件可以带否定词);把规则结论部分作成形如:断言1/动作1AND断言2/动作2AND…AND断言k/动作k

或断言1/动作1OR断言2/动作2OR…OR断言k/动作k的形式,或者进一步简化成

断言/动作即仅有一项的形式。2.2产生式规则34产生式规则的程序语言实现2.2产生式规则34产生式规则的程序语言实现由于含OR关系的规则也可以分解为几个不含OR关系的规则,所以,产生式规则也可仅取下面的一种形式:条件1AND条件2AND…AND条件n→断言/动作即前件是若干与关系的条件,后件仅有一个断言或动作。

产生式规则35产生式规则的程序语言实现产生式规则35产生式规则的程序语言实现如上例给出的产生式规则用PROLOG的规则可表示如下:

animal-is("老虎"):-it-is("食肉动物"),fact("黄褐色"),fact("有黑色条纹").it-is("食肉动物"):-it-is1("哺乳动物"),fact("有爪"),fact("有犬齿"),fact("目盯前方").

产生式规则36产生式规则的程序语言实现产生式规则36产生式规则的程序语言实现

it-is("食肉动物"):-it-is1("哺乳动物"),fact("吃肉").It--is1("哺乳动物"):-fact("有奶").It--is1(“哺乳动物”):-fact(“有毛发”).

对于这种规则表示形式,可以不用再编写推理机程序,而可直接利用PROLOG自身的推理机,进行推理。例如,当再给出如下的事实:

fact("黄褐色").fact("有黑色条纹").fact("吃肉").fact("有奶").产生式规则37产生式规则的程序语言实现产生式规则37产生式规则的程序语言实现和目标:animal--is(Y).则程序运行后的结果就是:Y=老虎但如果把上面的规则表示成如下的形式:rule(["食肉动物","黄褐色","有黑色条纹"],"老虎").rule(["哺乳动物","有爪","有犬齿","目盯前方"],"食肉动物").rule(["哺乳动物","吃肉"],"食肉动物").rule(["有奶"],"哺乳动物").rule(["有毛发"],"哺乳动物").

则就需要用PROLOG语言编写一个推理机程序。否则,无法实施基于上述规则的推理。产生式规则38产生式规则的程序语言实现产生式规则38产生式规则练习1:有如下规则:R1:35~55岁的人称为中年人;R2:中年人是老练的;R3:中年人是细心的R4:老练而细心并有驾驶技术的人是不会出交通事故的事实:F1:吴先生43岁;F2:吴先生有驾驶技术;目标条件为:吴先生会出交通事故吗?利用正向推理求证上述假设。39产生式规则练习1:39产生式规则吴先生43岁中年人老练细心吴先生有驾驶技术不会出交通事故40产生式规则吴先生43岁中年人老练细心吴先生有驾驶技术不会出交产生式规则练习2:规则:R1:如果你丢了自行车钥匙,并且车胎没气,那么自行车不能骑R2:如果自行车不能骑,并且你只有步行去学校,那么你上课会迟到事实:F1:你丢了自行车钥匙F2:车胎没气目标条件:你上课会迟到吗?利用反向推理求证“你上课会迟到”这一假设。41产生式规则练习2:41产生式规则习题3R1:如果总成绩>350,则可以非定向R2:如果是非定向,且单科成绩>55,则可以录取。R3:如果总成绩>320,则可以委培。R4:如果是委培,且单科成绩>50,则可以录取。如果是免试生,则可以直接录取。事实:F1:总成绩400分F2:单科成绩最低52分。目标条件:该生可以录取吗。利用正反推理求证上述假设。42产生式规则习题3422.2语义网络语义网络的概念语义网络是一种采用网络的形式表示人类知识的方法。它是由节点和边(也称有向弧)组成的一种有向图。其中节点表示事物、对象、概念、行为、性质、状态等;有向弧表示节点之间的某种联系或关系。如下图就是一个语义网络。其中,弧上的标记就是弧的语义。432.2语义网络语义网络的概念43苹果的语义网络

44苹果的语义网络44语义网络鸟的语义网络示意图鸟动物生物企鹅乌鸦是是不能飞能游泳喜寒冷是是有生命有翼能飞吃腐肉黑色更可爱是45语义网络鸟的语义网络示意图鸟动物生物企鹅乌鸦是是不能飞能游泳语义网络的概念语义网络的概念最先是由Quillian提出来的,他于1968年在他的博士论文中,把语义网络作为人类联想记忆的一个显式心理模型。所以,语义网络也称联想网络。现在,语义网络的理论已经有了长足的发展。有人把它划分为五个级别:执行级、逻辑级、认识论级、概念级和语言学级。并分为七种类型:语义网络46语义网络的概念语义网络46(1)命题语义网(包括分块联想网络);(2)数据语义网:以数据为中心的语义网络;(3)语言语义网:用于自然语言的分析和理解;(4)结构语义网:描述客观事物的结构,常见于模式识别和机器学习等领域;(5)分类语义网:描述抽象概念及其层次;(6)推理语义网:是一种命题网,但它已在某种程度上规范化,更适于推理;(7)框架语义网:与框架相结合的语义网。语义网络已成为一种重要的知识表示形式,广泛地应用于人工智能、专家系统,特别是自然语言理解领域中。47(1)命题语义网(包括分块联想网络);47如下图所示的语义网络,就表示了专家系统这个事物(的内涵),同时也可以看作是表示了专家系统与“智能系统”、“专家知识”、“专家思维”及“困难问题”这几个事物之间的关系或联系。语义网络48如下图所示的语义网络,就表示了专家系统这个事物(的内涵),同专家系统的语义网络

智能系统专家思维专家知识困难问题专家系统是一种能解决具有能模拟49专家系统的语义网络智能系统专家思维专家知识困难问题专家系统语义网络几种关系型的语义网络抽象地说,语义网络可表示事物之间的关系。因此,关系(或联系)型的知识和能化为关系型的知识都可以用语义网络来表示。下面我们就给出常见的几种:50语义网络几种关系型的语义网络501.实例关系实例关系表示类与其实例(个体)之间的关系。这是最常见的一种语义关系。例如,“小华是一个大学生”就可表示为图所示。其中,关系“是一个”一般标识为“is-a”

,或ISA。AISAB:表示A是B的一个特例。B是比A更抽象的一个概念,所以从A到B是一个抽象化的过程。通过”ISA“关系,可以实现层层抽象化。表示实例关系的语义网络

小华大学生是一个511.实例关系表示实例关系的语义网络小华大学生是一个512.分类(或从属、泛化)关系分类关系是指事物间的类属关系,下图就是一个描述分类关系的语义网络。在图中,下层概念节点除了可继承、细化、补充上层概念节点的属性外,还出现了变异的情况:鸟是鸵鸟的上层概念节点,其属性是“有羽毛”、“会飞”,但鸵鸟的属性只是继承了“有羽毛”这一属性,而把鸟的“会飞”变更为“不会飞”。其中,关系“是一种”一般标识为“a-kind-of”或AKO。AAKOB表示A是一种B,A与B之间有属性继承和属性更改权。522.分类(或从属、泛化)关系52表示分类关系的语义网络

53表示分类关系的语义网络533.组装关系如果下层概念是上层概念的一个方面或者一部分,则称它们的关系是组装关系。例如图所示的语义网络就是一种组装关系。其中,关系“一部分”一般标识为“a-part-of”。xA-part-ofX:表示x是X的一部分(部件)。桌子桌腿桌面一部分一部分表示组装关系的语义网络

543.组装关系桌子桌腿桌面一部分一部分表示组装关系的语义网络4.属性关系属性关系表示对象的属性及其属性值。例如,图表示simon是一个人,男性,40岁,职业是教师。表示属性关系的语义网络

554.属性关系表示属性关系的语义网络55表示集合—成员关系的语义网络

张三计算机学会是成员5.集合与成员关系意思是“是……的成员”,它表示成员(或元素)与集合之间的关系。例如,“张三是计算机学会会员”可表示为下图。其中,关系“是成员”一般标识为“a-member-of”。xa-member-ofX表示x是X的一个成员(元素)。x是一个特定的个体,X是一个类或集合。他们之间也有属性继承权与属性更改权。56表示集合—成员关系的语义网络张三计算机学会是成员5.集合与6.逻辑关系如果一个概念可由另一个概念推出,两个概念间存在因果关系,则称它们之间是逻辑关系。如下图所示的语义网络就是一个逻辑关系。

表示逻辑关系的语义网络

雨天外出ANDOR带雨披带雨伞则576.逻辑关系表示逻辑关系的语义网络雨天外出ANDOR带雨披7.方位关系在描述一个事物时,经常需要指出它发生的时间、位置,或者指出它的组成、形状等等,此时可用相应的方位关系语义网络表示。例如事实:张宏是石油学院的一名助教;石油学院位于西安市电子二路;张宏今年25岁。可用下图所示的语义网络表示。

587.方位关系58表示方位关系的语义网络电子2路石油学院张宏助教西安市区25岁位于工作在职务属于年龄59表示方位关系的语义网络电子2路石油学院张宏助教西安市区258.所属关系所属关系表示“具有”的意思。例如“狗有尾巴”可表示为下图所示。表示所属关系的语义网络

狗尾巴have608.所属关系表示所属关系的语义网络狗尾巴have60几种关系型的语义网络语义网络中的语义关系是多种多样的,一般根据实际关系定义。如常见的还有before、after、at等表示时间次序关系和located-on、located-under等表示位置关系。进一步,还可对带有全称量词和存在量词的谓词公式的语义加以表示。由上所述可以看出,语义网络实际上是一种复合的二元关系图。网络中的一条边就是一个二元关系,而整个网络可以看作是由这些二元关系拼接而成。语义网络61几种关系型的语义网络语义网络61语句角度的语义网络

上面我们是从关系角度考察语义网的表达力的。下面我们从语句角度来考察语义网。例如,对于如下的语句(或事件):小王送给小李一本书。用语义网络可表示为下图所示,其中S代表整个语句。这种表示被称为是自然语言语句的深层结构表示。语义网络62语句角度的语义网络语义网络62语句(事件)的语义网络送书小王小李书giverrecipientSobject63语句(事件)的语义网络送书小王小李书giverrecip基于语义网络的推理基于语义网络的推理也是继承。继承也是通过匹配、搜索实现的。问题求解过程:首先根据待求问题的要求构造一个网络片断,该网络片断中有些节点是空的,称为询问处,它反映待求解的问题。然后在知识库中查找可与之匹配的语义网络。当网络片断中的询问部分与知识库中的某网络结构匹配时,则与询问处匹配的事实,就是问题的解。

语义网络64基于语义网络的推理语义网络64语义网络张华张-2张-1经理职员22岁长城公司32岁上海浦东是工作在是工作在年龄年龄位于姓名姓名受骋于张华张-2职员?是工作在姓名语义网络示意图求解张华所在公司的语义网络片断65语义网络张华张-2张-1经理职员22岁长城公司32岁上海浦东语义网络的程序语言实现由于语义网络是一个二元关系图,所以用PROLOG可方便地实现语义网络知识表示。例如,如图所示的语义网络用PROLOG可表示如下:

a--kind--of("苹果","水果").taste("苹果","甜").a--kind--of("富士","苹果").intro--from("富士","日本").is--a("日本","亚洲国家").

语义网络66语义网络的程序语言实现语义网络66a--kind--of("秦冠","苹果").produ--in("秦冠","陕西").is--located--at("陕西","中国西部").a--part--of("中国西部","中国").………也可以表示为arc(a--kind--of,"苹果","水果").arc(taste,"苹果","甜").arc(a--kind--of,"富士","苹果").arc(intro--from,"富士","日本").arc(is--a,"日本","亚洲国家").67a--kind--of("秦冠","苹果").67arc(a--kind--of,"秦冠","苹果").arc(produ--in,"秦冠","陕西").arc(is--located--at,"陕西","中国西部").arc(a--part--of,"中国西部","中国").………当然,我们也可以将一个网络或网络片段组织在一个事实中。例如:

net1(a--kind--of(“苹果”,“水果”),taste(“苹果”,“甜”),a--kind--of(“秦冠”,“苹果”),produ--in("秦冠","陕西")).68arc(a--kind--of,"秦冠","苹果").6习题1.什么是知识、事实与规则2.知识具有哪些属性3.什么是知识表示,有哪几种知识表示方法。4.产生式规则的一般形式,并说明其含义。5.什么是正向推理,写出其求解步骤6.什么是反向推理,写出其求解步骤7.参照课件中产生式规则内容,对于“动物分类问题的产生式系统”,如果其规则不变,有如下事实:f1:某动物有毛发。f2:有蹄。f3:白色。f4:有黑色条纹目标条件为:该动物是什么?应用正反推理画出“与或树”,说明该动物是什么。8.什么是语义网络,举一个例子说明。9.举例说明各种关系型的语义网络。69习题1.什么是知识、事实与规则691.基本概念什么是知识知识的分类知识的属性什么是知识表示701.基本概念什么是知识1基本概念什么是知识这里所谈的知识是知识处理的特殊对象,与日常生活的知识有较大的区别。知识是以各种不同方式把多个信息关联在一起的信息结构。或者表达为“知识是多个信息之间的关联”。如果把“不与任何其他信息关联”即单独的一个信息也被认为是一种特殊的关联方式(不关联),则单个的信息也可以看做是知识的特例,将此称之为“原子事实”。如:“他是军人”,“穿军装”等。如果把这两种信息用“如果…则…”这种因果关系联系起来就成了一条知识(规则),即“如果他是军人,则穿军装”。71基本概念什么是知识2基本概念知识的分类事实:是指人类对客观事物的值或状态的描述。这种知识一般不包含任何变量,可以用一个值为真的命题陈述或一种状态的描述来表达。如今天天气很热,他今年50岁等,都表示一个事实。它描述了客观事物在某种条件下各种属性或状态的真实值。规则:指可以分为前提(条件)和结论两部分,用来表达因果关系的知识。它的一般形式为:如果A则B。A表示前提,B表示结论或应采取的动作。规律:上述的规则知识一般还可以分为不带变量和带变量的规则两种。把带变量的规则称为规律。规律中的变量一旦被实例化为一个具体的值,则规律就变成了一条具体的不带变量的规则。因此由规律可以引出许多具体的规则。72基本概念知识的分类3基本概念知识的属性真实性相对性不完全性模糊性可表示性表示方式:各种符号的逻辑组合,用图形表示,物理表示方式引申另外三种属性:可存储性、可传递性和可处理性。73基本概念知识的属性4基本概念什么是知识表示所谓知识表示实际上就是对知识的一种描述,即用一些约定的符号把知识编码成一组计算机可以接受的数据结构。74基本概念什么是知识表示52.知识表示方法产生式规则语义网络752.知识表示方法产生式规则6知识表示方法知识表示方法有:一阶谓词逻辑、产生式规则、语义网络、框架理论、面向对象等多种表示方法。76知识表示方法知识表示方法有:72.1产生式规则产生式规则的出现产生式(Production)一词,首先是由美国数学家波斯特(E.Post)提出来的。波斯特根据替换规则提出了一种称为波斯特机的计算模型,模型中的每一条规则当时被称为一个产生式。后来,这一术语几经修改扩充,被用到许多领域。例如,形式语言中的文法规则就称为产生式。产生式也称为产生式规则,或简称规则。772.1产生式规则产生式规则的出现8产生式的一般形式前件→后件(P→Q)其中,前件就是前提,后件是结论或动作,前件和后件可以是由逻辑运算符AND、OR、NOT组成的表达式。产生式规则的语义是:如果前提满足,则可得结论或者执行相应的动作,即后件由前件来触发。所以,前件是规则的执行条件,后件是规则体。

产生式规则78产生式的一般形式产生式规则9例如,下面就是几个产生式规则:(1)如果银行存款利率下调,那么股票价格上涨。(2)如果炉温超过上限,则立即关闭风门。(3)如果键盘突然失灵,且屏幕上出现怪字符,则是病毒发作。(4)如果胶卷感光度为200,光线条件为晴天,目标距离不超过5米,则快门速度取250,光圈大小取f16。一条产生式规则就是一条知识。用产生式可以实现推理和操作,产生式规则是知识表示形式。产生式规则79例如,下面就是几个产生式规则:产生式规则10产生式规则产生式规则的与或树表示一组产生式规则可形象地用一棵“与或树”表示如图:这里用带弧线的表示“与”关系,不带弧线的表示“或”关系。80产生式规则产生式规则的与或树表示11产生式规则产生式规则组:B1,B2→A;B3,B4,B5→A;

C1,C2→B1;C3→B2;

C4,C5,C6→B3;C7→B4;

C8→B4;C9,C10→B5D1,D2→C5;

D3→C5;

D4,D5,D6→C8;AB5B4B3B2B1C1C2C3C4C5C6C7C8C9C10D1D2D3D4D5D681产生式规则产生式规则组:AB5B4B3B2B1C1C2C3C产生式规则产生式规则的左右端都可以为空→后件:表示后件是一个无条件成立的结论(即一个事实)或是一个无条件执行的动作。前件→:表示一个问题,什么情况下会使前件成立(为真)。82产生式规则产生式规则的左右端都可以为空13产生式系统的组成产生式系统由三部分组成:产生式规则库、推理机和动态数据库,其结构如图所示。产生式规则83产生式系统的组成产生式规则14产生式系统结构

产生式规则库推理机动态数据库产生式规则库亦称产生式规则集,由领域规则组成,在机器中以某种动态数据结构进行组织。推理机亦称控制执行机构,它是一个程序模块,负责产生式规则的前提条件测试或匹配,规则的调度与选取,规则体的解释和执行。即推理机实施推理,并对推理进行控制,它也就是规则的解释程序。动态数据库是动态数据结构,用来存放初始事实数据、中间结果和最后结果等。84产生式系统结构产生式规则库推理机动态数据库产生式规则库亦产生式系统的运行过程产生式系统运行时,除了需要规则库以外,还需要有初始事实(或数据)和目标条件。目标条件是系统正常结束的条件,也是系统的求解目标。产生式系统启动后,推理机就开始推理,按所给的目标进行问题求解。推理机的一次推理过程,可如图所示。产生式规则85产生式系统的运行过程产生式规则16推理机的一次推理过程

从规则库中取一个条规则,将其前提同当前动态数据库中的事实/数据进行模式匹配匹配成功否把该规则的结论放入当前动态数据库:或执行规则所规定的动作NY产生式规则86推理机的一次推理过程从规则库中取一个条规则,将其前提同当前产生式系统的运行过程一个实际的产生式系统,其目标条件一般不会只经一步推理就可满足,往往要经过多步推理才能满足或者证明问题无解。产生式系统的运行过程就是从初始事实出发,寻求到达目标条件的通路的过程。所以,产生式系统的运行过程也是一个搜索的过程,但一般把产生式系统的整个运行过程也称为推理。

产生式规则87产生式系统的运行过程产生式规则18控制策略与常用算法产生式系统的推理可分为正向推理和反向推理两种基本方式。正向推理就是从初始事实数据出发,正向使用规则进行推理(即用规则前提与动态数据库中的事实匹配,或用动态数据库中的数据测试规则的前提条件,然后产生结论或动作),朝目标方向前进。下面我们给出产生式系统正向推理和反向推理的常用算法。产生式规则88控制策略与常用算法产生式规则19正向推理算法:步1:将初始事实/数据置入动态数据库;步2:用动态数据库中的事实/数据,匹配/测试目标条件,若目标条件满足,则推理成功,结束。步3:用规则库中各规则的前提匹配动态数据库中的事实/数据,将匹配成功的规则组成待用规则集;步4:若待用规则集为空,则运行失败,退出。步5:用某种策略,从待用规则集中选取一条规则,将其结论加入动态数据库,或者执行其动作,撤消待用规则集,转步2。规则的选择策略成为冲突消解策略。产生式系统的推理方式、搜索策略及冲突消解策略等,一般统称为推理控制策略,简称控制策略。控制策略体现在推理机的算法描述中。产生式规则89正向推理算法:产生式规则20正向推理的动态数据库

动态数据库推理控制策略与常用算法可以看出,随着推理的进行,动态数据库的内容或者状态在不断变化。如果把动态数据库的每一个状态作为一个节点的话,则上述推理过程就是一个从初始状态(初始事实或数据)到目标状态(目标条件)的状态图搜索过程。产生式规则90正向推理的动态数据库动态数据库推理控制策略与常用算法产生式控制策略与常用算法例:动物分类问题的产生式系统描述及其求解。设由下列动物识别规则组成一个规则库,推理机采用上述正向推理算法,建立一个产生式系统。该产生式系统就是一个小型动物分类知识库系统。规则如下:

产生式规则91控制策略与常用算法产生式规则22r1:若某动物有奶,则它是哺乳动物。r2:若某动物有毛发,则它是哺乳动物。r3:若某动物有羽毛,则它是鸟。r4:若某动物会飞且生蛋,则它是鸟。r5:若某动物是哺乳动物且有爪且有犬齿且目盯前方,则它是食肉动物。r6:若某动物是哺乳动物且吃肉,则它是食肉动物。r7:若某动物是哺乳动物且有蹄,则它是有蹄动物。r8:若某动物是有蹄动物且反刍食物,则它是偶蹄动物。产生式规则92r1:若某动物有奶,则它是哺乳动物。产生式规则23r9:若某动物是食肉动物且黄褐色且有黑色条纹,则它是老虎。r10:若某动物是食肉动物且黄褐色且有黑色斑点,则它是金钱豹。r11:若某动物是有蹄动物且长腿且长脖子且黄褐色且有暗斑点,则它是长颈鹿。r12:若某动物是有蹄动物且白色且有黑色条纹,则它是斑马。r13:若某动物是鸟且不会飞且长腿且长脖子且黑白色,则它是驼鸟。r14:若某动物是鸟且不会飞且会游泳且黑白色,则它是企鹅。r15:若某动物是鸟且善飞且不怕风浪,则它是海燕。产生式规则93r9:若某动物是食肉动物且黄褐色且有黑色条纹,则它是老虎。产再给出初始事实:f1:某动物有毛发。f2:吃肉。f3:黄褐色。f4:有黑色条纹。目标条件为:该动物是什么?易见,该系统的运行结果为:该动物是老虎。其推理树如图所示。产生式规则94再给出初始事实:产生式规则25动物分类正向推理树老虎食肉动物哺乳动物有毛发吃肉黄褐色有黑色条纹95动物分类正向推理树老虎食肉动物哺乳动物有毛发吃肉黄褐色有黑控制策略与常用算法反向推理算法

反向推理就是从目标出发,反向使用规则进行推理(即用规则结论与目标匹配,又产生新的目标,然后对新目标再作同样的处理),朝初始事实或数据方向前进。产生式规则96控制策略与常用算法产生式规则27产生式规则控制策略与常用算法反向推理算法:步1:将要求证的目标(称为假设)构成一个假设集。步2:从假设集中选出一个假设,检查该假设是否在动态数据库中,如在,则该假设成立,此时,若假设集为空,则成功退出,否则仍执行步2;若该假设不在数据库中,则执行下一步。步3:检查该假设是否可由规则库的某个知识导出。若不能由某个知识导出,则询问用户该假设是否为可由用户证实的原始事实,若是,该假设成立,并将其放入动态数据库,再重新寻找新的假设,若不是,则转入步5;若能由某个知识导出,则执行下一步。97产生式规则控制策略与常用算法28产生式规则控制策略与常用算法反向推理算法:步4:将规则库中可以导出该假设的所有知识构成一个可用知识集。步5:检查可用知识集是否为空,若空,失败退出;否则执行下一步。步6:按冲突消解策略从可用知识集中取出一个知识,继续执行下一步。在推理的某一步,如果知识库中有多条知识可用,则称发生了冲突。步7:将该知识的前提中的每个子条件都作为新的假设放入假设集,转入步2.可以看出,上述反向推理算法的推理过程也是一个图搜索过程,而且一般是一个与或树搜索如下图所示的反向推理树。98产生式规则控制策略与常用算法29动物分类反向推理树

老虎食肉动物黄褐色有黑色条纹有爪有犬齿哺乳动物目盯前方有奶有毛发吃肉99动物分类反向推理树老虎食肉动物黄褐色有黑色条纹有爪有犬齿哺可以看出,与正向推理不同,这次的推理树是从上而下扩展而成的,而且推理过程中还发生过回溯。反向推理也称为后向推理、反向链、目标驱动的推理等。从上面的两个算法可以看出,正向推理是自底向上的综合过程,而反向推理则是自顶向下的分析过程。除了正向推理和反向推理外,产生式系统还可进行双向推理。双向推理就是同时从初始数据和目标条件出发进行推理,如果在中间某处相遇,则推理搜索成功。

产生式规则100可以看出,与正向推理不同,这次的推理树是从上而下扩展而成的,产生式系统的应用由上述产生式系统与图搜索的关系可见,产生式系统完全可以作为问题求解的表示模型和求解模型,而且可作为人工智能问题求解系统的通用模型。用产生式系统也可实现基于谓词逻辑的演绎推理和证明。事实上,当一个产生式系统中的规则是逻辑蕴含式时,其运行过程就是演绎推理(假言推理或三段论)的过程。这时目标值已知时就是证明,当目标值未知时就是推理求值。由于产生式系统既可用于操作性问题求解,也可用于推理性问题求解。因此,产生式系统也是专家系统的基本结构形式。用它既可实现规划型专家系统,也可实现结论型专家系统。产生式规则101产生式系统的应用产生式规则32产生式规则的程序语言实现上面我们对产生式的讨论,只是用自然语言进行描述并仅在概念层次上进行阐述,而并未涉及它的具体结构和程序语言实现问题。现在讨论产生式规则的程序语言实现问题。首先,讨论产生式规则的结构问题。一般来讲,产生式规则的前提和结论部分可以是一个复杂的逻辑表达式,但为了使表达简单规范,且便于推理,在实践中人们往往把规则的前提部分作成形如:

产生式规则102产生式规则的程序语言实现产生式规则33产生式规则的程序语言实现条件1AND条件2AND…AND条件n

或条件1OR条件2OR…OR条件m的形式(其中的条件可以带否定词);把规则结论部分作成形如:断言1/动作1AND断言2/动作2AND…AND断言k/动作k

或断言1/动作1OR断言2/动作2OR…OR断言k/动作k的形式,或者进一步简化成

断言/动作即仅有一项的形式。2.2产生式规则103产生式规则的程序语言实现2.2产生式规则34产生式规则的程序语言实现由于含OR关系的规则也可以分解为几个不含OR关系的规则,所以,产生式规则也可仅取下面的一种形式:条件1AND条件2AND…AND条件n→断言/动作即前件是若干与关系的条件,后件仅有一个断言或动作。

产生式规则104产生式规则的程序语言实现产生式规则35产生式规则的程序语言实现如上例给出的产生式规则用PROLOG的规则可表示如下:

animal-is("老虎"):-it-is("食肉动物"),fact("黄褐色"),fact("有黑色条纹").it-is("食肉动物"):-it-is1("哺乳动物"),fact("有爪"),fact("有犬齿"),fact("目盯前方").

产生式规则105产生式规则的程序语言实现产生式规则36产生式规则的程序语言实现

it-is("食肉动物"):-it-is1("哺乳动物"),fact("吃肉").It--is1("哺乳动物"):-fact("有奶").It--is1(“哺乳动物”):-fact(“有毛发”).

对于这种规则表示形式,可以不用再编写推理机程序,而可直接利用PROLOG自身的推理机,进行推理。例如,当再给出如下的事实:

fact("黄褐色").fact("有黑色条纹").fact("吃肉").fact("有奶").产生式规则106产生式规则的程序语言实现产生式规则37产生式规则的程序语言实现和目标:animal--is(Y).则程序运行后的结果就是:Y=老虎但如果把上面的规则表示成如下的形式:rule(["食肉动物","黄褐色","有黑色条纹"],"老虎").rule(["哺乳动物","有爪","有犬齿","目盯前方"],"食肉动物").rule(["哺乳动物","吃肉"],"食肉动物").rule(["有奶"],"哺乳动物").rule(["有毛发"],"哺乳动物").

则就需要用PROLOG语言编写一个推理机程序。否则,无法实施基于上述规则的推理。产生式规则107产生式规则的程序语言实现产生式规则38产生式规则练习1:有如下规则:R1:35~55岁的人称为中年人;R2:中年人是老练的;R3:中年人是细心的R4:老练而细心并有驾驶技术的人是不会出交通事故的事实:F1:吴先生43岁;F2:吴先生有驾驶技术;目标条件为:吴先生会出交通事故吗?利用正向推理求证上述假设。108产生式规则练习1:39产生式规则吴先生43岁中年人老练细心吴先生有驾驶技术不会出交通事故109产生式规则吴先生43岁中年人老练细心吴先生有驾驶技术不会出交产生式规则练习2:规则:R1:如果你丢了自行车钥匙,并且车胎没气,那么自行车不能骑R2:如果自行车不能骑,并且你只有步行去学校,那么你上课会迟到事实:F1:你丢了自行车钥匙F2:车胎没气目标条件:你上课会迟到吗?利用反向推理求证“你上课会迟到”这一假设。110产生式规则练习2:41产生式规则习题3R1:如果总成绩>350,则可以非定向R2:如果是非定向,且单科成绩>55,则可以录取。R3:如果总成绩>320,则可以委培。R4:如果是委培,且单科成绩>50,则可以录取。如果是免试生,则可以直接录取。事实:F1:总成绩400分F2:单科成绩最低52分。目标条件:该生可以录取吗。利用正反推理求证上述假设。111产生式规则习题3422.2语义网络语义网络的概念语义网络是一种采用网络的形式表示人类知识的方法。它是由节点和边(也称有向弧)组成的一种有向图。其中节点表示事物、对象、概念、行为、性质、状态等;有向弧表示节点之间的某种联系或关系。如下图就是一个语义网络。其中,弧上的标记就是弧的语义。1122.2语义网络语义网络的概念43苹果的语义网络

113苹果的语义网络44语义网络鸟的语义网络示意图鸟动物生物企鹅乌鸦是是不能飞能游泳喜寒冷是是有生命有翼能飞吃腐肉黑色更可爱是114语义网络鸟的语义网络示意图鸟动物生物企鹅乌鸦是是不能飞能游泳语义网络的概念语义网络的概念最先是由Quillian提出来的,他于1968年在他的博士论文中,把语义网络作为人类联想记忆的一个显式心理模型。所以,语义网络也称联想网络。现在,语义网络的理论已经有了长足的发展。有人把它划分为五个级别:执行级、逻辑级、认识论级、概念级和语言学级。并分为七种类型:语义网络115语义网络的概念语义网络46(1)命题语义网(包括分块联想网络);(2)数据语义网:以数据为中心的语义网络;(3)语言语义网:用于自然语言的分析和理解;(4)结构语义网:描述客观事物的结构,常见于模式识别和机器学习等领域;(5)分类语义网:描述抽象概念及其层次;(6)推理语义网:是一种命题网,但它已在某种程度上规范化,更适于推理;(7)框架语义网:与框架相结合的语义网。语义网络已成为一种重要的知识表示形式,广泛地应用于人工智能、专家系统,特别是自然语言理解领域中。116(1)命题语义网(包括分块联想网络);47如下图所示的语义网络,就表示了专家系统这个事物(的内涵),同时也可以看作是表示了专家系统与“智能系统”、“专家知识”、“专家思维”及“困难问题”这几个事物之间的关系或联系。语义网络117如下图所示的语义网络,就表示了专家系统这个事物(的内涵),同专家系统的语义网络

智能系统专家思维专家知识困难问题专家系统是一种能解决具有能模拟118专家系统的语义网络智能系统专家思维专家知识困难问题专家系统语义网络几种关系型的语义网络抽象地说,语义网络可表示事物之间的关系。因此,关系(或联系)型的知识和能化为关系型的知识都可以用语义网络来表示。下面我们就给出常见的几种:119语义网络几种关系型的语义网络501.实例关系实例关系表示类与其实例(个体)之间的关系。这是最常见的一种语义关系。例如,“小华是一个大学生”就可表示为图所示。其中,关系“是一个”一般标识为“is-a”

,或ISA。AISAB:表示A是B的一个特例。B是比A更抽象的一个概念,所以从A到B是一个抽象化的过程。通过”ISA“关系,可以实现层层抽象化。表示实例关系的语义网络

小华大学生是一个1201.实例关系表示实例关系的语义网络小华大学生是一个512.分类(或从属、泛化)关系分类关系是指事物间的类属关系,下图就是一个描述分类关系的语义网络。在图中,下层概念节点除了可继承、细化、补充上层概念节点的属性外,还出现了变异的情况:鸟是鸵鸟的上层概念节点,其属性是“有羽毛”、“会飞”,但鸵鸟的属性只是继承了“有羽毛”这一属性,而把鸟的“会飞”变更为“不会飞”。其中,关系“是一种”一般标识为“a-kind-of”或AKO。AAKOB表示A是一种B,A与B之间有属性继承和属性更改权。1212.分类(或从属、泛化)关系52表示分类关系的语义网络

122表示分类关系的语义网络533.组装关系如果下层概念是上层概念的一个方面或者一部分,则称它们的关系是组装关系。例如图所示的语义网络就是一种组装关系。其中,关系“一部分”一般标识为“a-part-of”。xA-part-ofX:表示x是X的一部分(部件)。桌子桌腿桌面一部分一部分表示组装关系的语义网络

1233.组装关系桌子桌腿桌面一部分一部分表示组装关系的语义网络4.属性关系属性关系表示对象的属性及其属性值。例如,图表示simon是一个人,男性,40岁,职业是教师。表示属性关系的语义网络

1244.属性关系表示属性关系的语义网络55表示集合—成员关系的语义网络

张三计算机学会是成员5.集合与成员关系意思是“是……的成员”,它表示成员(或元素)与集合之间的关系。例如,“张三是计算机学会会员”可表示为下图。其中,关系“是成员”一般标识为“a-member-of”。xa-member-ofX表示x是X的一个成员(元素)。x是一个特定的个体,X是一个类或集合。他们之间也有属性继承权与属性更改权。125表示集合—成员关系的语义网络张三计算机学会是成员5.集合与6.逻辑关系如果一个概念可由另一个概念推出,两个概念间存在因果关系,则称它们之间是逻辑关系。如下图所示的语义网络就是一个逻辑关系。

表示逻辑关系的语义网络

雨天外出ANDOR带雨披带雨伞则1266

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论