知识图谱:知识图谱概述(一)

一、知识图谱简介

  知识图谱,是结构化的语义知识库,主要用于描述现实世界中的实体及其相互关系,由节点和边组成。节点可以是实体,如汽车、街道等,或是抽象的概念,如AI、疾病等。边可以是实体的属性,如颜色、名字或是实体之间的关系,如朋友、配偶。如下图所示:

1.1 知识图谱的几个关键概念

  本体(ontology):领域术语集合,用于定义和描述特定领域的知识,包括该领域中的实体、属性、关系及其约束。本体提供了一个结构化框架,使得知识能够以一种一致且明确的方式进行表示和处理。

  类型( type):具有相同特点或属性的实体集合的抽象,如足球球员、足球联赛、足球教练。

  实体(Entities):实体就是type的实例,如足球球员–梅西,足球联赛–西甲等。

  类层次结构(Class Hierarchy):定义概念之间的继承关系。例如,“鸟类”是“动物”的子类,“麻雀”是“鸟类”的子类。

  关系(Relations):实体与实体之间通过关系关联起来,如梅西是巴塞罗那的球员。

  属性(Attributes):实体自带信息是属性,如梅西 出生日期 1987年6月24日, 身高 1.7米等。

   知识图谱(Knowledge graph):图状具有关联性的知识集合。可以由三元组(实体——关系——实体)表示。

  知识库(Knowledge Base):一个知识数据库,包含了知识的本体和知识,可以看成是由图数据库存储的知识库。

1.2 知识图谱的分层架构

  知识图谱由数据层(data layer)模式层(schema layer)构成。

  数据层:数据层是知识图谱的基础层,负责存储和管理知识图谱中的所有原始数据。这些数据以结构化的形式存在,知识以事实(fact)为单位存储在图数据库中,通常表示为三元组,包括“实体—关系—实体”和“实体—属性—属性值”等形式。

  模式层:知识图谱的核心,是知识图谱的概念模型和逻辑基础。模式层通常包括本体、类层次结构、关系类型和数据模式等元素。通过定义本体、类层次结构、关系类型和属性,模式层构建了一个系统的、结构化的知识框架,确保了数据的一致性和完整性,并支持高级应用和语义推理。

1.3 知识图谱数据类型和存储方式

  知识图谱的原始数据类型一般来说有三类:
  结构化数据(Structed Data),如:关系数据库、链接数据

  半结构化数据(Semi-Structured Data),如:XML、JSON、百科

  非结构化数据(Unstructured Data),如:文本、图片、音频、视频

在这里插入图片描述

  知识图谱的存储方式主要分为两种:
  资源描述框架(RDF):RDF是一种用于描述网络上资源及其关系的标准格式。RDF使用三元组来表示实体及其关系,比较常用的有 Jena ,Virtuoso等。RDF存储的优点在于其标准化和互操作性,可以方便地与其他语义数据进行集成。然而,对于非常复杂或大规模的数据集,查询性能可能会成为一个瓶颈。

  图数据库(Graph Databases):图数据库专门为处理图结构数据而设计,使用节点来表示实体及其关系,具有很高的查询性能和灵活性,常用的有 Neo4j,JanusGraph等,适用于大规模和关系复杂的数据场景,具有高效的查询性能和灵活性。

1.4知识图谱构建流程

  知识图谱的构建方法主要有两种:自底向上(data layer)自顶而下(data layer)

  自底向上是从数据开始构建知识图谱的。数据驱动,能充分利用现有数据资源;可以自动地从知识图谱中抽取概念、概念层次和概念之间的关系,实体和关系的识别可以更加细致和全面。其缺点是需要大量的预处理和数据清洗工作,以及难以保证图谱的全局一致性。
  构建流程:数据收集 → 数据清洗 → 实体抽取 → 关系抽取 → 模式构建 → 图谱融合。

  自顶而下是从设计模式和本体开始构建知识图谱的。
  构建流程:需求分析 → 本体设计 → 数据对齐 → 实例填充 → 验证和优化。

  本次学习主要是自底向上的构建技术。构建知识图谱是一个迭代更新的过程,根据知识获取的逻辑,每一轮迭代包含三个阶段:信息抽取知识融合知识加工

  信息抽取:从各种类型的数据源中提取出实体、属性以及实体间的相互关系,在此基础上形成本体化的知识表达。

  知识融合:在获得新知识之后,需要对其进行整合,以消除矛盾和歧义,比如某些实体可能有多种表达,某个特定称谓也许对应于多个不同的实体等。

  知识加工:对于经过融合的新知识,需要经过质量评估之后(部分需要人工参与甄别),才能将合格的部分加入到知识库中,以确保知识库的质量。

在这里插入图片描述

知识抽取(infromation extraction)

  知识抽取是一种自动化地从半结构化和无结构数据中抽取实体、关系以及实体属性等结构化信息的技术,其关键问题是:如何从异构数据源中自动抽取信息得到候选指示单元。涉及的关键技术包括:实体抽取关系抽取属性抽取

  实体抽取:也称为命名实体识别,是指从文本数据集中自动识别出命名实体。

    例如非洲某国发生叛乱,中国海军执行撤侨任务,冷锋奉命只身闯入硝烟四起的战场。不屈不挠的战狼,与冷酷无情的敌人展开了悬殊之战。

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

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

