知识图谱学习笔记

第 1 章 知识图谱概述

1.1 什么是知识图谱

知识图谱是一种用图模型来描述知识和建模世界万物之间的关联关系的技术方法。知识图谱由节点和边组成。

节点可以是实体,如一个人、一本书等,或是抽象的概念,如人工智能、知识图谱等。

边可以是实体的属性,如姓名、书名,或是实体之间的关系,如朋友、配偶。

1.2 知识图谱的发展历史

1.3 知识图谱的价值

知识图谱最早的应用是提升搜索引擎的能力。随后,知识图谱在辅助智能问答、自然语言理解、大数据分析、推荐计算、物联网设备互联、可解释性人工智能等多个方面展现出丰富的应用价值。

1.3.1 辅助搜索

互联网的终极形态是万物的互联,而搜索的终极目标是对万物的直接搜索。

传统搜索引擎依靠网页之间的超链接实现网页的搜索,而语义搜索是直接对事物进行搜索,如人物、机构、地点等。这些事物可能来自文本、图片、视频、音频、IoT 设备等各种信息资源。而知识图谱和语义技术提供了关于这些事物的分类、属性和关系的描述,使得搜索引擎可以直接对事物进行索引和搜索。

1.3.2 辅助问答

1.3.3 辅助大数据分析

1.3.4 辅助语言理解

1.3.5 辅助设备互联

1.4 国内外典型的知识图谱项目

1.4.1 早期的知识库项目

1.4.2 互联网时代的知识图谱

1.4.3 中文开放知识图谱

1.4.4 垂直领域知识图谱

1.5 知识图谱的技术流程

1.6 知识图谱的相关技术

1.6.1 知识图谱与数据库系统

1.6.2 知识图谱与智能问答

1.6.3 知识图谱与机器推理

1.6.4 知识图谱与推荐系统

1.6.5 区块链与去中心化的知识图谱

第 2 章 知识图谱表示与建模

2.1 什么是知识表示

识表示的五大用途或特点:

客观事物的机器标示,即知识表示首先需要定义客观实体的机器指代或指称。

一组本体约定和概念模型,即知识表示还需要定义用于描述客观事物的概念和类别体系。

支持推理的表示基础,即知识表示还需要提供机器推理的模型与方法。

用于高效计算的数据结构,即知识表示也是一种用于高效计算的数据结构。

人可理解的机器语言,即知识表示还必须接近于人的认知,是人可理解的机器语言。

2.2 人工智能早期的知识表示方法

2.2.1 一阶谓词逻辑

一阶谓词逻辑(或简称一阶逻辑)是公理系统的标准形式逻辑。 不同于命题逻辑,一阶逻辑支持量词和谓词。

例如,在命题逻辑里,以下两个句子是不相关的命题:“John MaCarthy 是图灵奖得主”(p)、“Tim Berners-Lee是图灵奖得主”(q)。

但是,在一阶逻辑里,可以用谓词和变量表示知识。

例如,图灵奖得主(x)表示 x 是图灵奖得主。

这里,图灵奖得主是一元谓词,x 是变量,图灵奖得主(x)是一个原子公式。\O\O\O\varnothing图灵奖得主(x)是一个否定公式。在上面的例子中,若 x 为 John MaCarthy,图灵奖得主(x)为第一个命题p。若 x 为Tim Berners-Lee,图灵奖得主(x)为第二个命题q。

一阶谓词逻辑优点

结构性:能把事物的属性以及事物间的各种语义联想显式地表示出来。

严密性:有形式化的语法和语义,以及相关的推理规则。

可实现性:可以转换为计算机内部形式,以便用算法实现。

一阶谓词逻辑缺点

有限的可用性:一阶逻辑的逻辑归结只是半可判定性的。

无法表示不确定性知识。

2.2.2 霍恩子句和霍恩逻辑

一个子句是文字的析取。

霍恩子句是带有最多一个肯定文字的子句,肯定文字指的是没有否定符号的文字。

例如,\varnothing p_1\vee \cdots \vee \varnothing p_n \vee q 是一个霍恩子句,它可以被等价地写为 (p_1\wedge \cdots \wedge p_n) \rightarrow q

霍恩逻辑是一阶逻辑的子集。基于霍恩逻辑的知识库是一个霍恩规则的集合。一个霍恩规则由原子公式构成:B_1\wedge \cdots \wedge B_n \rightarrow H,其中 H 是头原子公式, B_1, \cdots , B_n 是体原子公式。事实是霍恩规则的特例,它们是没有体原子公式且没有变量的霍恩规则。

例如,→图灵奖得主(Tim Berners-Lee)是一个事实,可以简写为图灵奖得主(Tim Berners-Lee)。

霍恩逻辑的优点

结构性。能把事物的属性以及事物间的各种语义联想显式地表示出来。

严密性。有形式化的语法和语义,以及相关的推理规则。

易实现性。可判定,可以转换为计算机内部形式,以便用算法实现。

霍恩逻辑的缺点

有限的表达能力。不能定义类表达式,不能够任意使用量化。

无法表示不确定性知识。

2.2.3 语义网络

2.2.4 框架

2.2.5 描述逻辑

2.3 互联网时代的语义网知识表示框架

2.3.1 RDF和RDFS

2.3.2 OWL和OWL2Fragments

2.3.3 知识图谱查询语言的表示

2.3.4 语义Markup表示语言

