美文网首页
知识图谱入门简介

知识图谱入门简介

作者: James | 来源:发表于2017-11-27 16:24 被阅读53次

一、 知识图谱技术体系

知识图谱的构建主要涉及到知识建模、知识抽取、知识融合、知识存储、知识计算以及知识应用,具体可以归纳如下:

二、 知识图谱实施方法

  1. 使用现有的套装工具(如LOD2、Stardog)
  2. 在现有套装工具的基础上进行扩充
  3. 针对知识图谱生命周期的各种工具进行组合
  4. 有针对性的开发某种工具
  5. 从零开始构建

三、 技术架构

知识图谱架构如下图,这其中主要包括如下几个部分:

3.1 数据采集

主要涉及到爬虫技术

3.2 建立本体

可以采用如下两种方式

自顶向下:由专家创建

自底向上:

  • 从现有的行业标准转化;
  • 从现有高质量数据源(如百科)转化

3.3 本体编辑

有很多现有的工具:如Protégé、Semantic Turkey、Swoop、OBO-Edit等,存在的缺点是需要个人编辑,不能多人并行编辑

3.4 知识抽取

针对不同的目标数据类型,可以提供文件导入、ETL、Wrapper、Extractor三种方式:

  • 结构化数据, 如RDB中的数据,直接ETL或文件上传
  • 半结构化数据, 如百科,配置Wrapper解析逻辑
  • 文档、文本类数据, 如一般的web数据,利用文本抽取引擎的自然语言处理技术(NLP)、机器学习,利用Extractor抽取成结构化的知识数据

3.5 知识融合

把结构化数据、半结构化数据、非结构化数据的知识表达形式都统一成RDF的形式,便于存储和查询。具体的知识融合主要包括如下两种类型:

  • 合并外部知识库: 数据层的融合、模式层的融合

开放数据集成框架:LDIF

  • 合并关系型数据库:将关系型数据转换成RDF的格式,现有工具Triplify、 d2rServer 、OpenLink、 Virtuoso 、SparqlMap等

3.6 知识存储

知识存储的主流存储方式是图数据库,但具体实施时需要根据具体的业务需求来选择存储方式,下表总结了各种存储方式的特点:

  • 关系型数据库存储三元组表(S,P,O): 类似RDF存储结构,以元组为单元进行存储。语义较为明确

问题:大量自连接操作的开销巨大

  • 关系型数据库存储属性表: 属性相似的主语聚为一张表,类似关系型数据结构,每一条数据代表一个实体,每一列代表一个属性

问题:

(1)、 RDF灵活性(高于一阶的关系查询很复杂)

(2)、 查询时必须指定属性,无法做不确定属性的查询

  • 关系型数据库存储垂直分割: 以谓语划分三元组表,根据属性的不同建立数据表,数据结构较为清晰

问题:

(1)、大量数据表

(2)、删除属性代价大

  • 关系型数据库存储RDF存储: 专为存储三元组形式的数据而设计的专用数据库,通过六重索引(SPO、SOP、PSO、POS、OSP、OPS)的方式解决了三元组搜索的效率问题

优点:

(1)、三元组模式查询(triple pattern)的高效执行

(2)、任意两个三元组模式的高效归并连接(merge-join)

缺点:

(1)、六重索引意味着6倍空间开销

(2)、更新维护代价大

  • 图数据库存储: 图数据库的结构定义相比RDF数据库更为通用,实现了图结构中的节点,边以及属性来进行图数据的存储,典型的开源图数据库就是Neo4j。

优点:数据库本身提供完善的图查询语言、支持各种图挖掘算法,缺点:图数据库的分布式存储实现代价高,数据更新速度慢,大节点的处理开销很高。

  • 时态数据存储: 知识图谱中的时态信息包含以下四个方面:

事实的生成时间

某事实的有效时间段

某一对象在特定历史时刻的状态

知识图谱在过去特定时间的版本

  • 存储原则

关系型数据:使用图形数据存储

关联型数据:作为记录型数据存入合适的存储中,通过实体链接与图谱中实体关联。

属性型数据:作为实体的数值属性存入知识图谱

时态型数据:使用基础存储上的时态处理中间件进行存储与查询

3.7 知识表现

知识表现主要涉及语义网的知识,其中与知识图谱相关紧密的是RDF、 OWL、SPARQL几种,具体的特征和用处如下表:

3.8 知识推理

  • jena是一个java 的API,用来支持语义网的有关应用,学习jena需要了解XML 、RDF、 Ontology、OWL等方面的知识。
  • RDFox是一个高度可扩展的内存RDF三重存储,支持共享内存并行数据推理。它是一个用C ++编写的跨平台软件,带有一个Java包装器,可以与任何基于Java的解决方案轻松集成

3.9 知识检索

索引系统的构建,并对查询的结果进行排序

3.10 人机交互

集成现有的可视化工具,实现知识图谱的可视化。常见的可视化工具如3D.js、Echarts等。

相关文章

  • 入门 | 知识图谱简介

    作者 | Walker 信息技术的发展不断推动着互联网技术的变革,Web技术作为互联网时的标志性技术,正处于这场技...

  • 知识图谱入门简介

    一、 知识图谱技术体系 知识图谱的构建主要涉及到知识建模、知识抽取、知识融合、知识存储、知识计算以及知识应用,具体...

  • 1-知识图谱概述

    知识图谱与语义技术概述 典型知识库项目简介 知识图谱相关技术简介知识表示、知识抽取、知识存储、知识融合知识推理、知...

  • JavaScript自学指引,7天成为JavaScript大神

    知识图谱 更详细的推荐:W3Cschool JavaScript 知识图谱 推荐教程 JavaScript入门到精...

  • nodejs入门

    nodejs入门 花了点时间整理了下nodejs入门的图谱,如果将整个图谱的点都过了一次,相信你的nodejs知识...

  • 2019-06-04

    知识图谱入门笔记(1) 知识图谱的概念 KG的概念演化(KG不是突然出现的)KG演化过程 KG的应用: 辅助搜索 ...

  • 知识图谱简介

    知识图谱简介 本文根据幕布上这篇思维导图总结而得无需AI基础,小白也能看懂的知识图谱技术与应用对知识图谱了解还不多...

  • 知识图谱(1)——知识图谱简介

    1.知识图谱的简介 思维导图中涉及的两张图片如下: 知识图谱实战 可以看到,节点类型为Location,属性包括c...

  • 笔记 | 知识图谱原理、流程与应用

    本文为纯笔记梳理,旨在入门学习知识图谱,基于原理与流程,帮助理解知识图谱商业化落地的价值与可能性。 梳理内容包括:...

  • 一 知识图谱简介

    在智能对话领域,现在工业界应用最多的还是用相似度算法来匹配知识库的做法。以这种思想构建的聊天机器人一般都不具备真正...

网友评论

      本文标题:知识图谱入门简介

      本文链接:https://www.haomeiwen.com/subject/etydbxtx.html