LLM+知识图谱新工具! iText2KG:使用大型语言模型构建增量知识图谱

iText2KG是一个基于大型语言模型的增量知识图谱构建工具,通过从文本文档中提取实体和关系来逐步构建知识图谱。该工具具有零样本学习能力,能够在无需特定训练的情况下,在多个领域中进行知识提取。它包括文档提炼、实体提取和关系提取模块,最终将提取的知识集成到Neo4j中进行可视化。

iText2KG解决了在将实体列表和上下文传递给 LLM 时,使用 LLM 进行 KG 构建时出现的两个主要 LLM 幻觉问题。这些问题是:

  • LLM 可能会虚构所提供的实体列表中不存在的实体。我们通过用输入实体列表中最相似的实体替换虚构的实体来处理此问题。

  • LLM 可能无法从输入实体列表中为某些实体分配关系,从而导致“遗忘效应”。我们通过重新提示 LLM 提取这些实体的关系来处理这个问题。

相关链接

论文地址:https://arxiv.org/pdf/2409.03284

代码地址:https://github.com/AuvaLab/itext2kg

论文阅读

iText2KG:使用大型语言模型构建增量知识图谱

摘要

大多数可用数据都是非结构化的,因此很难获取有价值的信息。自动构建知识图谱 (KG) 对于结构化数据和使其可访问至关重要,可让用户有效地搜索信息。KG 还有助于洞察、推理和推理。传统的 NLP 方法(例如命名实体识别和关系提取)是信息检索的关键,但面临局限性,包括使用预定义的实体类型和需要监督学习。当前的研究利用大型语言模型的功能,例如零次或少量学习。然而,未解决和语义重复的实体和关系仍然带来挑战,导致图表不一致并需要大量的后处理。此外,大多数方法都依赖于主题。在本文中,我们提出了 iText2KG3,这是一种无需后处理的增量、主题独立的 KG 构建方法。这种即插即用的零样本方法适用于广泛的知识图谱构建场景,包括四个模块:文档提取器、增量实体提取器、增量关系提取器以及图形集成器和可视化。我们的方法在三个场景中表现出比基线方法更好的性能:将科学论文转换为图形、将网站转换为图形以及将简历转换为图形。

方法

总体架构

该iText2KG软件包由四个主要模块组成,它们协同工作,从非结构化文本构建和可视化知识图谱。整体架构概述:

  • 文档提取器:该模块处理原始文档,并根据用户定义的模式将其重新表述为语义块。它通过关注相关信息并以预定义的格式对其进行结构化来提高信噪比。

  • 增量实体提取器:此模块从语义块中提取唯一实体并解决歧义以确保每个实体都有明确定义。它使用余弦相似度度量将局部实体与全局实体进行匹配。

  • 增量关系提取器:此模块识别提取实体之间的关系。它可以以两种模式运行:使用全局实体丰富图形中的潜在信息,或使用局部实体建立更精确的关系。

  • 图形集成器和可视化:此模块将提取的实体和关系集成到 Neo4j 数据库中,提供知识图谱的可视化表示。它允许对结构化数据进行交互式探索和分析。

iEntities Matcher的算法

LLM 被提示提取代表一个唯一概念的实体,以避免语义混合的实体。下图显示了使用 Langchain JSON 解析器的实体和关系提取提示。它们分类如下:蓝色 - 由 Langchain 自动格式化的提示;常规 - 我们设计的提示;斜体 - 专门为实体和关系提取设计的提示。(a)关系提取提示和(b)实体提取提示。

实验

数据集

该数据集包括使用 GPT-4 生成的五份简历、五篇随机选择的代表不同研究领域且结构各异的科学文章,以及来自不同行业且规模各异的五个公司网站。此外,我们还根据预定义的模式包含了简历和科学文章的精简版本。

添加了另一个数据集,其中包含 1,500 个相似实体对和 500 个关系,灵感来自各个领域(例如新闻、科学文章、人力资源实践),以估计基于余弦相似度合并实体和关系的阈值。