2.4 常见开放域知识图谱的知识表示方法

2.4.1 Freebase

2.4.2 Wikidata

2.4.3 ConceptNet5

2.5 知识图谱的向量表示方法

2.5.1 知识图谱表示的挑战

2.5.2 词的向量表示方法

2.5.3 知识图嵌入的概念

2.5.4 知识图谱嵌入的优点

2.5.5 知识图谱嵌入的主要方法

2.5.6 知识图谱嵌入的应用

第 3 章 知识存储

3.1 知识图谱数据库基本知识

3.1.1 知识图谱数据模型

RDF图

RDF 是 W3C 制定的在语义万维网上表示和交换机器可理解信息的标准数据模型。

在 RDF 三元组集合中,每个 Web 资源具有一个 HTTP URI 作为其唯一的 id;一个 RDF 图定义为三元组(s, p, o)的有限集合;每个三元组代表一个陈述句,其中 s 是主语,p 是谓语,o 是宾语;(s, p, o)表示资源 s 与资源 o 之间具有联系 p,或表示资源 s 具有属性 p 且其取值为o。实际上,RDF 三元组集合即为图中的有向边集合。

属性图

属性图可以说是目前被图数据库业界采纳最广的一种图数据模型。

属性图由节点集和边集组成,且满足如下性质:

(1)每个节点具有唯一的id;

(2)每个节点具有若干条出边;

(3)每个节点具有若干条入边;

(4)每个节点具有一组属性,每个属性是一个键值对;

(5)每条边具有唯一的id;

(6)每条边具有一个头节点;

(7)每条边具有一个尾节点;

(8)每条边具有一个标签,表示联系;

(9)每条边具有一组属性,每个属性是一个键值对。

3.1.2 知识图谱查询语言 

3.2 常见知识图谱存储方法

3.2.1 基于关系数据库的存储方案

3.2.2 面向RDF的三元组数据库

3.2.3 原生图数据库

3.2.4 知识图谱数据库比较

3.3 知识存储关键技术

3.3.1 知识图谱数据库的存储:以Neo4j为例

3.3.2 知识图谱数据库的索引

第 4 章 知识抽取与知识挖掘

4.1 知识抽取任务及相关竞赛

4.1.1 知识抽取任务定义

知识抽取是实现自动化构建大规模知识图谱的重要技术,其目的在于从不同来源、不同结构的数据中进行知识提取并存入知识图谱中。知识抽取的数据源可以是结构化数据(如链接数据、数据库)、半结构化数据(如网页中的表格、列表)或者非结构化数据(即纯文本数据)。

知识抽取是指自动化地从文本中发现和抽取相关信息,并将多个文本碎片中的信息进行合并,将非结构化数据转换为结构化数据,包括某一特定领域的模式、实体关系或 RDF 三元组。

具体地,知识抽取包括以下子任务:

1.命名实体识别

从文本中检测出命名实体,并将其分类到预定义的类别中,例如人物、组织、地点、时间等。上图中高灰色记的文字就是命名实体,在一般情况下,命名实体识别是知识抽取其他任务的基础。

2.关系抽取

从文本中识别抽取实体及实体之间的关系。例如,从句子“[王思聪]是万达集团董事长[王健林]的独子”中识别出实体“[王健林]”和“[王思聪]”之间具有“父子”关系。

3.事件抽取

识别文本中关于事件的信息,并以结构化的形式呈现。例如,从恐怖袭击事件的新闻报道中识别袭击发生的地点、时间、袭击目标和受害人等信息。 

4.1.2 知识抽取相关竞赛

4.2 面向非结构化数据的知识抽取

4.2.1 实体抽取

实体抽取又称命名实体识别,其目的是从文本中抽取实体信息元素,包括人名、组织机构名、地理位置、时间、日期、字符值和金额值等。

实体抽取是解决很多自然语言处理问题的基础,也是知识抽取中最基本的任务。想要从文本中进行实体抽取,首先需要从文本中识别和定位实体,然后再将识别的实体分类到预定义的类别中去。

例如,给定一段新闻报道中的句子“北京时间10月25日,骑士后来居上,在主场以119:112 击退公牛”。 实体抽取旨在获取如下图所示的结果。例句中的“北京”“10月25日”分别为地点和时间类型的实体,而“骑士”和“公牛”均为组织实体。实体抽取问题的研究开展得比较早,该领域也积累了大量的方法。总体上,可以将已有的方法分为基于规则的方法、基于统计模型的方法和基于深度学习的方法。

基于规则的方法 

早期的命名实体识别方法主要采用人工编写规则的方式进行实体抽取。这类方法首先构建大量的实体抽取规则,一般由具有一定领域知识的专家手工构建。然后,将规则与文本字符串进行匹配,识别命名实体。

这种实体抽取方式在小数据集上可以达到很高的准确率和召回率,但随着数据集的增大,规则集的构建周期变长,并且移植性较差。

基于统计模型的方法

基于统计模型的方法利用完全标注或部分标注的语料进行模型训练,主要采用的模型包括隐马尔可夫模型、条件马尔可夫模型、最大熵模型以及条件随机场模型。

该类方法将命名实体识别作为序列标注问题处理。与普通的分类问题相比,序列标注问题中当前标签的预测不仅与当前的输入特征相关,还与之前的预测标签相关,即预测标签序列是有强相互依赖关系的。

从自然文本中识别实体是一个典型的序列标注问题。