在这里插入图片描述

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

在这里插入图片描述

知识融合(Knowledge Fusion)

  通过信息抽取,从原始的非结构化和半结构化数据中获取到了实体、关系以及实体的属性信息。因此,在获得新知识之后,需要对其进行整合,以消除矛盾和歧义。知识融合包括2部分内容:实体链接知识合并

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

在这里插入图片描述

  知识合并:数据来源除了半结构化数据和非结构化数据以外,还有结构化数据。对于结构化数据,知识融合主要分为两种:合并外部知识库、合并关系数据库。

在这里插入图片描述

知识加工(Knowledge Processing)

  通过信息抽取,从原始语料中提取出了实体、关系与属性等知识要素,并且经过知识融合,消除实体指称项与实体对象之间的歧义,得到一系列基本的事实表达。然而事实本身并不等于知识。要想最终获得结构化、网络化的知识体系,还需要经历知识加工的过程。知识加工主要包括3方面内容:本体抽取知识推理质量评估

  本体抽取:本体可以采用人工编辑的方式手动构建(借助本体编辑软件),也可以以数据驱动的自动化方式构建本体。

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

  知识推理:经过以上步骤,知识图谱之间大多数关系仍缺失严重,则需要使用知识推理技术,去完成进一步的知识发现。

在这里插入图片描述

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

    推理属性值:已知某实体的生日属性,可以通过推理得到该实体的年龄属性;

    推理概念:已知(老虎,科,猫科)和(猫科,目,食肉目)可以推出(老虎,目,食肉目)

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

在这里插入图片描述

  质量评估:对知识的可信度进行量化,通过舍弃置信度较低的知识来保障知识库的质量。

参考文章:知识图谱构建全流程

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/49028.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于FPGA的以太网设计(2)----以太网的硬件架构(MAC+PHY)

1、概述 以太网的电路架构一般由MAC、PHY、变压器、RJ45和传输介质组成,示意图如下所示: 需要注意的是,上图是一个简化了的模型,它描述的是两台主机之间的直接连接,但在实际应用中基本都是多台主机构成的局域网,它们之间并不直接相连,而是通过交换机Switch来进行…

【PPT把当前页输出为图片】及【PPT导出图片模糊】的解决方法(sci论文图片清晰度)

【PPT把当前页输出为图片】及【PPT导出图片模糊】的解决方法 内容一:ppt把当前页输出为图片:内容二:ppt导出图片模糊的解决方法:方法:步骤1:打开注册表编辑器步骤2:修改注册表: 该文…

万字长文之分库分表里无分库分表键如何查询【后端面试题 | 中间件 | 数据库 | MySQL | 分库分表 | 其他查询】

在很多业务里,分库分表键都是根据主要查询筛选出来的,那么不怎么重要的查询怎么解决呢? 比如电商场景下,订单都是按照买家ID来分库分表的,那么商家该怎么查找订单呢?或是买家找客服,客服要找到对…

深入浅出WebRTC—ULPFEC

FEC 通过在发送端添加额外的冗余信息,使接收端即使在部分数据包丢失的情况下也能恢复原始数据,从而减轻网络丢包的影响。在 WebRTC 中,FEC 主要有两种实现方式:ULPFEC 和 FlexFEC,FlexFEC 是 ULPFEC 的扩展和升级&…

websocket实现进度条

websocket实现进度条 做一个简易的websocket实现进度条的练习&#xff0c;效果如下&#xff1a; 前端vue3 <template><el-progress type"circle" :percentage"this.progressValue" :status"this.perstatus" /><el-button cli…

docker tomcat 404

HTTP 404状态码表示“Not Found”&#xff0c;即服务器无法找到请求的页面。 当用户尝试访问一个不存在的网页时&#xff0c;服务器会返回这个状态码。这个状态码是HTTP协议的一部分&#xff0c;用于告知客户端&#xff08;通常是浏览器&#xff09;服务器无法完成请求。404状…

黑马JavaWeb企业级开发(知识清单)02——HTML实现标题:样式(CSS引入、CSS选择器、span标签)和超链接

文章目录 前言一、标题样式1&#xff1a;新闻标题颜色1. CSS三种引入方式2. 颜色表示3. javacode实现 二、标题样式2&#xff1a;发布时间颜色1. < span >标签2. CSS选择器1&#xff09;元素&#xff08;标签&#xff09;选择器&#xff08;优先级最低&#xff09;2&…

IC秋招RTL代码合集

一 全加器和半加器 全加器 module full_adder1(input Ai, Bi, Ci,output So, Co);assign So Ai ^ Bi ^ Ci ;assign Co (Ai & Bi) | (Ci & (Ai | Bi)); endmodule module full_adder1(input Ai, Bi, Cioutput So, Co);assign {Co, So} Ai Bi Ci ; endm…

