2022知识图谱发展报告阅读——1 知识表示与建模
第一章 知识表示与建模
知识图谱发展报告(2022)下载链接 (访问密码: 2096)
一、任务定义、目标和研究意义
知识表示(knowledge representation)将现实世界中的各类知识表达成计算机可存储和可计算的结构,使得计算机可以无障碍地理解所存储的知识。五大特点:
- 客观事物的机器标识(A KR is a surrogate),即知识表示首先需要定义客观实体的机器指代或指称;
- 一组本体约定和概念模型(A KR is a Set of ontological commitments),即知识表示还需要定义用于描述客观事物的概念和类别体系。
- 支持推理的表示基础(A KR is a Theory of Intelligent Reasoning),即知识表示还需要提供机器推理的模型与方法。
- 用于高效计算的数据结构(A KR is a medium of efficient computation),即知识表示也是一种用于高效计算的数据结构。
- 人可理解的机器语言(A KR is a medium of human expression),即知识表示需要接近人的认知,是人可理解的机器语言。
知识表示已经探索过语义网络、专家系统、语义网、知识图谱等形态,形成了基于框架的语言、产生式规则、RDF 以及 OWL 等知识表示语言。
当前人工智能在语言理解、视觉场景分析、决策分析等方面依然面临巨大的挑战,其中一个关键挑战便是如何让机器掌握大量的知识,尤其是常识知识,这体现了知识表示的重要性。
二、研究内容与关键科学问题
根据知识呈现的形态和方式,分为本体知识、规则知识、事件知识等。
本体知识表达实体和关系的语义层次,用于建模领域的概念模型;规则知识表达实体和关系之间存在的推理规律,是更抽象的知识;事件知识包含多种事件要素,是更多维更复杂的知识。
1. 本体知识
在计算机领域,本体可以在语义层次上描述知识,因此可以用于建立某个领域知识的通用概念模型,即定义组成“主 题领域”的词汇表的“基本术语”及其“关系”,以及结合这些术语和关系来定义词汇表外延的“规则”[[Neches et al., 1991][1]]。
“领域”是指一个本体,描述一个特定领域;“术语”指给定领域的重要概念;“基本术语之间的关系”包括类的层次结构等关系;“词汇表外延的规则”包括概念的属性约束、值约束、不相交描述以及对象间的逻辑关系规定等。本体体现了客观事物内在、外在的关系,具有概念化、明确性、形式化和共享性的特点。
从逻辑结构上看,知识图谱一般可分为两层,数据层存储知识图谱中的所有三元组信息,模式层(也称 schema 层或本体层)位于数据层之上,对数据层知识结构进行提炼,即通过在模式层上建立约束和规则,可规范图谱中的实体、关系、实体属性、属性值之间的联系,以及完成在知识图谱上的推理。基于知识图谱,本体既可以以模式层的形式出现,表达数据层的抽象知识,也可以以数据层的形式出现,表达资源之间的约束关系,尤其是层次约束关系。
2. 规则知识
规则是传统推理中一种重要的方式,在知识图谱中规则被表示为:
其中,body 表示规则主体,head 表示规则的头部,一条规则由主体推导出头部。规则头由一个二元的原子构成,而规则的主体则由一个或者多个一元原子或者二元原子所构成。原子就是包含了变量的三元组,其本身也有肯定和否定之分。如果主体中仅仅包含肯定的原子,那么这样的规则也可以被称之为霍恩规则。
引用规则的过程称为推理,如果一个程序处理推理过程,则该程序称为推理引擎。有一种推理引擎以规则知识为基础推理,其具有易于理解、易于获取、易于管理的特点,这样的推理引擎称为“规则引擎”。
3. 事件知识
具体参考后续篇章
三、技术方法和研究现状
1. 本体知识建模
1)本体知识建模语言
本体描述语言是本体构建环节中的重要工具,客观的信息资源只有经过本体语言的描述转化后才能够在计算机、网络上实现输入、导出、分类、语义关联、逻辑推理等一系列的功能。
目前代表性的本体描述语言有:XML、RDF、RDFS和OWL。
2)本体知识建模工具
本体建模工具有 Protégé、Apollo、OntoStudio、TopBraid Composer、Semantic Turkey、 Knoodl、Chimaera、OliEd、WebODE、Kmgen 和 DOME。
3)应用实践
本体可用于网站的组织和导航。
本体可用于提高网络搜索的精确度及支持特殊查询。
基于本体推理的中医药诊疗实践[[陈华钧 et al., 2011][2]]。
基于本体建模对化工生产过程进行控制[[荣冈 et al., 2015][3]]。
2. 规则知识建模
1)规则知识建模语言
在规则引擎中,通常会使用某种表述性的语言来描述规则。目前并没有一个通用的规则引擎标准。规则建模语言可以分为结构化的(Structured)和基于标记的(Markup,通常为XML)两类。下面介绍几种常用的逻辑规则编程语言。
- Prolog 的命名来自“逻辑编程”(programming of Logic),广泛应用在人工智能的研究中。
- Datalog 是一种数据查询语言,语法与 Prolog 相似。Datalog 不是某一种具体的语言。
- Rule Markup Language (RuleML)是一系列 Web 文档和数据语言的统一系统,通过模式语言进行句法指定,最初为 XML 开发并转换为其他格式,如 JSON。
- Semantic Web Rule Language(SWRL)的规则部分概念是由 RuleML 所演变而来,并结合了 OWL 本体论的部分概念。
2)规则知识建模工具
常见的规则知识建模工具有:Cyc 推理引擎、KAON2、Flora-2、Prova。
3)应用实践
规则引擎在应用中作为一个嵌入在应用程序中的组件,其核心思想是将复杂多变的规则从业务流程中解放出来,以规则脚本的形式存储在文件或数据库中。使得业务规则的变化不需要修改代码重启机器就可以在线完成。
四、技术展望与发展趋势
自动构建的过程中,如果数据是结构化的(例如图表数据),已知属性名称、属性间的层次结构等,构建本体相对较为容易。如果缺乏以上信息,则只能通过文本信息等非结构化数据提炼知识构建本体,技术上将面临很多挑战。整体来看,呈现以下趋势:
- 多模态数据及数据的结构化
- 低资源场景下的本体构建
- 大规模本体构建
规则引擎的发展也遇到了很多问题,需要在未来进一步研究和解决。主要问题如下:
- 规则可视化配置
- 规则执行的效率
- 规则的维护
[1]:\(\scriptsize{Neches R, Fikes R E, Finin T, et al. Enabling technology for knowledge sharing[J]. AI magazine, 1991, 12(3): 36-36.}\)
[2]:\(\scriptsize{陈华钧. 基于本体推理的中医药五行诊疗系统:中国,CN102156801A [P]. 2011-08-17.}\)
[3]:\(\scriptsize{荣冈. 一种基于本体构建模型的化工生产过程控制方法:中国, CN104678780A [P]. 2015-06-03.}\)