基于统计模型构建命名实体识别方法主要涉及训练语料标注、特征定义和模型训练三个方面。

基于深度学习的方法

与传统统计模型相比,基于深度学习的方法直接以文本中词的向量为输入,通过神经网络实现端到端的命名实体识别,不再依赖人工定义的特征。

目前,用于命名实体识别的神经网络主要有卷积神经网络、循环神经网络以及引入注意力机制的神经网络。一般地,不同的神经网络结构在命名实体识别过程中扮演编码器的角色,它们基于初始输入以及词的上下文信息,得到每个词的新向量表示;最后再通过CRF模型输出对每个词的标注结果。

4.2.2 关系抽取

关系抽取是知识抽取的重要子任务之一,面向非结构化文本数据,关系抽取是从文本中抽取出两个或者多个实体之间的语义关系。关系抽取与实体抽取密切相关,一般在识别出文本中的实体后,再抽取实体之间可能存在的关系。

目前,关系抽取方法可以分为基于模板的关系抽取方法、基于监督学习的关系抽取方法和基于弱监督学习的关系抽取方法。

基于模板的关系抽取方法

早期的实体关系抽取方法大多基于模板匹配实现。该类方法基于语言学知识,结合语料的特点,由领域专家手工编写模板,从文本中匹配具有特定关系的实体。在小规模、限定领域的实体关系抽取问题上,基于模板的方法能够取得较好的效果。

假设想从文本中自动抽取具有“夫妻”关系的实体,并且观察到包含“夫妻”关系的例句。

例句1:[姚明]与妻子[叶莉]还有女儿姚沁蕾并排坐在景区的游览车上,画面十分温馨

例句2:[徐峥]老婆[陶虹]晒新写真

可以简单地将上述句子中的实体替换为变量,从而得到如下能够获取“夫妻”关系的模板:

模板1:[X]与妻子[Y]……

模板2:[X]老婆[Y]……

利用上述模板在文本中进行匹配,可以获得新的具有“夫妻”关系的实体。为了进一步提高模板匹配的准确率,还可以将句法分析的结果加入模板中。

基于监督学习的关系抽取方法

基于监督学习的关系抽取方法将关系抽取转化为分类问题,在大量标注数据的基础上,训练有监督学习模型进行关系抽取。

利用监督学习方法进行关系抽取的一般步骤包括:预定义关系的类型;人工标注数据;设计关系识别所需的特征,一般根据实体所在句子的上下文计算获得;选择分类模型(如支持向量机、神经网络和朴素贝叶斯等),基于标注数据训练模型;对训练的模型进行评估。

在上述步骤中,关系抽取特征的定义对于抽取的结果具有较大的影响,因此大量的研究工作围绕关系抽取特征的设计展开。

根据计算特征的复杂性,可以将常用的特征分为轻量级、中等量级和重量级三大类。

轻量级特征主要是基于实体和词的特征,例如句子中实体前后的词、实体的类型以及实体之间的距离等。

中等量级特征主要是基于句子中语块序列的特征。

重量级特征一般包括实体间的依存关系路径、实体间依存树结构的距离以及其他特定的结构信息。

例如,对于句子“Forward [motion] of the vehicle through the air caused a [suction] on the road draft tube”,轻量级的特征可以是实体[motion]和[suction]、实体间的词 {of,the,vehicle,through,the,air,caused,a}等;重量级的特征可以包括依存树中的路径 “caused→nsubj→实体1”“caused→dobj→实体2”等。

基于弱监督学习的关系抽取方法

基于监督学习的关系抽取方法需要大量的训练语料,特别是基于深度学习的方法,模型的优化更依赖大量的训练数据。当训练语料不足时,弱监督学习方法可以只利用少量的标注数据进行模型学习。基于弱监督学习的关系抽取方法主要包括远程监督方法和 Bootstrapping 方法。

(1)远程监督方法

远程监督方法通过将知识图谱与非结构化文本对齐的方式自动构建大量的训练数据,减少模型对人工标注数据的依赖,增强模型的跨领域适应能力。

远程监督方法的基本假设是如果两个实体在知识图谱中存在某种关系,则包含两个实体的句子均表达了这种关系。

例如,在某知识图谱中存在实体关系创始人(乔布斯,苹果公司),则包含实体乔布斯和苹果公司的句子“乔布斯是苹果公司的联合创始人和 CEO”则可被用作关系创始人的训练正例。

因此,远程监督关系抽取方法的一般步骤为:

● 从知识图谱中抽取存在目标关系的实体对;

● 从非结构化文本中抽取含有实体对的句子作为训练样例;

● 训练监督学习模型进行关系抽取。

远程监督关系抽取方法可以利用丰富的知识图谱信息获取训练数据,有效地减少了人工标注的工作量。但是,基于远程监督的假设,大量噪声会被引入到训练数据中,从而引发语义漂移的现象。

(2)Bootstrapping 方法

Bootstrapping 方法利用少量的实例作为初始种子集合,然后在种子集合上学习获得关系抽取的模板,再利用模板抽取更多的实例,加入种子集合中。 通过不断地迭代,Bootstrapping方法可以从文本中抽取关系的大量实例。

4.2.3 事件抽取

事件是指发生的事情,通常具有时间、地点、参与者等属性。事件的发生可能是因为一个动作的产生或者系统状态的改变。事件抽取是指从自然语言文本中抽取出用户感兴趣的事件信息,并以结构化的形式呈现出来,例如事件发生的时间、地点、发生原因、参与者等。

