位置: IT常识 - 正文

知识图谱构建全流程(知识图谱实现方案)

编辑:rootadmin
知识图谱构建全流程 一、知识图谱简介

推荐整理分享知识图谱构建全流程(知识图谱实现方案),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:知识图谱的构建过程主要包括什么,知识图谱构建工具有哪些,知识图谱建设方案,知识图谱构建知识库,知识图谱构建的主要技术,知识图谱 构建,知识图谱的构建包含4个步骤,知识图谱构建的主要技术,内容如对您有帮助,希望把文章链接给更多的朋友!

知识图谱,是结构化的语义知识库,用于迅速描述物理世界中的概念及其相互关系,通过知识图谱能够将Web上的信息、数据以及链接关系聚集为知识,使信息资源更易于计算、理解以及评价,并能实现知识的快速响应和推理。

1.1 广泛应用于各领域

当下知识图谱已在工业领域得到了广泛应用,如搜索领域的Google搜索、百度搜索,社交领域的领英经济图谱,企业信息领域的天眼查企业图谱,电商领域的淘宝商品图谱,O2O领域的美团知识大脑,医疗领域的丁香园知识图谱,以及工业制造业知识图谱等。

在知识图谱技术发展初期,很多企业和科研机构会采用自顶向下的方式构建基础知识库,如 Freebase。随着自动知识抽取与加工技术的不断成熟,当前的知识图谱大多采用自底向上的方式构建,如 Google 的 Knowledge Vault 和微软的 Satori 知识库。

1.2 构建技术分类

知识图谱的构建技术主要有自顶向下和自底向上两种。

自顶向下构建:借助百科类网站等结构化数据源,从高质量数据中提取本体和模式信息,加入到知识库里。自底向上构建:借助一定的技术手段,从公开采集的数据中提取出资源模式,选择其中置信度较高的信息,加入到知识库中。

1.3 “实体-关系-实体”三元组

下图是典型的知识图谱样例示意图。可以看到,“图谱”中有很多节点,如果两个节点之间存在关系,他们就会被一条无向边连接在一起,这个节点我们称为实体(Entity),节点之间的这条边,我们称为关系(Relationship)。

知识图谱的基本单位,就是“实体(Entity)-关系(Relationship)-实体(Entity)” 构成的三元组,这也是知识图谱的核心。

二、数据类型和存储方式

知识图谱的原始数据类型一般来说有三类(也是互联网上的三类原始数据):

结构化数据(Structed Data),如:关系数据库、链接数据半结构化数据(Semi-Structured Data),如:XML、JSON、百科非结构化数据(Unstructured Data),如:图片、音频、视频

典型的半结构化数据样例如下:

如何存储上面这三类数据类型呢?

一般有两种选择:可以通过RDF(资源描述框架)这样的规范存储格式来进行存储,比较常用的有Jena等。

<RDF> <Description about="https://www.w3.org/RDF/"> <author>HanXinzi</author> <homepage> http://www.showmeai.tech </homepage> </Description></RDF>

另一种方法是使用图数据库来进行存储,常用的有Neo4j等。

截止目前为止,看起来知识图谱主要是一堆三元组,那用关系数据库来存储可以吗?

对,从技术上来说,用关系数据库来存储知识图谱(尤其是简单结构的知识图谱),是完全没问题的。但一旦知识图谱变复杂,用传统的「关系数据存储」,查询效率会显著低于「图数据库」。在一些涉及到2,3度的关联查询场景,图数据库能把查询效率提升几千倍甚至几百万倍。

而且基于图的存储在设计上会非常灵活,一般只需要局部的改动即可。当你的场景数据规模较大的时候,建议直接用图数据库来进行存储。

三、知识图谱的架构

知识图谱的架构主要可以被分为:

逻辑架构技术架构

3.1 逻辑架构

在逻辑上,我们通常将知识图谱划分为两个层次:数据层和模式层。

