当前位置: 首页 > news >正文

知识图谱入门(一)

最近在研究Graph RAG项目,因此对相关内容做个总结,首先从知识图谱开始,供大家参考。

知识图谱是结构化知识表示的一种形式,它将知识组织成一个多关系图,其中节点表示实体,边表示实体之间的关 系。知识图谱可以表示实体之间的语义关系,帮助机器理解和推理自然语言文本。 支持用户按主题而不是字符串检索,真正实现语义检索。基于知识图谱的搜索引擎,能够以图形方式向用户反馈结 构化的知识,不必浏览大量文档即能准确定位和深度获取知识。

知识图谱概述

1.1. 知识图谱的发展

2012 年,谷歌正式提出了知识图谱( Knowledge Graph)的概念,旨在实现更智能的搜索引擎,并且于 2013 年 以后开始在学术界和业界普及。下图是 Goolge 搜索中的结果,不仅仅给出了 pagerank,还给出了知识图谱的搜 索结果。

目前,随着智能信息服务应用的不断发展,知识图谱已被广泛应用于智能搜索、智能问答、个性化推荐、情报分析、 反欺诈等领域。另外,通过知识图谱能够将 Web 上的信息、数据以及链接关系聚集为知识,使信息资源更易于计 算、理解以及评价,并且形成一套 Web 语义知识库。知识图谱以其强大的语义处理能力与开放互联能力,可为万 维网上的知识互联奠定扎实的基础,使 Web 3.0 提出的“知识之网”愿景成为了可能。 要追溯知识图谱的起源,我们可以回到 20 世纪 60 年代提出的语义网络(Semantic Networks)。 以下是其发展脉络:

1.2. 知识图谱覆盖的领域

知识图谱的覆盖了知识图谱的表示、存储、获取、推理、融合、问答、分析等七大方面。同时,它还包含了与其他 学科领域的交叉融合,主要可以分为以下四个方面:

1.3. 知识图谱的组成

  • 实体 实体是知识图谱中的基本单元,通常是名词或概念。实体可以是具体的对象(如人、地点、物品)或抽象的概念(如 概念、类别)。
  • 关系 关系是知识图谱中实体之间的连接,表示实体之间的语义关系。关系可以是二元的(表示两个实体之间的关系)或 多元的(表示多个实体之间的关系)。

知识图谱中的知识表示

知识表示的核心是通过某种形式来描述、组织和存储知识,便于机器理解与推理。知识表示主要用途如下:

知识表示的主要方法:

2.1. 知识图谱的符号表示方法

知识图谱通过图的形式来描述和表达知识,能够构建更复杂的实体关系模型。但在知识图谱的实际实践中,不同的 应用场景会对知识的建模采用不同表达能力的图表示方法。 知识图谱表示应用最多的是有向标记图(Directed Labelled Graph)。最常用的两种有向标记图模型,一种叫属性 图(Property Graph),另外一种是 RDF 图模型。但有向标记图的表达能力依然是有限的,在很多专业领域,如医 学本体构建等,需要更为复杂的关系语义的表示,例如描述对称关系、自反关系、传递关系等,这就需要用到 OWL 等本体描述语言。知识图谱领域三种最常用的知识表示方法——属性图、RDF 图模型和 OWL 本体语言。

2.1.1 属性图

属性图是图数据库 Neo4J 实现的图结构表示模型,在工业界有广泛应用。属性图的优点是表达方式非常灵活,例 如,它允许为边增加属性,非常便于表示多元关系。属性图的存储充分利用图的结构进行优化,因而在查询计算方 面具有较大优势。属性图的缺点是缺乏工业标准规范的支持,由于不关注更深层的语义表达,也不支持符号逻辑推 理。

2.1.2 RDF 图模型