一般地,事件抽取任务包含的子任务有:

● 识别事件触发词及事件类型;

● 抽取事件元素的同时判断其角色;

● 抽出描述事件的词组或句子;

● 事件属性标注;

● 事件共指消解。

事件抽取的流水线方法

流水线方法将事件抽取任务分解为一系列基于分类的子任务,包括事件识别、元素抽取、属性分类和可报告性判别;每一个子任务由一个机器学习分类器负责实施。

一个基本的事件抽取流水线需要的分类器包括:

(1)事件触发词分类器。判断词汇是否为事件触发词,并基于触发词信息对事件类别进行分类。

(2)元素分类器。判断词组是否为事件的元素。

(3)元素角色分类器。判定事件元素的角色类别。

(4)属性分类器。判定事件的属性。

(5)可报告性分类器。判定是否存在值得报告的事件实例。 

事件的联合抽取方法

事件抽取的流水线方法在每个子任务阶段都有可能存在误差,这种误差会从前面的环节逐步传播到后面的环节,从而导致误差不断累积,使得事件抽取的性能急剧衰减。为了解决这一问题,一些研究工作提出了事件的联合抽取方法。

在联合抽取方法中,事件的所有相关信息会通过一个模型同时抽取出来。

一般地,联合事件抽取方法可以采用联合推断或联合建模的方法。

联合推断方法首先建立事件抽取子任务的模型,然后将各个模型的目标函数进行组合,形成联合推断的目标函数;通过对联合目标函数进行优化,获得事件抽取各个子任务的结果。

联合建模的方法在充分分析子任务间的关系后, 基于概率图模型进行联合建模,获得事件抽取的总体结果。

4.3 面向结构化数据的知识抽取

4.3.1 直接映射

4.3.2 R2EML

4.3.3 相关工具

4.4 面向半结构化数据的知识抽取

4.4.1 面向百科类数据的知识抽取

4.4.2 面向Web网页的知识抽取

4.5 知识挖掘

4.5.1 知识内容挖掘:实体链接

4.5.2 知识结构挖掘:规则挖掘

第 5 章 知识图谱融合

5.1 什么是知识图谱融合

知识图谱包含描述抽象知识的本体层和描述具体事实的实例层。

本体层用于描述特定领域中的抽象概念、属性、公理;

实例层用于描述具体的实体对象、实体间的关系,包含大量的事实和数据。

在实际应用中,不同的用户和团体根据不同的应用需求和应用领域来构建或选择合适的本体。这样一来,即使在同一个领域内也往往存在着大量的本体。这些本体描述的内容在语义上往往重叠或关联,但使用的本体在表示语言和表示模型上却具有差异,这便造成了本体异构

如果不同的系统采用的本体是异构的,它们之间的信息交互便无法正常进行。因此,解决本体异构、消除应用系统间的互操作障碍是很多知识图谱应用面临的关键问题之一。另一方面,知识图谱中的大量实例也存在异构问题,同名实例可能指代不同的实体,不同名实例可能指代同一个实体,大量的共指问题会给知识图谱的应用造成负面影响。因此,知识图谱应用还需要解决实例层的异构问题。

知识融合是解决知识图谱异构问题的有效途径。知识融合建立异构本体或异构实例之间的联系,从而使异构的知识图谱能相互沟通,实现它们之间的互操作。

为了解决知识融合问题,首先需要分析造成本体异构和实例异构的原因。其次,还需要明确融合针对的具体对象,建立何种功能的映射,以及映射的复杂程度,这对于选择合适的融合方法非常重要。知识融合的核心问题在于映射的生成。 

5.2 知识图谱中的异构问题

5.2.1 语言层不匹配

5.2.2 模型层不匹配

5.3 本体概念层的融合方法与技术

5.3.1 本体映射与本体集成

5.3.2 本体映射分类

5.3.3 本体映射方法和工具

5.3.4 本体映射管理

5.3.5 本体映射应用

5.4 实例层的融合与匹配

5.4.1 知识图谱中的实例匹配问题分析

5.4.2 基于快速相似度计算的实例匹配方法

5.4.3 基于规则的实例匹配方法

5.4.4 基于分治的实例匹配方法

5.4.5 基于学习的实例匹配方法

5.4.6 实力匹配中的分布式并行处理

第 6 章 知识图谱推理

6.1 推理概述

6.1.1 什么是推理

具体来说,推理是通过已有知识推断出未知知识的过程。推理的方法大致可以分为逻辑推理和非逻辑推理,其中逻辑推理的过程包含了严格的约束和推理过程,而非逻辑推理的过程相对模糊。逻辑推理由于其透明性,被广泛研究且定义比较清晰,所以本章讨论的推理主要也围绕逻辑推理展开。

逻辑推理按照推理方式的不同包含两大类:演绎推理和归纳推理。

其中,归纳推理又包含了溯因推理和类比推理等。

演绎推理是一种自上而下的逻辑推理,是指在给定的一个或多个前提的情况下,推断出一个必然成立的结论的过程。

典型的演绎推理有肯定前件假言推理、否定后件假言推理以及三段论。

在假言推理中,给定的前提中一个是包含前件和后件的假言命题,一个是性质命题,假言推理根据假言命题前后件之间的逻辑关系进行推理。