模式层:在数据层之上,是知识图谱的核心,存储经过提炼的知识,通常通过本体库来管理这一层(本体库可以理解为面向对象里的“类”这样一个概念,本体库就储存着知识图谱的类)。数据层:存储真实的数据。

可以看看这个例子: 模式层:实体-关系-实体,实体-属性-性值 数据层:吴京-妻子-谢楠,吴京-导演-战狼Ⅱ

3.2 技术架构

知识图谱的整体架构如图所示,其中虚线框内的部分为知识图谱的构建过程,同时也是知识图谱更新的过程。别紧张,让我们顺着这张图来理一下思路。

首先,我们有一大堆的数据,这些数据可能是结构化的、非结构化的以及半结构化的;然后,我们基于这些数据来构建知识图谱,这一步主要是通过一系列自动化或半自动化的技术手段,来从原始数据中提取出知识要素,即一堆实体关系,并将其存入我们的知识库的模式层和数据层。四、构建技术

前面的内容说到了,知识图谱有自顶向下和自底向上两种构建方式,这里提到的构建技术主要是自底向上的构建技术。

如前所述,构建知识图谱是一个迭代更新的过程,根据知识获取的逻辑,每一轮迭代包含三个阶段:

信息抽取:从各种类型的数据源中提取出实体、属性以及实体间的相互关系,在此基础上形成本体化的知识表达。知识融合:在获得新知识之后,需要对其进行整合,以消除矛盾和歧义,比如某些实体可能有多种表达,某个特定称谓也许对应于多个不同的实体等。知识加工:对于经过融合的新知识,需要经过质量评估之后(部分需要人工参与甄别),才能将合格的部分加入到知识库中,以确保知识库的质量。

下面我们依次来对每一个步骤进行介绍。

4.1 知识抽取

知识抽取(infromation extraction)是知识图谱构建的第1步,其中的关键问题是:如何从异构数据源中自动抽取信息得到候选指示单元?

信息抽取是一种自动化地从半结构化和无结构数据中抽取实体、关系以及实体属性等结构化信息的技术。涉及的关键技术包括:实体抽取、关系抽取和属性抽取。

1)实体抽取

实体抽取,也称为命名实体识别(named entity recognition,NER),是指从文本数据集中自动识别出命名实体。

图中,通过实体抽取我们可以从其中抽取出四个实体:“非洲”、“中国海军”、“冷锋”、“战狼”。

研究历史: ◉ 从面向单一领域进行实体抽取,逐步跨步到面向开放域(Open Domain)的实体抽取。

2)关系抽取

文本语料经过实体抽取之后,得到的是一系列离散的命名实体。为了得到语义信息,还需要从相关语料中提取出实体之间的关联关系,通过关系将实体联系起来,才能够形成网状的知识结构。这就是关系抽取需要做的事,如下图所示。

知识图谱构建全流程(知识图谱实现方案)

研究历史: ◉ 人工构造语法和语义规则(模式匹配)。 ◉ 统计机器学习方法。 ◉ 基于特征向量或核函数的有监督学习方法。 ◉ 研究重点转向半监督和无监督。 ◉ 开始研究面向开放域的信息抽取方法。 ◉ 将面向开放域的信息抽取方法和面向封闭领域的传统方法结合。

3)属性抽取

属性抽取的目标是从不同信息源中采集特定实体的属性信息,如针对某个公众人物,可以从网络公开信息中得到其昵称、生日、国籍、教育背景等信息。

研究历史: ◉ 将实体的属性视作实体与属性值之间的一种名词性关系,将属性抽取任务转化为关系抽取任务。 ◉ 基于规则和启发式算法,抽取结构化数据。 ◉ 基于百科类网站的半结构化数据,通过自动抽取生成训练语料,用于训练实体属性标注模型,然后将其应用于对非结构化数据的实体属性抽取。 ◉ 采用数据挖掘的方法直接从文本中挖掘实体属性和属性值之间的关系模式,据此实现对属性名和属性值在文本中的定位。

