知识表示&知识建模
知识
分类
- 常识性知识、领域性知识(作用范围)
- 事实性知识、过程性知识、控制知识(作用及表示)
- 确定性知识、不确定性知识(确定性)
- 逻辑性知识、形象性知识(结构及表现形式)
早期知识表示
知识表示(KR)就是用易于计算机处理的方式来描述人脑的知识的方法,KR支持推理
—阶谓词逻辑(First-Order Logic)
Horn Logic:一阶谓词逻辑的子集
- 原子Atoms:p(t1, t2....,tn)
- p:谓词
- ti:项(变量或者常量)
- 规则Rules:由原子构建:H:-B1,B2,..., Bm.
- H:Head;
- Bi:Body
Description Logic:一阶谓词逻辑的可判定子集
- 概念Concepts:一个领域的子集
- 关系Relations:领域上的二元关系
- 个体Individuals:领域内的实例
- 知识库O:=[InvalidCharacterError: "T," did not match the Name production]
- TBox包含内涵知识,描述概念的一般性质
- 定义:引入概念以及关系的名称
- 包含:声明包含关系的公理
- ABox包含外延知识(又称断言知识),描述论域中的特定个体
- 概念断言:表示一个对象是否属于某个概念
- 关系断言:表示两个对象是否满足一定的关系
- TBox包含内涵知识,描述概念的一般性质
优点
- 接近自然语言,容易被接受,且易于表示精确知识
- 有严格的形式定义和推理规则,易于精确实现
缺点
- 无法表示不确定性知识,难以表示启发性知识及元知识
- 组合爆炸:经常出现事实、规则等的组合爆炸,导致效率低,推理复杂度通常较高
- 是以人的逻辑为主导的表示方式,可能并不适合机器,机器可能有自己的逻辑表示
语义网络(Semantic Net)
优点
- 结构性:语义网络是一种结构化的知识表示方法,它能把事物的属性以及事物间的各种语义联想显式地表示出来
- 联想性:最初是作为人类联想记忆模型提出来的
- 自然性:直观地把事物的属性及其语义联系表示出来,便于理解,自然语言与语义网络的转换比较容易实现,故语义网络表示法在自然语言理解系统中应用最为广泛
缺点
- 非严格性:语义网络没有公认的形式表示体系。一个给定的语义网络所表达的含义完全依赖于处理程序如何对它进行解释
- 通过推理网络而实现的推理不能保证其正确性。支持全称量词和存在量词的语义网络在逻辑上是不充分的,不能保证不存在二义性
- 处理上的复杂性:语义网络表示知识的手段多种多样,灵活性高,但由于表示形式不一致使得处理复杂性高,对知识的检索相对复杂
产生式规则(Production Rule)
IF P THEN Q CF =[0,1]
- P:产生式的前提
- Q:一组结论或操作
- CF (Certainty Factor):确定性因子,置信度
优点
- 自然性:产生式系统采用人类常用的因果关系知识表示形式,既直观、自然,又便于进行推理
- 模块性:产生式规则形式相同,易于模块化管理
- 有效性:能表示确定性知识、不确定性知识、启发性知识、过程性知识等
- 清晰性:产生式有固定的格式,既便于规则设计,又易于对规则库中的知识进行一致性、完整性检测
缺点
- 效率不高:产生式系统求解问题的过程是一个反复进行“匹配―冲突消解—执行”的过程。而规则库一般都比较大,匹配又十分费时,因此其工作效率不高
- 在求解复杂问题时容易引起组合爆炸
- 不能表达结构性知识:产生式系统对具有结构关系的知识无能为力,它不能把具有结构关系的事物间的区别与联系表示出来
框架系统(Framework)
基本思想:认为人们对现实世界中事物的认识都是以一种类似于框架的结构存储在记忆中。当面临一个新事物时,就从记忆中找出一个合适的框架,并根据实际情况对其细节加以修改、补充,从而形成对当前事物的认识。
- 框架:是一种描述对象(事物、事件或概念等)属性的数据结构
- 一个框架由若干个“槽”(Slot)结构组成,每个槽又可分为若干个“侧面”
- 一个槽:用于描述所论对象某一方面的属性(槽值)
- —个侧面:用于描述相应属性的一个方面(侧面值)
<框架名> 槽名1:侧面名1 值1,值2,...,值p1 侧面名2 值1,值2,...,值p2 …… …… 侧面名m1 值1,值2,..,值pml …… 槽名n:侧面名1 值1,值2,.,值r1 约束:约束条件1 …… 约束条件n |
优点
- 对于知识的描述完整和全面
- 基于框架的知识库质量高
- 框架允许数值计算
缺点
- 框架构建成本高,质量要求高
- 框架的表达形式不灵活,很难同其它形式的数据集相互关联使用
基于语义网的知识表示
属性图(Property Graph)
- 优点:
- 表达方式非常灵活
- 属性图的存储充分利用图的结构进行优化,因而在查询计算方面具有较高优势
- 缺点:
- 缺乏工业标准规范的支持,由于不关注更深层的语义表达,也不支持符号逻辑推理
属性图是由顶点(Vertex),边(Edge),标签(Label),关系类型还有属性(Property)组成的有向图
RDF
- Resource:页面、图片、视频等任何具有URI标识符
- Description:属性、特征和资源之间的关系
- Framework:模型、语言和这些描述的语法
三元组:(S,P,O)
空白节点:匿名,_: xyz
开放世界假设:没定义只代表不知道,不知道不代表不存在
允许分布式,可自动合并
带标注RDF:(S,P,O):λ
OWL:Web Ontologies
OWL中的其它词汇 | 描述 |
owl:oneOf | 声明枚举类型 |
owl:disjointWith | 声明两个类不相交 |
owl:uniongf | 声明类的并运算 |
owl:minCardinality owl:maxCardinality | 最小最大的基数限定 |
owl:InverseFunctionalProperty | 声明互反类具有函数属性 |
owl:hasValue | 属性的局部约束时,声明所约束类必有一个取值 |
SPARQL
# prefix declarations
PREFIX foo:
...
# dataset definition
FROM ...
# result clause
SELECT ...
# query pattern
WHERE{
...
}
#query modifiers
ORDERBY ...
- 变量,RDF中的资源,以“?”或者“$”指示;
- 三元组模板( triple pattern) ,在WHERE子句中列示关联的三元组模板,之所以称之为模板,因为三元组中允许变量;
- SELECT子句中指示要查询的目标变量。
- OPTIONAL、FILTER、UNION
JSON-LD
RDFa
HTML5 MicroData
RDF+SPARQL v.s. ER+SQL
- RDF+SPARQL:关系显式声明
- 数据变更时,查询依然轻便
- ER+SQL:关系显式声明
- 数据变更时,需要重写查询
词向量
知识图谱嵌入模型
TransE
DistMult
影响因素:稀疏性