RDF 是国际万维网联盟 W3C 推动的面向 Web 的语义数据标准,所以 RDF 本身的定位首先是数据交换标准规范, 而非存储模型。RDF 的基本组成单元是三元组,即(s,p,o),例如,可以用一条三元组来描述<浙江大学, 位于, 杭 州>。一条三元组代表关于客观世界的逻辑描述或客观事实。多个三元组头尾相互连接,就形成了一个 RDF 图。本 质上,RDF 图也是一个有向标记图。 RDF 还提供了基础的表达构件用于定义类、属性等 Schema 层的术语。例如,domain、range 用于定义某个关系 的头尾节点类型,subClassOf 和 subPropertyOf 用于定义类及属性之间的层次关系等。有了 RDFS,已经可以实 现最简单的符号推理。

例如:如果将谷歌定义为一家人工智能公司,同时也知道人工智能公司是高科技公司,就可 以推理得出谷歌也是一家高科技公司。这类简单的推理已经可以减轻数据维护的负担,因为很多查询结果可以通过 推理间接得出,而不用对所有结果进行全量存储。

2.1.3 OWL 本体语言

RDF+RDFS 的表达能力是非常有限的。在实际应用中,需要定义更为复杂的概念,刻画更为复杂的概念关系。这就 需要用到 OWL 等本体表达语言。本体(Ontology)原来是一个哲学术语,后来被人工智能的研究人员作为知识表 示研究的对象引入计算机领域。本体最常用的逻辑表达语言即描述逻辑(Description Logic)。

OWL 首先可以被看作 RDF Schema 的扩展。OWL 在 RDF 的基础上增加了更多的语义表达构件。例如,通过多个 类组合定义更加复杂的类;刻画关系的一对多、多对一、多对多等关系基数(Cardinality)约束;定义常用的全称 量词和存在量词;定义互反关系、传递关系、自反关系、函数关系等更加复杂的关系语义等。 OWL 拥有众多的表达构件。

OWL 实际上有很多语言家族,不同的语言家族代表不同的表达构件的组合。不同的组 合对应不同的推理计算复杂度以及它们所适用的场景。OWL-QL 表示查询语言的意思,专为基于大规模的查询设计 的子语言;OWL 2 RL 在扩展 RDFS 表达能力的同时,保持了较低的复杂度;OWL 2 EL 专为概念术语描述、推理 而设计,在生物医疗领域广泛应用,如临床医疗术语本体 SNOMED CT 等。

2.2. 最常用的知识表示方法--属性图(neo4j 的实现)

在知识表示中,知识图谱是一种知识库,其中的数据通过图结构的数据模型或拓扑整合而成。知识图谱通常被用 来存储彼此之间具有相互联系的实体。 三元组是知识图谱的一种通用表示方式,即 G =(E, R, S),其中 E 是知识库中的实体,R 是知识库中的关系,S 代表知识库中的三元组。

三元组的基本形式主要包括实体关系、实体和概念、属性、属性值等。

• 实体是知识图谱中的最基本元素,不同的实体间存在不同的关系。

• 概念主要指集合、类别、对象类型、事物的种类,例如人物、地理等。

• 属性主要指对象可能具有的属性、特征、特性、特点以及参数,例如国籍、生日等; 属性值主要指对象指定属 性的值,例如中国、1988-09-08 等。

每个实体(概念的外延)可用一个全局唯一确定的 ID 来标识,每个属性-属性值对(attribute-value pair, AVP) 可用 来刻画实体的内在特性,而关系可用来连接两个实体,刻画它们之间的关联。

相关文章:

知识图谱入门(一)

最近在研究Graph RAG项目&#xff0c;因此对相关内容做个总结&#xff0c;首先从知识图谱开始&#xff0c;供大家参考。 知识图谱是结构化知识表示的一种形式&#xff0c;它将知识组织成一个多关系图&#xff0c;其中节点表示实体&#xff0c;边表示实体之间的关 系。知识图谱…...

springboot项目-基础数据回显

一.基础数据回显说明 微服务项目中由于从服务独立的角度考虑&#xff0c;对数据库做了分库的处理。对于基础数据表来说&#xff0c;各个服务都是需要的。项目中在使用基础数据时&#xff0c;往往是在sql中写连接然后获取基础数据的名称。例&#xff1a; select wi.name,bc.ci…...