4.2 知识融合

通过信息抽取,我们就从原始的非结构化和半结构化数据中获取到了实体、关系以及实体的属性信息。如果我们将接下来的过程比喻成拼图的话,那么这些信息就是拼图碎片,散乱无章甚至还有从其他拼图里跑来的碎片、本身就是用来干扰我们拼图的错误碎片。

也就是说,拼图碎片(信息)之间的关系是扁平化的,缺乏层次性和逻辑性;拼图(知识)中还存在大量冗杂和错误的拼图碎片(信息)。那么如何解决这一问题,就是在知识融合这一步里我们需要做的了。

知识融合包括2部分内容:实体链接、知识合并。

1)实体链接

实体链接(entity linking)是指对于从文本中抽取得到的实体对象,将其链接到知识库中对应的正确实体对象的操作。其基本思想是首先根据给定的实体指称项,从知识库中选出一组候选实体对象,然后通过相似度计算将指称项链接到正确的实体对象。

研究历史: ◉ 仅关注如何将从文本中抽取到的实体链接到知识库中,忽视了位于同一文档的实体间存在的语义联系; ◉ 开始关注利用实体的共现关系,同时将多个实体链接到知识库中。即集成实体链接(collective entity linking)。

实体链接的流程:

从文本中通过实体抽取得到实体指称项。进行实体消歧和共指消解,判断知识库中的同名实体与之是否代表不同的含义以及知识库中是否存在其他命名实体与之表示相同的含义。在确认知识库中对应的正确实体对象之后,将该实体指称项链接到知识库中对应实体。

◉ 实体消歧:是专门用于解决同名实体产生歧义问题的技术,通过实体消歧,就可以根据当前的语境,准确建立实体链接,实体消歧主要采用聚类法。其实也可以看做基于上下文的分类问题,类似于词性消歧和词义消歧。 ◉ 共指消解:主要用于解决多个指称对应同一实体对象的问题。在一次会话中,多个指称可能指向的是同一实体对象。利用共指消解技术,可以将这些指称项关联(合并)到正确的实体对象,由于该问题在信息检索和自然语言处理等领域具有特殊的重要性,吸引了大量的研究努力。共指消解还有一些其他的名字,比如对象对齐、实体匹配和实体同义。

2)知识融合

在前面的实体链接中,我们已经将实体链接到知识库中对应的正确实体对象那里去了,但需要注意的是,实体链接链接的是我们从半结构化数据和非结构化数据那里通过信息抽取提取出来的数据。

那么除了半结构化数据和非结构化数据以外,我们还有个更方便的数据来源———结构化数据,如外部知识库和关系数据库。对于这部分结构化数据的处理,就是我们知识融合的内容啦。

一般来说知识融合主要分为两种:合并外部知识库,主要处理数据层和模式层的冲突;合并关系数据库,有RDB2RDF等方法。

4.3 知识加工

经过刚才那一系列步骤,我们终于走到了知识加工这一步了!在前面,我们已经通过信息抽取,从原始语料中提取出了实体、关系与属性等知识要素,并且经过知识融合,消除实体指称项与实体对象之间的歧义,得到一系列基本的事实表达。

然而事实本身并不等于知识。要想最终获得结构化,网络化的知识体系,还需要经历知识加工的过程。知识加工主要包括3方面内容:本体抽取、知识推理和质量评估。

1)本体抽取

本体(ontology)是指工人的概念集合、概念框架,如“人”、“事”、“物”等。本体可以采用人工编辑的方式手动构建(借助本体编辑软件),也可以以数据驱动的自动化方式构建本体。因为人工方式工作量巨大,且很难找到符合要求的专家,因此当前主流的全局本体库产品,都是从一些面向特定领域的现有本体库出发,采用自动构建技术逐步扩展得到的。

自动化本体构建过程包含三个阶段: 实体并列关系相似度计算 → 实体上下位关系抽取 → 本体的生成。

