上一问中我们给大家介绍了知识图谱的历史,了解到知识图谱,是结构化的语义知识库,是用来迅速描述物理世界中的概念及其相互关系的一种技术。通过降低数据粒度,聚合大量知识,实现知识的快速响应和推理。
在我们深入了解知识图谱的构建之前,让我们先来看一下它长什么样子!
如图所示,你可以看到,如果两个节点之间存在关系,他们就会被一条无向边连接在一起,那么这个节点,我们就称为实体,它们之间的这条边,我们就称为关系。
知识图谱的基本单位,便是“实体‑关系‑实体”构成的三元组,同时这也是知识图谱的核心。
知识图谱的构建
构建知识图谱是一个不断迭代更新的过程。而每一轮的迭代都是通过信息抽取、知识融合、知识加工这三个阶段来完成的。
知识图谱的体系构架懵逼树上懵逼果,懵逼树下有个我。(一脸懵逼??)
哈哈不要慌,我们一起慢慢来捋一下。
首先我们有一大堆的数据,这些数据可能是结构化的、非结构化的以及半结构化的。结构化数据是指可以使用关系型数据库表示和存储的数据。典型的例子如关系数据库;非结构化数据,顾名思义,就是没有固定结构的数据。各种文档、图片、视频、音频等都属于非结构化数据;而半结构化数据 就是介于这两者中间,常见的有XML、JSON、HTML和CSV文件等等。
1.信息抽取
结构化的数据可以直接进行知识融合。而非结构化、或者半结构化的数据就需要通过一系列自动化或半自动化的技术手段,提取出数据内所有实体、属性以及实体间的相互关系,这个过程我们称之为信息抽取。
随便举个例子:王健林谈儿子王思聪:他算富二代里比较有商业头脑的。
信息抽取的结果包括:王健林、王思聪两个实体;两个实体之间的关系(儿子);以及王思聪这个实体从属于富二代这个概念。
2.知识融合
如上所述,通过信息抽取,我们获得了大量碎片化的知识表达。接下来,我们还需要对这些知识进行整合,消除其中的矛盾和歧义,比如某些实体可能有多种表达,某个特定称谓也许对应于多个不同的实体等等。这个过程我们称之为知识融合。
这个过程很像我们小时候拼的拼图。大量的知识就是拼图碎片,他们散乱无章,其中有很多重复的,也有从其他拼图里跑来的错误碎片。我们需要把他们重新归置,剔除那些重复的、无效的信息,纠正那些错误的,最终拼成一副完整的画面。
这个过程需要大量的人工参与和甄别3.知识加工
在前面,我们已经通过信息抽取,从原始语料中提取出了实体、关系与属性等知识要素,并且经过知识融合,消除实体指称项与实体对象之间的歧义,得到一系列基本的事实表达。
然而事实本身并不等于知识。要想最终获得结构化,网络化的知识体系,还需要经历知识加工的过程。
知识加工主要包括3方面内容:本体构建、知识推理和质量评估。
1) 本体构建
本体简单来说就是一种概念框架,如“人”、“事”、“物”等。 自动化本体构建过程包含三个阶段:①实体并列关系相似度计算;②实体上下位关系抽取;③本体的生成。
举个栗子。当知识图谱刚得到“阿里巴巴”、“腾讯”、“手机”这三个实体的时候,可能会认为它们三个之间并没有什么差别,但当它去计算三个实体之间的相似度后,就会发现,阿里巴巴和腾讯之间可能更相似,和手机差别更大一些。
这就是第①步的作用,完成了第②步实体上下位关系的抽取以后,知识图谱就会得到里巴巴和腾讯,都是“公司”这个概念下的细分实体,它们和手机根本就不隶属于一个类型,无法比较。
从而完成第③步本体的生成,如下图:
2) 知识推理
在我们完成了本体构建这一步之后,一个知识图谱的雏形便已经搭建好了。但到目前为止这些知识图谱之间的大多数关系都是残缺的,那么接下来,我们就可以使用知识推理技术去完成进一步完善了。
这一块的算法基本可以分为基于逻辑的推理、基于图的推理和基于深度学习的推理三大类。
3) 质量评估
质量评估也是知识库构建技术的重要组成部分,这一部分存在的意义在于:可以对知识的可信度进行量化,通过舍弃置信度较低的知识来保障知识库的准确率。
对于经过融合的新知识,需要经过质量评估之后(部分需要人工参与甄别),才能将合格的部分加入到知识库中,以确保知识库的质量。
哎麻,知识图谱终于构建完毕了。长舒一口气!
先别急,还不止如此呢!经过千辛万苦得到的知识图谱,接下来还要经过接连不断地学习和迭代更新,不停的完善和补充最终才能够进入到应用层面。而知识图谱的每一轮迭代都同样需要经过以上程序才能够完成。
—THE END—
下期内容:知识图谱的应用前景和挑战如何? | “人工智能+区块链”科普第8问
网友评论