其中,肯定前件假言推理是指性质命题肯定了假言命题的前件,从而推理出肯定的假言后件。例如,通过假言命题“如果今天是星期二 (前件)。那么小明会去上班(后件)”以及性质命题“今天是星期二”,能推理出“小明会去上班”。

否定后件假言推理是指性质命题否定了假言命题的后件,从而推理出否定的假言前件。例如,通过前文的假言命题和性质命题“小明不会去上班”,能推出“今天不是星期二”。

假言三段论中,给定两个假言命题,且第二个假言命题的前件和第一个假言命题的后件的申明内容相同,可以推理出一个新的假言命题,其前件与第一个假言命题的前件相同,其后件与第二个假言命题的后件相同。例如,给定两个假言命题“如果小明生病了,那么小明会缺席”以及“如果小明缺席了,他将错过课堂讨论”,可以推理出 “如果小明生病了,他将错过课堂讨论”。

从以上的例子可以看出,演绎推理是一种形式化的逻辑推理。

归纳推理是一种自下而上的推理,是指基于已有的部分观察得出一般结论的过程。

例如,如果到目前为止我们见到的天鹅都是白色的,那么由归纳推理得出天鹅很大概率是白色的。典型的归纳推理有归纳泛化、统计推理。

归纳泛化是指基于对个体的观察而得出可能适用于整体的结论,即在整体的 一些样本中得到的结论可以泛化到整体上。例如,有 20 个球,每个球不是黑色的就是白色的,要估计黑球和白球大概的个数。可以从20个球中抽样 4个球,如果发现4个球中有3个白色和1个黑色,那么可以通过归纳泛化推理出这20个球中可能有15个球是白色 的,5 个球是黑色的。

统计推理是将整体的统计结论应用于个体。例如,经统计,90% 就读于某高中的同学都上了大学,如果小明是这所高中的同学,那么可以由统计推理得出小明有 90% 概率会上大学。

归纳推理是一种非形式化的推理,是由具体到一般的推理过程。它和演绎推理有本质的不同,因为即便是在最理想的归纳推理中,如果作为推理前提的部分已有观察为真,也不能保证结论一定成立,即在任何情况下前提的真值都不能完全肯定结论的真值。但在演绎推理中,如果前提均为真,那么一定可以推理得到结论也为真。

溯因推理也是一种逻辑推理,是在给定一个或多个已有观察事实O,并根据已有的知识 T 推断出对已有观察最简单且最有可能的解释的过程。例如,当一个病人显示出某种病症,而造成这个病症的原因可能有很多时,寻找在这个病人例子里最可能的原因的过程就是溯因推理。

在溯因推理中,要使基于知识 T 而生成的对观察 O 的解释 E 是合理的,需要满足两个条件,一是 E 可以由 T 和 O 经过推理得出,可以是演绎、归纳推理等多种方式;二是 E 和 T 是相关且相容的。例如,我们知道下雨了马路一定会湿(T),如果观察到马路是湿的(O),可以通过溯因推理得到很大概率是因为 下雨了(E)。

溯因推理是归纳推理的一种,因为整个推理过程的前提和结论并没有必然的关系。

类比推理可以看作只基于对一个事物的观察而进行的对另一个事物的归纳推理,是通过寻找两者之间可以类比的信息,将已知事物上的结论迁移到新的事物上的过程。例如,小明和小红是同龄人,他们都喜欢歌手 A 和歌手 B,且小明还喜欢歌手 C,那么通过类比推理可以得出小红也喜欢歌手 C。

由于被类比的两个事物虽然有可类比的信息,却并不一定同源,而且有可能新推理出的信息和已知的可类比信息没有关系,所以类比推理常常会导致错误的结论,称为不当类比。例如在上例中,如果歌手C 和歌手 A、歌手 B 完全不是一种类型或一个领域的歌手,那么小明喜欢歌手 C 与他喜欢歌手 A 和歌手 B 是完全无关的,所以将“喜欢歌手 C”的结论应用到小红身上不合适。

造成不当类比的原因有很多,包括类比事物不相干、类比理由不充分以及类比预设不当等。

尽管类比推理的结论 相较于前面介绍的三种推理得到的结论错误率更高,但类比推理依然是一种普遍存在的推理方式。

除了以上介绍的四种常见的逻辑推理,还有很多其他类型的推理。

根据不确定的观察信息以及不确定性的知识进行推理的不确定性推理,不确定性推理与前述四种推理方式的最大区别是其所能利用的推理信息都具有很大的不确定性。

在知识演变的过程中,根据原有的推论可否被推翻可以分为不会被推翻的单调推理以及可能会被推翻的非单调推理。

从推理过程精确性来看,又可分为精确推理和模糊推理。

不同的研究领域也有各自的推理问题。

例如,在自然语言处理领域,典型的问题是自然语言推理,其任务判断两个给定句子的蕴涵关系,给定的两个句子一个前提,一个是假设结论,目标是判断在给定前提句子的情况下是否可以推理出假设结论的句子。

答案分为三种,包括:表示假设结论句子和前提句子矛盾的“冲突”、表示可以由前提句子推出假设结论句子的“蕴涵”以及表示前提句子和假设结论既不冲突也不蕴涵的“中立”。

例如,前提句子“正在进行一场男子足球比赛”和假设结论句子“几个男运动员们在打比赛”应判断为“蕴涵”,而前提句子“两个小女孩在笑”和结论句子“两个小女孩因为这周末要去游乐场很开心”应判断为“中立”,将“一个男子沉睡在梦乡”和 “男子眨了眨眼睛”判断为“冲突”。