如图所示,当知识图谱刚得到“战狼Ⅱ”、“流浪地球”、“北京文化”这三个实体的时候,可能会认为它们三个之间并没有什么差别。但当它去计算三个实体之间的相似度后,就会发现,“战狼Ⅱ”和“流浪地球”之间可能更相似,与“北京文化”差别更大一些。

第一步下来,知识图谱实际上还是没有一个上下层的概念。它还是不知道,“流浪地球”和“北京文化”不隶属于一个类型,无法比较。因此第二步『实体上下位关系抽取』需要去完成这样的工作,从而生成第三步的本体。当三步结束后,这个知识图谱可能就会明白,“战狼2和流浪地球,是电影这个实体下的细分实体。它们和北京文化这家公司并不是一类”。

2)知识推理

在我们完成了本体构建这一步之后,一个知识图谱的雏形便已经搭建好了。但可能在这个时候,知识图谱之间大多数关系都是残缺的,缺失值非常严重,那么这个时候,我们就可以使用知识推理技术,去完成进一步的知识发现。

当然知识推理的对象也并不局限于实体间的关系,也可以是实体的属性值,本体的概念层次关系等。

推理属性值:已知某实体的生日属性,可以通过推理得到该实体的年龄属性;推理概念:已知(老虎,科,猫科)和(猫科,目,食肉目)可以推出(老虎,目,食肉目)

这一块的算法主要可以分为3大类:基于知识表达的关系推理技术;基于概率图模型的关系推理技术路线示意图;基于深度学习的关系推理技术路线示意图。

3)质量评估

质量评估也是知识库构建技术的重要组成部分,这一部分存在的意义在于:可以对知识的可信度进行量化,通过舍弃置信度较低的知识来保障知识库的质量。

4.4 知识更新

从逻辑上看,知识库的更新包括概念层的更新和数据层的更新。

概念层的更新:新增数据后获得了新的概念,需要自动将新的概念添加到知识库的概念层中。数据层的更新:主要是新增或更新实体、关系、属性值,对数据层进行更新需要考虑数据源的可靠性、数据的一致性(是否存在矛盾或冗杂等问题)等可靠数据源,并选择在各数据源中出现频率高的事实和属性加入知识库。

知识图谱的内容更新有两种方式:

全面更新:指以更新后的全部数据为输入,从零开始构建知识图谱。这种方法比较简单,但资源消耗大,而且需要耗费大量人力资源进行系统维护;增量更新:以当前新增数据为输入,向现有知识图谱中添加新增知识。这种方式资源消耗小,但目前仍需要大量人工干预(定义规则等),因此实施起来十分困难。

知识图谱的构建就此结束!

五、相关代码实现参考

获取『自然语言处理』行业解决方案

公众号 ShowMeAI研究中心 回复关键字『自然语言处理』,获取 ShowMeAI 整理的 大厂解决方案 —— 包含腾讯、爱奇艺、美团、小米、百度、淘宝、高德等项目代码、数据集、论文合辑等打包资料。

相关代码实现参考

ShowMeAI社区的技术专家小伙伴们也对知识图谱的典型算法做了实现。对『知识图谱构建与落地实践』细节感兴趣的话,请前往我们的 GitHub项目 https://github.com/ShowMeAI-Hub 查看实现代码。感谢 AI算法研究所 参与此项目的所有技术专家小伙伴,推荐大家关注公众号。数据集和代码的整理花费了很多心思,欢迎大家 PR 和 Star!

六、参考文献1 刘峤, 李杨, 段宏,等. 知识图谱构建技术综述J. 计算机研究与发展, 2016, 53(3):582-600.2 打怪的蚂蚁. CSDN. 知识图谱技术技巧.3 Ehrlinger L, Wöß W. Towards a Definition of Knowledge GraphsC// Joint Proceedings of the Posters and Demos Track of,