LabVIEW实现油浸式变压器自主监测与实时报告

油浸式变压器广泛应用于电力系统中&#xff0c;尤其是在电力传输和分配领域。为了确保变压器的安全、稳定运行&#xff0c;及时监测其工作状态至关重要。传统的变压器监测方法通常依赖人工巡检和定期检查&#xff0c;但这不能及时发现潜在的故障隐患&#xff0c;且效率较低。随…...

K8S 亲和性与反亲和性 深度好文

今天我们来实验 pod 亲和性。官网描述如下&#xff1a; 假设有如下三个节点的 K8S 集群&#xff1a; k8s31master 是控制节点 k8s31node1、k8s31node2 是工作节点 容器运行时是 containerd 一、镜像准备 1.1、镜像拉取 docker pull tomcat:8.5-jre8-alpine docker pull nginx…...

关于php语言api接口开发的流程

确定接口需求&#xff1a;首先明确接口的功能和需求&#xff0c;包括输入参数、输出结果以及接口的业务逻辑。 设计接口路由&#xff1a;根据接口需求&#xff0c;设计具体的接口路由&#xff0c;即URL路径&#xff0c;用于访问接口。 搭建PHP环境&#xff1a;确保你的服务器上…...

医疗集群系统中基于超融合数据库架构的应用与前景探析

一、引言 1.1 研究背景与意义 随着医疗信息化的飞速发展,医疗数据呈爆炸式增长。从日常诊疗记录、患者病历,到各类医疗影像、检查检验数据等,海量信息不断涌现。据统计,医疗数据的年增长率高达 30% 以上 ,2025 年,全球医疗数据量将达到 2314 艾字节(EB)。如此庞大的数…...

浅谈云计算15 | 存储可靠性技术(RAID)

存储可靠性技术 一、存储可靠性需求1.1 数据完整性1.2 数据可用性1.3 故障容错性 二、传统RAID技术剖析2.1 RAID 02.2 RAID 12.3 RAID 52.4 RAID 62.5 RAID 10 三、RAID 2.0技术3.1 RAID 2.0技术原理3.1.1 两层虚拟化管理模式3.1.2 数据分布与重构 3.2 RAID 2.0技术优势3.2.1 自…...

43.Textbox的数据绑定 C#例子 WPF例子

固定最简步骤&#xff0c;包括 XAML&#xff1a; 题头里引入命名空间 标题下面引入类 box和block绑定属性 C#&#xff1a; 通知的类&#xff0c;及对应固定的任务 引入字段 引入属性 属性双触发&#xff0c;其中一个更新block的属性 block>指向box的属性 从Textbo…...

LLM大语言模型的分类

从架构和功能的角度来看&#xff0c;LLM&#xff08;Large Language Model&#xff0c;大语言模型&#xff09;主要可以分为以下几种类型&#xff1a; **1. 基础语言模型&#xff1a;** * **定义:** 通过在大规模文本数据上进行预训练&#xff0c;学习语言的规律和模式&#…...

【北京迅为】iTOP-4412全能版使用手册-第八十七章 安装Android Studio

iTOP-4412全能版采用四核Cortex-A9&#xff0c;主频为1.4GHz-1.6GHz&#xff0c;配备S5M8767 电源管理&#xff0c;集成USB HUB,选用高品质板对板连接器稳定可靠&#xff0c;大厂生产&#xff0c;做工精良。接口一应俱全&#xff0c;开发更简单,搭载全网通4G、支持WIFI、蓝牙、…...

【深度学习】神经网络之Softmax

Softmax 函数是神经网络中常用的一种激活函数&#xff0c;尤其在分类问题中广泛应用。它将一个实数向量转换为概率分布&#xff0c;使得每个输出值都位于 [0, 1] 之间&#xff0c;并且所有输出值的和为 1。这样&#xff0c;Softmax 可以用来表示各类别的预测概率。 Softmax 函…...

