概念
- 语义网络:语义网络是一种用实体及其语义关系来表达知识的有向图。
- 节点:表示实体,表示各种事物、概念、情况、属性、状态、事件、动作等。
- 弧:代表语义关系,表示它所连接的两个实体之间的语义联系
在语义网络表示中,每一个节点和弧都必须有标志,用来说明它所代表的实体或语义。
- 语义基元:在语义网络表示中最基本的语义单元
- 基本网元:一个语义基元所对应的那部分网络结构
语义基元可用如(节点1,弧,节点2)
这样一个三元组来描述。它的结构可以用一个基本网元来表示。
例如,若用A、B分别表示三元组中的节点1、节点2,用R表示A与B之间的语义联系,那么它所对应的基本网元的结构如下所示。
当把多个语义基元用相应的语义联系关联到一起就形成了语义网络。语义网络中弧的方向是有意义的,不能随意调换。
语义网络表示和谓词逻辑表示有着对应的表示能力。从逻辑上看,一个基本网元相当于一组二元谓词。三元组(节点1,弧,节点2)
可用谓词逻辑表示为P(节点1,节点2)
,其中弧的功能由谓词完成。
常用的基本语义关系
- 实例关系:即一个事物是另一个事物的具体例子。例如“我是一个人”。弧上的语义标记为“ISA”,即为“is a”,含义为“是一个”。
- 分类关系(泛化关系):表示一个事物是另一个事物的一个成员,体现的是子类与父类的关系,弧的语义标记为“AKO”,即为“a kind of”。
- 成员关系:体现个体与集体的关系,表示一个事物是另一个事物的成员型。弧的语义标志为“A-Member-of”。
- 属性关系:是指事物与其行为、能力、状态、特征等属性之间的关系,因此属性关系可以有许多中,例如:
- Have,含义为“有”,例如“我有手”
- Can,含义为“可以、会”,例如“狗会跑”
- Age,含义为年龄,例如“我今年22岁”
-
包含关系(聚类关系):是指具有组织或结构特征的“部分与整体”之间的关系。弧的语义标志为“Part-of”。跟分类关系最主要区别在于包含关系一般不具备属性的继承性。
-
时间关系:表示时间上的先后次序关系。常用的时间关系有:
- Before:表示一个事件在另一个事件之前发生
- After:表示一个事件在另一个事件之后发生
例如“深圳大运会在广州亚运会之后举行”
- 位置关系:是指不同的事物在位置方面的关系,常用的有:
- Located-on:表示某一物体在另一物体上面
- Located-at:表示某一物体所处的位置
- Located-under:表示某一物体在另一物体下方
- Located-inside:表示某一物体在另一物体内
- Located-outside:表示某一物体在另一物体外
例如“书在桌上”
事物与概念的表示
语义网络表示一元关系
所谓一元关系就是一些最简单、最直观的事物或概念,例如“雪是白的”、“天是蓝的”。
具体的表示就如同上面“我是一个人”这个例子,这就是一个一元关系。
再例如,“狗能吃,会跑”
较复杂关系的表示方法
例如:
- 动物能吃、能运动
- 鸟是一种动物,鸟有翅膀、会飞
- 鱼是一种动物,鱼生活在水中、会游泳
情况和动作的表示
- 情况的表示:
例如“小燕子这只燕子从春天到秋天一直占有一个巢”
- 事件和动作的表示:
用语义网络表示事件或动作时需要设立一个事件节点。事件节点有一些向外引出的弧,表示动作的主体和客体。
例如,“我给他一本书”
语义网络的基本推理过程
继承
是指把对事物的描述从抽象节点传递到具体节点。通过继承(沿着ISA、AKO这些弧)可以的到所需节点的一些属性值。
一般过程:
- 建立一个节点表,用来存放待解节点和所有以ISA、AKO等继承弧于此节点相连的节点。初始情况下,节点表中只有待解节点。
- 检查表中的第一个节点是否有继承弧。若有则把该弧所指的所有节点放入节点表末尾。记录这些节点的属性,并从节点表中删除第一个节点。若没有则直接删除第一个节点。
- 重复第2步,直到节点表为空。
记录下的全部属性就是待解节点继承来的属性。
匹配
就是在知识库的语义网络中寻找与待解问题相符的语义网络模式。
例如问题为“鱼住在哪?”知识库为上面“较复杂关系的表示方法”中的语义网络。
根据问题构造出如下语义网络片段:
用该片段去知识库中匹配,即可得到“鱼住在水中”。