在计算机视觉领域也有视觉推理,一般任务为根据给定的图片回答特定的需要推理的问题。例如,给定一个包含多个不同色彩、不同形状的几何体图片,回答问题“图中最小的正方体右边的几何体是什么颜色”。

6.1.2 面向知识图谱的推理

面向知识图谱的推理主要围绕关系的推理展开,即基于图谱中已有的事实或关系推断出未知的事实或关系,一般着重考察实体、关系和图谱结构三个方面的特征信息。

如下图所示为人物关系图推理,利用推理可以得到新的事实(X, isFatherOf, M),以及得到规则 isFatherOf(x, y)<= fatherIs(y, x)等。

具体来说,知识图谱推理主要能够辅助推理出新的事实、新的关系、新的公理以及新的规则等。

6.2 基于演绎的知识图谱推理

6.2.1 本体推理

本体与描述逻辑概述

演绎推理的过程需要明确定义的先验信息,所以基于演绎的知识图谱推理多围绕本体展开。

本体的一般定义为概念化的显示规约,它给不同的领域提供共享的词汇。因为共享的词汇需要赋予一定的语义,所以基于演绎的推理一般都在具有逻辑描述基础的知识图谱上展开。

对于逻辑描述的规范,W3C 提出了 OWL。OWL 按表达能力从低到高划分成 oWL Lite、OWL DL和OWL Full。OWL Lite 和OWL DL在语义上等价于某些描述逻辑,而OWL Full 没有对应的描述逻辑。

为了适应更多应用的需求,W3C组织又提出了OWL的新版本 OWL 2。与OWL不同,OWL 2 仅有对应的 Full 和 DL 层次。OWL 2 Full比OWL Full的表达能力更强,同样没有对应的描述逻辑。而OWL2 DL比OWL DL的表达能力更强,仍有对应的描述逻辑。

为了适应高效的应用需求,W3C组织从OWL 2中分裂出三种易处理的剖面OWL2 EL、OWL 2 QL和OWL2 RL。这些剖面都有对应的描述逻辑。

表6-1总结了OWL成员与描述逻辑之间的对应关系。目前,OWL 是知识图谱语言中最规范、最严谨、表达能力最强的语言, 而且OWL基于 RDF 语法,使表示出来的文档具有语义理解的结构基础,OWL的另外一 个作用是促进了统一词汇表的使用,定义了丰富的语义词汇。

基于 OWL 的模型论语义,在丰富逻辑描述的知识图谱中,除了包含实体和二元关系,还包含了许多更抽象的信息,例如描述实体类别的概念以及关系之间的从属信息等。 从而有一系列实用有趣的推理问题,包括:

(1)概念包含。判定概念 C 是否为 D 的子概念,即 C 是否被 D 包含。例如,在包含公理Mother \sqsubseteq Women 和 Women \sqsubseteq Person的本体中,可以判定Mother \sqsubseteq Person成立。

(2)概念互斥。判定两个概念 C 和 D 是否互斥,即不相交。需要判定 C \sqcap D \sqsubseteq \perp是否为给定知识库的逻辑结论。例如,在包含Man \sqcap Women \sqsubseteq \perp的本体中,概念 Man 和 Women 是互斥的。

(3)概念可满足。判定概念 C 是否可满足,需要找到该知识库的一个模型,使 C 的解释非空。例如,包含公理 Eternity \sqsubseteq ⊥的本体中,概念 Eternity 是不可满足概念。

(4)全局一致。判定给定的知识库是否全局一致,需要找到该知识库的一个模型。例如,包含公理 Man \sqcap Women \sqsubseteq ⊥、Man(Allen)和 Women (Allen)的本体是不一致的。

(5)TBox一致。判定给定知识库的TBox是否一致,需要判定 TBox 中的所有原子概念是否都满足。例如,包含公理 Man \sqcap Women \sqsubseteq \perp、Professor \sqsubseteq Man 和 Professor \sqsubseteq Women 的 TBox 是不一致的。

(6)实例测试。判定个体 a 是否是概念 C 的实例,需要判定C(a)是否为给定知识库的逻辑结论。

(7)实例检索。找出概念 C 在给定知识库中的所有实例,需要找出属于C的所有个体 a,即C(a)是给定知识库的逻辑结论。

基于Tableaux的本体推理方法

基于表运算(Tableaux)的本体推理方法是描述逻辑知识库一致性检测的最常用方法。基于表运算的推理方法通过一系列规则构建 Abox,以检测可满足性,或者检测某一 实例是否存在某概念,基本思想类似于一阶逻辑的归结反驳。

以一个例子阐述该方法的基本思想。假设知识库 K 由以下三个声明构成:C(a),C \sqsubseteq D,\negD(a)

将以 a 作为实例的所有概念的集合记作 L(a)。我们使用 L \leftarrow C 表示 \mathcal{L}(a) 通过加入 C 进行更新。例如,如果 \mathcal{L}(a)=\{D\} 而且通过 \mathcal{L}(a)\leftarrow C 来对 \mathcal{L}(a) 进行更新,那么 \mathcal{L}(a) 将变成 {C, D}。