容器渗透横向

本质上要获得 1.获得容器IP段 2.获得主机IP段 3.获得本机IP 4.通过CNI或Docker0等扫描本机端口 Flannel 容器信息 rootubuntu-linux-22-04-desktop:/home/parallels/Desktop# k get po -A -o wide NAMESPACE NAME …...

黑马Java面试教程_P1_导学与准备篇

系列博客目录 文章目录 系列博客目录导学Why?举例 准备篇企业是如何筛选简历的(筛选简历的规则)HR如何筛选简历部门负责人筛选简历 简历注意事项简历整体结构个人技能该如何描述项目该如何描述 应届生该如何找到合适的练手项目项目来源找到项目后&#xff0c;如何深入学习项目…...

《自动驾驶与机器人中的SLAM技术》ch4:预积分学

目录 1 预积分的定义 2 预积分的测量模型 ( 预积分的测量值可由 IMU 的测量值积分得到 ) 2.1 旋转部分 2.2 速度部分 2.3 平移部分 2.4 将预积分测量和误差式代回最初的定义式 3 预积分的噪声模型和协方差矩阵 3.1 旋转部分 3.2 速度部分 3.3 平移部分 3.4 噪声项合并 4 零偏的…...

Docker部署MySQL 5.7:持久化数据的实战技巧

在生产环境中使用Docker启动MySQL 5.7时&#xff0c;需要考虑数据持久化、配置文件管理、安全性等多个方面。以下是一个详细的步骤指南。 1. 准备工作 &#xff08;1&#xff09;创建挂载目录 在宿主机上创建用于挂载的目录&#xff0c;以便持久化数据和配置文件。 sudo mkdi…...

Spring框架 了解

深入浅出Spring框架&#xff1a;为初学者量身定制的入门指南 引言 在现代Java开发中&#xff0c;Spring框架无疑是构建企业级应用的核心技术之一。无论是初学者还是经验丰富的开发者&#xff0c;掌握Spring都能极大地提升你的编程技能和项目开发效率。本文将带你深入了解Spri…...

低代码独特架构带来的编译难点及多线程解决方案

前言 在当今软件开发领域&#xff0c;低代码平台以其快速构建应用的能力&#xff0c;吸引了众多开发者与企业的目光。然而&#xff0c;低代码平台独特的架构在带来便捷的同时&#xff0c;也给编译过程带来了一系列棘手的难点。 一&#xff0c;低代码编译的难点 &#xff08;1…...

如何使用Ultralytics训练自己的yolo5 yolo8 yolo10 yolo11等目标检测模型

Ultralytics正在以惊人的速度吸收优秀的CV算法&#xff0c;之前Ultralytics定位于YOLOV8&#xff0c;但逐渐地扩展到支持其他版本的YOLO&#xff0c;最新版本的ultralytics全面支持yolo5 yolo7 yolo8 yolo9 yolo10 yolo11&#xff0c;包含模型的训练、验证、预测、部署等。毫无…...

Java技术栈 —— Andorid开发入门

Java技术栈 —— Andorid开发入门 一、搭建开发环境二、HelloWorld三、将Andorid项目打包成APK文件&#xff0c;并安装至手机上四、开发常见问题 一、搭建开发环境 不用Intellij&#xff0c;而是用Andorid Studio(免费)&#xff0c;这是专门给Andorid的IDE。 参考文章或视频链…...

Qt天气预报系统获取天气数据

Qt天气预报系统获取天气数据 1、获取天气数据1.1添加天气类头文件1.2定义今天和未来几天天气数据类1.3定义一个解析JSON数据的函数1.4在mainwindow中添加weatherData.h1.5创建今天天气数据和未来几天天气数据对象1.6添加parseJson定义1.7把解析JSON数据添加进去1.8添加错误1.9解…...

力扣 搜索二维矩阵