wireshark过滤器,如何使用wireshark捕获指定域名的流量

过滤器比较高级&#xff0c;但是也很重要&#xff0c;我决定通过一个案例来学习过滤器的知识点。 比如&#xff0c;我现在访问 zhangdapeng.com 我希望能够捕获关于这个域名下的流量&#xff0c;该如何实现呢&#xff1f; 我选择了捕获以太网的流量&#xff0c;但是目前捕获到…

python-爬虫实例(4):获取b站的章若楠的视频

目录 前言 道路千万条&#xff0c;安全第一条 爬虫不谨慎&#xff0c;亲人两行泪 获取b站的章若楠的视频 一、话不多说&#xff0c;先上代码 二、爬虫四步走 1.UA伪装 2.获取url 3.发送请求 4.获取响应数据进行解析并保存 总结 前言 道路千万条&#xff0c;安全第一条 爬…

Java:114-Spring Boot的底层原理(上篇)

Spring Boot的底层原理 之前学习过了Spring Boot&#xff08;在88章博客&#xff09;&#xff0c;但是并没有很深入的了解&#xff0c;这里致力于在原来的基础上学习更多Spring Boot知识 回顾&#xff08;注意&#xff1a;只是回顾&#xff0c;所以更多细节在88章博客&#x…

【2】Spring Cloud 工程搭建

&#x1f3a5; 个人主页&#xff1a;Dikz12&#x1f525;个人专栏&#xff1a;Spring Cloud实战&#x1f4d5;格言&#xff1a;吾愚多不敏&#xff0c;而愿加学欢迎大家&#x1f44d;点赞✍评论⭐收藏 目录 1.声明项目依赖和项目构建插件 2.完善子项目订单服务 2.1完善启动…

开源发票识别InvoiceNet项目Windows部署踩坑记(1)

今天安装在github上的InvoiceNet开源项目&#xff0c;准备对它进行测试&#xff0c;安装过程出现了一些问题&#xff0c;做个记录&#xff0c;给遇到兄弟爬坑。 第一个问题&#xff0c;conda的问题&#xff0c; 这是另外一个包管理器&#xff0c;不仅仅可以管理python的虚拟…

layui+thymeleaf+jquery实现多图片,多视频的上传、预览、放大、编辑功能

layuithymeleafjquery实现多图片&#xff0c;多视频的上传、预览、放大、编辑功能 html: <!--多图片上传--> <div class"layui-row layui-col-space10"><div class"layui-form-item"><div class"layui-form-item layui-form-te…

mybatis xml 文件中引用Java类的静态方法

MyBatis-Plus 支持在 XML 映射文件中使用 ${} 来直接嵌入字符串&#xff0c;以及使用 #{} 来引用传入参数。但是&#xff0c;$ 的使用需要小心&#xff0c;因为它会直接将参数内容嵌入到 SQL 语句中&#xff0c;这可能会导致 SQL 注入问题。 在 MyBatis-Plus 中&#xff0c;如果…

Android 防止重复点击

1.第一种方式&#xff1a; private static final int MIN_DELAY_TIME 2000; // 两次点击间隔不能少于2000ms private static long lastClickTime System.currentTimeMillis(); public static boolean isFastClick() { boolean flag true; long currentClickTime …

苹果电脑怎么清理缓存和垃圾 mac如何关闭正在运行的程序 苹果电脑怎么清理后台

苹果电脑以其出色的性能和用户友好的界面而广受好评&#xff0c;但在使用过程中&#xff0c;后台程序的堆积可能会影响到系统的运行效率。太多应用和进程在后台默默运行&#xff0c;就像是无形的背包&#xff0c;让你的Mac背负了太多不必要的重量。不过&#xff0c;别担心&…

08、Tomcat 部署及优化

8.1 Tomcat概述 8.1.1 Tomcat介绍 自从 JSP 发布之后,推出了各式各样的 JSP 引擎。Apache Group 在完成 GNUJSP1.0的开发以后&#xff0c;开始考虑在 SUN 的 JSWDK 基础上开发一个可以直接提供 Web 服务的 JSP服务器&#xff0c;当然同时也支持 Servlet, 这样 Tomcat 就诞生…

使用LSTM完成时间序列预测

c 在本教程中&#xff0c;我们将介绍一个简单的示例&#xff0c;旨在帮助初学者入门时间序列预测和 PyTorch 的使用。通过这个示例&#xff0c;你可以学习如何使用 LSTMCell 单元来处理时间序列数据。 我们将使用两个 LSTMCell 单元来学习从不同相位开始的正弦波信号。模型在…

MYSQL 七、mysql 日志与备份

一、其他数据库日志 千万不要小看日志。很多看似奇怪的问题&#xff0c;答案往往就藏在日志里。很多情况下&#xff0c;只有通过查看日志才 能发现问题的原因&#xff0c;真正解决问题。所以&#xff0c;一定要学会查看日志&#xff0c;养成检查日志的习惯&#xff0c;对提升你…