知识图谱

知识图谱

简介

知识图谱(Knowledge Graph)是Google 于2012年提出了的概念,初衷是为了优化搜索引擎返回的结果,增强用户搜索质量及体验。

知识图谱本质上是一种揭示实体之间关系的语义网络,广泛应用于智能搜索,智能问答,个性化推荐等领域。

知识图谱是由一条条知识组成,每条知识表示为一个SPO三元组(Subject-Predicate-Object)。

体系架构

知识图谱的架构主要包括自身的逻辑结构以及体系架构

逻辑结构上可分为模式层与数据层两个层次,

  • 数据层:主要是由一系列的事实组成,而知识将以事实为单位进行存储。如果用(实体1,关系,实体2)、(实体、属性,属性值)这样的三元组来表达事实,可选择图数据库作为存储介质,例如开源的 Neo4j、Twitter 的 FlockDB、JanusGraph 等。

  • 模式层:构建在数据层之上,主要是通过本体库来规范数据层的一系列事实表达。本体是结构化知识库的概念模板,通过本体库而形成的知识库不仅层次结构较强,并且冗余程度较小。

体系架构是指其构建模式的结构,如下图所示:

优点

  • 关系的表达能力强

  • 像人类思考一样去做分析

  • 知识学习

  • 高速反馈

图数据库

知识图谱的图存储在图数据库(Graph Database)中,图数据库以图论为理论基础,图论中图的基本元素是节点和边,在图数据库中对应的就是节点和关系。

主要技术

知识建模

为知识和数据进行抽象建模,主要包括以下5个步骤:

  1. 以节点为主体目标,实现对不同来源的数据进行映射与合并。(确定节点)

  2. 利用属性来表示不同数据源中针对节点的描述,形成对节点的全方位描述。(确定节点属性、标签)

  3. 利用关系来描述各类抽象建模成节点的数据之间的关联关系,从而支持关联分析。(图设计)

  4. 通过节点链接技术,实现围绕节点的多种类型数据的关联存储。(节点链接)

  5. 使用事件机制描述客观世界中动态发展,体现事件与节点间的关联,并利用时序描述事件的发展状况。(动态事件描述)

知识获取

知识融合

知识存储

知识计算

知识计算主要是在知识图谱中知识和数据的基础上,通过各种算法,发现其中显式的或隐含的知识、模式或规则等,知识计算的范畴非常大,这里主要讲三个方面:

  1. 图挖掘计算: 基于图论的相关算法,实现对图谱的探索和挖掘。
  2. 本体推理: 使用本体推理进行新知识发现或冲突检测。
  3. 基于规则的推理: 使用规则引擎,编写相应的业务规则,通过推理辅助业务决策。

图挖掘和图计算

知识图谱之上的图挖掘和计算主要分以下6类:

  • 图遍历,知识图谱构建完之后可以理解为是一张很大的图,怎么去查询遍历这个图,要根据图的特点和应用的场景进行遍历;
  • 图经典的算法,如最短路径;
  • 路径的探寻,即给定两个实体或多个实体去发现他们之间的关系;
  • 权威节点的分析,这在社交网络分析中用的比较多;
  • 族群分析;
  • 相似节点的发现。

知识图谱应用

参考

  1. https://zhuanlan.zhihu.com/p/71128505

  2. 知识图谱技术综述

updatedupdated2024-05-102024-05-10