人工智能 —— 语义网络推理
什么是语义网络推理
通常人们把利用语义网络知识表示方法所进行的推理称为语义网络推理。语义网络的推理过程主要有两种,一种是继承,另一种是匹配。
继承和匹配
步骤一:继承
① 建立一个结点表,用来存放待求解结点和所有以ISA,AKO等继承弧与此结点相连的那些结点。在初始情况下,表中只有待求解结点。
② 检查表中的第一个结点是否有继承唬如果有,就把该弧所指的所有结点放入结点表的末尾,记录这些结点的所有属性,并从结点表中删除第一个结点。如果没有,仪从结点表中删除第一个结点。
③重复(2),直到结点表为空。此时记录下来的所有属性都是待求解结点继承来的属性。
步骤二:匹配
① 根据待求解问题的要求构造一个网络片断,该网络片断中有些结点或弧的标志是空的.称为询问处,它反映的是待求解的问题。
② 根据该语义片断到知识库中去寻找所需要的信息。
③ 当待求解问题的网络片断与知识库中的某个语义网络片断相匹配时,则与询问处所对应的事实就是该问题的解。
语义网络推理的应用
(1)继承和匹配求解问题:
如上图所示,求出鸟(待求解节点)可以(Can)进行的活动
步骤一:继承
① 将鸟(待求解节点)加入节点表
② 检查第一个节点(鸟)的继承弧,将继承弧所指的节点(动物)加入节点表,删除第一个节点(鸟)
③检查第一个节点(动物)的继承弧,不存在继承弧,删除第一个节点(动物),并记录第一个节点(动物)Can 对应的属性(运动,吃)。
故鸟 Can 运动和吃。
步骤二:匹配
① 构造一个语义网络片段如下图
② 根据语义网络片段到知识库中找需要的信息,找到匹配的片段(鸟,Can,飞)
故鸟 Can 运动、吃和飞