二分查找&#xff0c;闭区间与开区间的不同解法。 题目 乍一看&#xff0c;不是遍历一下找到元素就可以了。 class Solution {public boolean searchMatrix(int[][] matrix, int target) {for (int[] ints : matrix) {for (int ans : ints) {if (ans target) return true;}}…...

JavaScript 操作符与表达式

Hi, 我是布兰妮甜&#xff0c;编写流畅、愉悦用户体验的程序员。JavaScript 是一种功能强大且灵活的编程语言&#xff0c;广泛应用于前端和后端开发。它提供了一系列丰富的操作符和表达式来处理数据、执行逻辑判断以及控制程序流程。理解这些概念对于编写高效、可读性强的代码至…...

深度学习 Pytorch 张量(Tensor)的创建和常用方法

1 张量的基本创建及其类型 和Numpy中的array一样&#xff0c;张量的本质也是结构化地组织了大量的数据。 并且在实际操作中&#xff0c;张量的创建和基本功能也与其非常类似。 1.1 张量(Tensor)函数创建方法 张量的最基本创建方法和Numpy中创建Array的格式一致。 # Numpy创建…...

在VMwareFusion中使用Ubuntu

在VMwareFusion使用Ubuntu 在VMwareFusion使用Ubuntu背景在VMwareFusion虚拟机里使用Ubuntu1、集成桌面工具2、主机和虚拟机之间共享剪贴板内容3、设置root用户密码4、设置静态ip4.1、静态ip和动态ip的区别4.2、查看当前ip4.2、linux网络配置文件所在位置4.3、基于ubuntu22.04.…...

%.*s——C语言中printf 函数中的一种格式化输出方式

在C语言中&#xff0c;%.*s 是 printf 函数中的一种格式化输出方式&#xff0c;用于控制字符串的输出长度。具体来说&#xff0c;%.*s 中的 * 表示输出宽度&#xff08;即最多输出的字符数&#xff09;是一个变量&#xff0c;这个变量的值在运行时通过 printf 函数的参数传递。…...

基于微信小程序的摄影竞赛系统设计与实现(LW+源码+讲解)

专注于大学生项目实战开发,讲解,毕业答疑辅导&#xff0c;欢迎高校老师/同行前辈交流合作✌。 技术范围&#xff1a;SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容&#xff1a;…...

hydra破解密码

hydra九头蛇是常用的密码破解工具 1、破解centos ssh密码 hydra -l root -P password.txt ssh://192.168.1.107:2222 hydra -l root -P password.txt -s 2222 192.168.1.107 ssh2、破解ftp hydra -l allen -P e:\aa.txt ftp://127.0.0.1 hydra -l allen -P e:\aa.txt ftp:…...

JAVA之外观模式

外观模式&#xff0c;又称门面模式&#xff0c;是一种结构型设计模式&#xff0c;旨在为复杂的子系统提供一个统一且简化的接口。通过这一模式&#xff0c;客户端可以更加便捷地与子系统交互&#xff0c;而无需深入了解其内部结构和实现细节。外观模式不仅简化了客户端的使用&a…...

如何选择合适的服务器?服务器租赁市场趋势分析

服务器租赁市场概览 服务器租赁 market可以分为两种类型&#xff1a;按小时、按月和按年&#xff0c;每种模式都有其特点和适用场景&#xff0c;按小时租赁是最经济实惠的选择&#xff0c;适用于短期需求&#xff1b;按月租赁则适合中长期使用&#xff1b;而按年租赁则是最灵活…...

CentOS 下载软件时报Error: Failed to synchronize cache for repo ‘AppStream‘解决方法

下载软件时出现以下问题 直接把CentOS-AppStream.repo改个名字就行 cd /etc/yum.repos.d/ mv CentOS-AppStream.repo CentOS-AppStream.repo.bak就可以了 解决思路 把AI问遍&#xff0c;无人会&#xff0c;解决法 想要下载软件通通失败了&#xff0c;解决方法当然是问AI&am…...