在给出的例子中,不经推导可以得到 \mathcal{L}(a)=\{C,\neg D\}。TBox 声明C \sqsubseteq D\neg D \sqsubseteq \neg C 等价。因此,通过 \mathcal{L}(a)\leftarrow \neg D,得到 \mathcal{L}(a)=\{C,\neg D,\neg C\},得到了矛盾,这 表明K是不一致的。

在上面例子中构建的东西实质上是表的一部分。表是表达知识库逻辑结论的一种结构化方法。如果在表构建过程中出现矛盾,那么知识库是不一致的。

6.2.2 基于逻辑编程的推理方法

6.2.3 基于查询重写的方法

6.2.4 基于生产式规则的方法

6.3 基于归纳的知识图谱推理

6.3.1 基于图结构的推理

方法概述

对于那些自底向上构建的知识图谱,图谱中大部分信息都是表示两个实体之间拥有某种关系的事实三元组。

对于这些三元组,从图的角度来看,可以看作是标签的有向图,有向图以实体为节点,以关系为有向边,并且每个关系边从头实体的节点指向尾实体的节点

有向图中丰富的图结构反映了知识图谱丰富的语义信息,在知识图谱中典型的图结构是两个实体之间的路径。例如,上面的示例中描述了不同人物之间的关系以及人物的职业 信息,包含了如下的路径: 

从语义角度来看,这条由关系“妻子是”和“孩子有”组成的路径揭示了小明和小小之间的父子关系,这条路径蕴涵着三元组: 

6.3.2 基于规则学习的推理

方法概述

基于规则的推理具有精确且可解释的特性,规则是基于规则推理的核心,所以规则获取是一个重要的任务。

在小型的领域知识图谱上,规则可以由领域专家提供,但在大型、综合的知识图谱方面,人工提供规则的效率比较低,且很难做到全面和准确。所以,自动化的规则学习方法应运而生,旨在快速有效地从大规模知识图谱上学习置信度较高的规则,并服务于关系推理任务。

规则一般包含了两个部分,分别为规则头(head)和规则主体(body),其一般形式

解读为有规则主体的信息可推出规则头的信息。

其中,规则头由一个二元的原子构成,而规则主体由一个或多个一元原子或二元原子组成。

原子是指包含了变量的元组,例如 isLocation(X) 是一个一元原子表示实体变量 X 是一个位置实体; hasWife(X, Y) 是一个二元原子,表示实体变量 X 的妻子是实体变量 Y。二元原子可以包含两个或一个,例如 liveIn(X, Hangzhou)是一个指含有一个实体变量 X 的二元原子,表示了变量 X 居住在杭州。在规则主体中,不同的原子是通过逻辑合取组合在一起的,且规则主体中的原子可以以肯定或否定的形式出现,例如如下规则:

规则也可以表示为:

 其中,body+表示以肯定形式出现的原子的逻辑合取集合,而body-表示以否定形式出现的原子的逻辑合取集合。

如果规则主体中只包含有肯定形式出现的原子而不包含否定 形式出现的原子,称这样的规则为霍恩规则,霍恩规则是被研究得比较多的 规则类型,可以表示为以下形式:

在知识图谱的规则学习方法中,另一种被研究得比较多的规则类型叫作路径规则,路径规则可以表示为如下形式: 

其中,规则主体中的原子均为含有两个变量的二元原子,且规则主体的所有二元原子构成一个从规则头中的两个实体之间的路径,且整个规则在知识图谱中构成一个闭环结构。

这几种不同规则的包含关系如下:路径规则∈霍恩规则∈一般规则

在规则学习过程中,对于学习到的规则一般有三种评估方法,分别是支持度、置信度、规则头覆盖度。

支持度指的是满足规则主体和规则 头的实例个数,规则的实例化指的是将规则中的变量替换成知识图谱中真实的实体后的结果。所以,规则的支持度通常是一个大于或等于0的整数值,用support(rule)表示。一般来说,一个规则的支持度越大,说明这个规则的实例在知识图谱中存在得越多,从统计角度来看,也越可能是一个比较好的规则。

置信度的计算方式为:

即规则支持度和满足规则主体的实例个数的比值,即在满足规则主体的实例中,同时也能满足规则头的实例比例。一个规则的置信度越高,一般说明规则的质量也越高。

规则头覆盖度的计算方法为

6.3.3 基于表示学习的推理

方法概述

基于图结构的推理和基于规则学习的推理,都显式地定义了推理学习所需的特征,而基于表示学习的推理通过将知识图谱中包括实体和关系的元素映射到一个连续的向量空间中,为每个元素学习在向量空间中表示,向量空间中的表示可以是一个或多个向量或矩阵。

表示学习让算法在学习向量表示的过程中自动捕捉、推理所需的特征,通过训练学习,将知识图谱中离散符号表示的信息编码在不同的向量空间表示中,使得知识图谱的推理能够通过预设的向量空间表示之间的计算自动实现,不需要显式的推理步骤。

6.4 知识图谱新进展

6.4.1 时序预测推理

传统的数据流学习主要是从连续和快速更新的数据记录中提取知识结构。在语义网中,数据根据领域知识被建模成本体,而数据流则被表示为本体流。本文通过探索本体流,重新审视有监督的流学习与上下文的语义推理,开发一种对本体语义进行嵌入的模型,解决了时序预测推理中的概念漂移问题(即数据分布的意外变化,导致大多数模型随着时间的推移不太准确)。

6.4.2 基于强化学习的知识图谱推理

6.4.3 基于元学习的少样本知识图谱推理