下图中,我们为seasonal文章和公司公司构建了一个 KG,并获得了该公司公开发布的许可。此外,简历 (CV) KG 基于以下生成的 CV。

基线方法和iText2KG在三种情况下的KG构建比较。

不同类型的信息一致性得分柱状图文档。

结论

本文介绍了 iText2KG,这是一种利用 LLM 的零样本能力进行增量式 KG 构建的方法。该方法解决了传统 KG 构建过程中固有的局限性,这些过程通常依赖于预定义的本体和广泛的监督训练。iText2KG 方法的一个关键优势是它的灵活性,这源于使用用户定义的蓝图,该蓝图概述了在 KG 构建过程中要提取的关键组件。这使得该方法能够适应广泛的场景,因为没有适用于所有用例的通用蓝图;相反,设计因具体应用而异。此外,iText2KG 方法通过使用灵活的用户定义蓝图来指导提取过程,实现了文档类型独立性,使其能够处理结构化和非结构化文本。

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

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

相关文章

Unity3D 客户端多开

Unity3D 实现客户端多开 客户端多开 最近在做好友聊天系统,为了方便测试,需要再开一个客户端。 简单的方法,就是直接拷贝一个新的项目,但是需要很多时间和占用空间。 查阅了网络资料,发现有一种软链接,…

Python水循环标准化对比算法实现

🎯要点 算法区分不同水循环数据类型:地下水、河水、降水、气温和其他,并使用相应标准化降水指数、标准化地下水指数、标准化河流水位指数和标准化降水蒸散指数。绘制和计算特定的时间序列比较统计学相关性。使用相关矩阵可视化集水区和显示空…

河南移动:核心营业系统稳定运行超300天,数据库分布式升级实践|OceanBase案例

河南移动,作为电信全业务运营企业,不仅拥有庞大的客户群体和业务规模,还引领着业务产品与服务体系的创新发展。河南移动的原有核心营业系统承载着超过6000万的庞大用户量,管理着超过80TB的海量数据,因此也面临着数据规…

pWnos1.0 靶机渗透 (Perl CGI 的反弹 shell 利用)

靶机介绍 来自 vulnhub 主机发现 ┌──(kali㉿kali)-[~/testPwnos1.0] …

阿里云ACP认证考试题库

最近有好些同学,考完阿里云ACP了,再来跟我反馈:自己花700买的阿里云ACP题库,结果答案是错的! 或者考完后发现,买的阿里云ACP题库覆盖率只有50%! 为避免大家继续踩坑,给大家分享一个阿…

qt使用QDomDocument读写xml文件

在使用QDomDocument读写xml之前需要在工程文件添加: QT xml 1.生成xml文件 void createXml(QString xmlName) {QFile file(xmlName);if (!file.open(QIODevice::WriteOnly | QIODevice::Truncate |QIODevice::Text))return false;QDomDocument doc;QDomProcessin…

使用 Python 遍历文件夹

要解决这个问题,使用 Python 的标准库可以很好地完成。我们要做的是遍历目录树,找到所有的 text 文件,读取内容,处理空行和空格,并将处理后的内容合并到一个新的文件中。 整体思路: 遍历子目录&#xff1…

【目标检测】工程机械车辆数据集2690张4类VOC+YOLO格式

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):2694 标注数量(xml文件个数):2694 标注数量(txt文件个数):2694 标注…

Star 3w+,向更安全、更泛化、更云原生的 Nacos3.0 演进

作者:席翁 Nacos 社区刚刚迎来了 Star 突破 30000 的里程碑,从此迈上了一个新的阶段。感谢大家的一路支持、信任和帮助! Nacos /nɑ:kəʊs/是 Dynamic Naming and Configuration Service 的首字母简称,定位于一个更易于构建云原…

Linux网络编程 -- 网络基础

本文主要介绍网络的一些基础概念,不涉及具体的操作原理,旨在构建对网络的基础认识。 1、网络的早期发展历程 20世纪50年代 在这一时期,计算机主机非常昂贵,而通信线路和设备相对便宜。为了共享计算机主机资源和进行信息的综合处…

关于CSS 案例_新闻内容展示