International Conference on Semantic Systems - Semantics2016 and, International Workshop on Semantic Change & Evolving Semantics. 2016.

4 Das R, Neelakantan A, Belanger D, et al. Chains of Reasoning over Entities, Relations, and Text using Recurrent Neural NetworksJ.
本文链接地址:https://www.jiuchutong.com/zhishi/298491.html 转载请保留说明!

上一篇:激光SLAM框架总结(激光slam入门教程)

下一篇:Vue3中修改父组件传递到子组件中的值(全网少有)(vue修改父组件的值)

  • 论坛发帖要求才能保证效果和行业进步(论坛发帖有哪些注意事项)

    论坛发帖要求才能保证效果和行业进步(论坛发帖有哪些注意事项)

  • 网上赚钱最可靠的8种方法(网上赚钱最可靠的八种方法)

    网上赚钱最可靠的8种方法(网上赚钱最可靠的八种方法)

  • 华为手机视频如何转成铃声(华为手机视频如何传到u盘)

    华为手机视频如何转成铃声(华为手机视频如何传到u盘)

  • 微信封号了,里面的钱怎么拿出来(微信封号了零钱通里的钱可以提出来吗)

    微信封号了,里面的钱怎么拿出来(微信封号了零钱通里的钱可以提出来吗)

  • oppor9手机有nfc功能吗(oppor9nfc功能在哪里打开)

    oppor9手机有nfc功能吗(oppor9nfc功能在哪里打开)

  • 苹果7屏幕尺寸(苹果7屏幕尺寸对照表)

    苹果7屏幕尺寸(苹果7屏幕尺寸对照表)

  • 微信怎么一条信息发给很多人(微信怎么一条信息发给很多群)

    微信怎么一条信息发给很多人(微信怎么一条信息发给很多群)

  • 大振膜和电容麦的区别(大振膜电容麦克风十大排名)

    大振膜和电容麦的区别(大振膜电容麦克风十大排名)

  • 手机外屏碎了自己可以换吗(手机外屏碎了自己修)

    手机外屏碎了自己可以换吗(手机外屏碎了自己修)

  • 内存插槽两端的白色卡子的作用是(内存插槽两端的白色卡子的作用)

    内存插槽两端的白色卡子的作用是(内存插槽两端的白色卡子的作用)

  • 文字脚本是什么意思(文字脚本和制作脚本)

    文字脚本是什么意思(文字脚本和制作脚本)

  • 华为p30pro充电器是多少w(华为p30pro充电器参数配置)

    华为p30pro充电器是多少w(华为p30pro充电器参数配置)

  • 锂电池和干电池区别(锂电池和干电池能混用吗)

    锂电池和干电池区别(锂电池和干电池能混用吗)

  • 怎么把快手直播录下来(怎么把快手直播回放下载下来)

    怎么把快手直播录下来(怎么把快手直播回放下载下来)

  • oppo手机如何改变应用图标(oppo手机如何改电话铃声)

    oppo手机如何改变应用图标(oppo手机如何改电话铃声)

  • lora和nbiot的区别(lora技术和nb的优缺点对比)

    lora和nbiot的区别(lora技术和nb的优缺点对比)

  • 苹果11开发者有什么用(苹果开发者有多少人)

    苹果11开发者有什么用(苹果开发者有多少人)

  • 苹果1978机是什么意思(iphone 1978)

    苹果1978机是什么意思(iphone 1978)

  • 微信闭麦对方能看到吗(微信闭麦对方能听到刷视频吗)

    微信闭麦对方能看到吗(微信闭麦对方能听到刷视频吗)

  • 苹果xsmax指纹解锁功能(苹果xsmax指纹解锁怎么设置)

    苹果xsmax指纹解锁功能(苹果xsmax指纹解锁怎么设置)

  • 韩剧tv电影在哪(韩剧tv有韩国电影吗)

    韩剧tv电影在哪(韩剧tv有韩国电影吗)

  • ipx5级防水可以冲水吗(ipx5级防水可以游泳吗)

    ipx5级防水可以冲水吗(ipx5级防水可以游泳吗)

  • 微信我的行程在哪里(微信我的行程足迹)

    微信我的行程在哪里(微信我的行程足迹)

  • 苹果x卡顿怎么解决方法(苹果x卡顿怎么关机重启)

    苹果x卡顿怎么解决方法(苹果x卡顿怎么关机重启)

  • 7680帧是什么概念(768p和1080p游戏帧数差别)

    7680帧是什么概念(768p和1080p游戏帧数差别)

  • 为什么很多人喜欢《蝙蝠侠:黑暗骑士》里的小丑?(为什么很多人喜欢打麻将)

    为什么很多人喜欢《蝙蝠侠:黑暗骑士》里的小丑?(为什么很多人喜欢打麻将)

  • 提成过高
  • 利润表中的资产减值损失包括哪些
  • 发票验旧以后还有用吗
  • 账本一般保存几年就可以销毁2004年的规定
  • 劳务收入个税的计算方法
  • 公司成立筹备工作小组主要任务是什么
  • 纳税申报成功
  • 利润分配亏损太多如何处理?
  • 营改增后房地产开发企业需要交哪些税?
  • 收到去年所得税退款直接记入营业外收入吗
  • 增值税的会计核算
  • 免抵扣税额
  • 发票勾选平台显示不成功
  • 机动车销售发票如何补开?
  • 赠送的商品怎么入账
  • 销售已使用的固定资产简易计税
  • 多抵扣的进项如何做分录
  • 系统安全保障体系
  • macbook怎么压缩视频大小
  • 上月开的发票会计漏做帐本月应如何补做账?
  • 个人所得税应该计入什么科目
  • 金融资产包括哪三大类及会计科目
  • 公司向股东个人借款最新规定
  • adguard安全
  • 出租设备的租金收入应计入什么科目
  • 辅助生产成本的分配
  • 逾期未收回包装物押金增值税
  • 解决的英文
  • 采购原材料凭证未到达
  • 小刺猬 (© lorenzo104/Getty Images)
  • java异常编程题
  • 金融机构存放的保证金存款
  • 农药普通发票可以抵扣
  • mysql建表的完整步骤
  • mongodb删除文档命令
  • dedecms v6
  • 开业请别人吃饭怎么说
  • 什么是债权人和债务人简单来说
  • 个人所得税红利所得税率
  • 非独立核算增值税汇总缴纳吗
  • 租金收入什么时候交房产税
  • 税号指的是什么
  • 简易计税办法的有
  • 负债项目的排列顺序
  • 2021年税控盘收费
  • 小企业汇算清缴补税会计分录
  • 企业发生坏账损失时,在当期确认坏账损失
  • 单位租赁个人房子怎么缴纳房产税
  • 所得税多缴纳分录
  • 坏账准备对资产负债表影响
  • 期末留抵税额可以退税吗
  • 辅助生产成本应计入什么
  • 建账选用什么会计制度
  • 商业企业包装物包括哪些
  • myeclipse中连接数据库的地方在哪
  • vericut优化程序
  • linux系统怎么安装
  • 怎么制作win7系统u盘装系统教程
  • windows 2000 server系统安装图解
  • win7系统u盘打不开怎么办
  • acer笔记本重装系统教程
  • win7系统磁盘分区必须分区为什么才能安装
  • 雨林木风软件网
  • 微软刷机怎么刷
  • win10系统右键菜单管理
  • win10安装驱动器
  • linux计划任务如何设置
  • redhat 6.5 安装
  • macbook编译java
  • perl sub
  • cocos2dx运行原理
  • windows下dos命令
  • javascript module
  • android设置无标题
  • 谷歌的全球化发展战略
  • 河北税务总局发票怎么开
  • 调查问卷的背景资料怎么写
  • 陕西税务厅
  • 地税可以补开以前发票吗
  • 明星征税多少
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设