6.4.4 图神经网络与知识图谱推理

第 7 章 语义搜索

7.1 语义搜索简介

搜索也称信息检索,是从信息资源集合获得与信息需求相关的信息资源的活动。

其中,最广泛的信息检索主要是面向文档为单位的检索。此外,面向数据的检索也受到越来越多的关注,主要包括基于数据库的检索和基于知识库的检索,其特点是能够提供更精确的答案。

面向文档和面向数据两种模式间的技术差异大致可以分为三个部分,即对用户需求的表示、对底层数据的表示和匹配技术。

面向文档的信息检索主要通过轻量级的语法模型表示用户的检索需求和资源的内容,即目前占主导地位的关键词模式——词袋模型。这种技术对主题搜索的效果很好,即给定一个主题检索相关的文档,但不能应对更加复杂的信息检索需求。相比来说,基于数据库和基于知识库的检索系统能够通过使用表达能力更强的模型来表示用户的需求,并且利用数据内在的结构和语义关联,允许更为复杂的查询,进而提供更加精确和具体的答案。

语义关注的是能用于搜索的资源的含义。这些含义是通过语义模型构建的,例如语言学模型和概念模型。

语言学模型主要侧重对词语级别的关系建模、分类以及构建同义词库,而概念模型主要侧重对论域中的语法元素的关系建模,以及从语法元素到论域的映射。

此外,语义模型要求必须具备表达能力,即语言和建模结构的数量。同时,语义模型还必须能够形式化,即解析过程必须是可计算的。

可见,不同的语义模型对应的搜索技术也不同。也就是说,并不存在单一类型的语义搜索技术,而是利用各种不同表达能力的语义模型的搜索系统。

一个语义搜索系统的基本框架包括查询构建、查询处理、结果展示、查询优化、语义模型、资源及文档等。

7.2 结构化的查询语言

7.2.1 数据查询

7.2.2 数据插入

7.2.3 数据删除

7.3 语义数据搜索

7.4 语义搜索的交互范式

7.4.1 基于关键词的知识图谱语义搜索方法

7.4.2 基于分面的知识图谱语义搜索

7.4.3 基于表示学习的知识图谱语义搜索

第 8 章 知识问答

8.1 知识问答概述

知识问答系统是一个拟人化的智能系统,它接收使用自然语言表达的问题,理解用户的意图,获取相关的知识,最终通过推理计算形成自然语言表达的答案并反馈给用户。例如,用户想了解“特朗普是哪里人”时,可以在网上搜索关键词“特朗普”,找到相关的百科网页,进而通过阅读文章定位出“纽约”是他的出生地。如果换一种思路,用户拿这个问题问身边的人,也许直接就会听到“纽约”这个答案。

8.1.1 知识问答的基本要素

知识问答或问答是对话的一种形态。它强调以自然语言问答为交互形式从智能体获取知识,不但要求智能体能够理解问题的语义,还要求基于自身掌握的知识和推理计算能力形成答案。

一个问答系统应具备的四大要素:

问题,是问答系统的输入,通常以问句的形式出现(问答题),也会采用选择题、多选题、列举答案题和填空题等形式;

答案,是问答系统的输出,除了文本表示的答案(问答题或填空题),有时也需要输出一组答案(列举问答题)、候选答案的选择(选择题)、甚至是多媒体信息;

智能体,是问答系统的执行者,需要理解问题的语义,掌握并使用知识库解答问题,并最终生成人可读的答案;

知识库,存储了问答系统的知识,其形态可以是文本、数据库或知识图谱。也有工作将知识库编码到计算模型中,例如逻辑规则、机器学习模型和深度学习模型。

8.1.2 知识问答的相关工作

8.1.3 知识问答应用场景

8.2 知识问答的分类体系

8.2.1 问题类型与答案类型

8.2.2 知识库类型

8.2.3 智能体类型

8.3 知识问答系统

8.3.1 NLIDB:早期的问答系统

8.3.2 IRQA:基于信息检索的问答系统

8.3.3 KBQA:基于知识库的问答系统

8.3.4 CommunityQA/FAQ-QA:基于问答对匹配的问答系统

8.3.5 Hybrid QA Framework混合问答系统框架

8.4 知识问答的评价方法

8.4.1 问答系统的评价指标

8.4.2 问答系统的评价数据集

8.5 KBQA前沿技术

8.5.1 KBQA面临的挑战

8.5.2 基于模板的方法

8.5.3 基于语义解析的方法

8.5.4 基于深度学习的传统问答模块优化

8.5.5 基于深度学习的端到端问答模型

第 9 章 知识图谱应用案例

9.1 领域知识图谱构建的技术流程

9.1.1 领域知识建模

9.1.2 知识存储

9.1.3 知识抽取

9.1.4 知识融合

9.1.5 知识计算

9.1.6 知识应用

9.2 领域知识图谱构建的基本方法

9.2.1 自顶向下的构建方法

9.2.2 自底向上的构建方法

9.3 领域知识图谱的应用案例

9.3.1 电商知识图谱的构建与应用

9.3.2 图情知识图谱的构建与应用

9.3.3 生活娱乐知识图谱的构建与应用:以美团为例

9.3.4 企业商业知识图谱的构建与应用

9.3.5 创投知识图谱的构建与应用

9.3.6 中医临床领域知识图谱的构建与应用

9.3.7 金融证券行业知识图谱应用实践

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值