新闻要求 标题:居中加粗发布日期: 右对齐分割线: 提示, 可以使用 hr 标签正文/段落: 左侧缩进插图: 居中显示 展示效果 审核过不了&#xff0c;内容没填大家将就着看吧。 代码 <!DOCTYPE html> <html lang"en"> <head><meta charset&qu…

python-pptx 中 placeholder 和 shape 有什么区别?

在 python-pptx 库中&#xff0c;placeholder 和 shape 是两个核心概念。虽然它们看起来相似&#xff0c;但在功能和作用上存在显著的区别。为了更好地理解这两个概念&#xff0c;我们可以通过它们的定义、使用场景以及实际代码示例来剖析其差异。 Python-pptx 的官网链接&…

【Java】六大设计原则和23种设计模式

目录 一、JAVA六大设计原则 二、JAVA23种设计模式 1. 创建型模式 2. 结构型模式 3. 行为型模式 三、设计原则与设计模式 1. 设计原则 2. 设计模式 四、单例模式 1. 饿汉式 2. 懒汉式 四、代理模式 1. 什么是代理模式 2. 为什么要用代理模式 3. 有哪几种代理模式 …

服务器几核几G几M是什么意思?如何选择?

服务器几核几G几M是什么意思&#xff1f;我们建站、搭建网络平台都要用到云服务器&#xff0c;不管在腾讯云、阿里云还是别的云服务平台选购&#xff0c;都会接触到服务器配置。云服务器就是把物理服务器&#xff08;俗称“母鸡”&#xff09;&#xff0c;用虚拟机技术虚拟出多…

Android SystemUI组件(09)唤醒亮屏 锁屏处理流程

该系列文章总纲链接&#xff1a;专题分纲目录 Android SystemUI组件 本章关键点总结 & 说明&#xff1a; 说明&#xff1a;本章节持续迭代之前章节的思维导图&#xff0c;主要关注左侧上方锁屏分析部分 唤醒亮屏 即可。 Power按键的处理逻辑最终是由PhoneWindowManager来…

BUSHOUND的抓包使用详解

BUSHOUND是个过滤软件&#xff0c;确切来说是在windows操作系统它的驱动层USB传输的数据。所以这个数据上可能是与USB的总线上的数据是有一点差异的。 先要选择设备的抓包。所以就是在device这个界面底下&#xff0c;我们首先要选择我们要抓的设备。 尝试下键盘设备 电脑键盘…

【Linux】用虚拟机配置Ubuntu 24.04.1 LTS环境

目录 1.虚拟机安装Ubuntu系统 2.Ubuntu系统的网络配置 3.特别声明 首先我们先要下载VMware软件&#xff0c;大家自己去下啊&#xff01; 1.虚拟机安装Ubuntu系统 我们进去之后点击创建新的虚拟机&#xff0c;然后选择自定义 接着点下一步 再点下一步 进入这个界面之后&…

C语言:预编译过程的剖析

目录 一.预定义符号和#define定义常量 二.#define定义宏 三.宏和函数的对比 四、#和##运算符 五、条件编译 在之前&#xff0c;我们已经介绍了.c文件在运行的过程图解&#xff0c;大的方面要经过两个方面。 一、翻译环境 1.预处理&#xff08;预编译&#xff09; 2.编译 3…

【网络安全】Cookie与ID未强绑定导致账户接管

未经许可,不得转载。 文章目录 前言正文前言 DigiLocker 是一项在线服务,旨在为公民提供一个安全的数字平台,用于存储和访问重要的文档,如 Aadhaar 卡、PAN 卡和成绩单等。DigiLocker 通过多因素身份验证(MFA)来保护用户账户安全,通常包括 6 位数的安全 PIN 和一次性密…

51c视觉~CV~合集3

我自己的原文哦~ https://blog.51cto.com/whaosoft/11668984 一、 CV确定对象的方向 介绍如何使用OpenCV确定对象的方向(即旋转角度&#xff0c;以度为单位)。 先决条件 安装Python3.7或者更高版本。可以参考下文链接&#xff1a; https://automaticaddison.com/how-to-s…