【LLM KG】浅尝基于LLM的三阶段自动知识图谱构建方法

news2024/10/17 16:05:38

文章指出,在以前的方法中,使用LLM生成三元组时,必须预定义好schema,假如schema数量很多/复杂,很容易超过LLM的上下文窗口长度。并且,在某些情况下,没有可用的固定预定义schema。

方法

一、EDC框架

EDC框架

提出了一个名为提取-定义-规范化(EDC)的三阶段框架:先进行开放信息提取,然后定义schema,最后进行规范化。解决知识图谱构建问题。

1.开放信息提取(Open Information Extraction):
利用LLMs进行开放信息提取,通过少量的提示,LLMs从输入文本中识别并提取关系三元组([主体, 关系, 对象]),不依赖于任何特定Schema。

OIE Prompt示例:

Given a piece of text, extract relational triplets in
the form of [Subject, Relation, Object] from it.
Here are some examples:
Example 1:
Text: The 17068.8 millimeter long ALCO RS-3
has a diesel-electric transmission.
Triplets: [[‘ALCO RS-3’, ‘powerType’, ‘Dieselelectric transmission’], [‘ALCO RS-3’, ‘length’,
‘17068.8 (millimetres)’]] ...
Now please extract triplets from the following
text: Alan Shepard was born on Nov 18, 1923
and selected by NASA in 1959. He was a member of the Apollo 14 crew.

提取的三元组:[‘Alan Shepard’, ‘bornOn’, ‘Nov 18, 1923’], [‘Alan Shepard’, ‘participatedIn’, ‘Apollo 14’]

2.Schema定义(Schema Definition):
提示LLMs为提取的Schema组件(如实体类型和关系类型)提供自然语言定义。然后将这些定义作为用于规范化的辅助信息传递到下一阶段。

Schema Definition Prompt示例:

Given a piece of text and a list of relational triplets
extracted from it, write a definition for each relation present.
Example 1:
Text: The 17068.8 millimeter long ALCO RS-3
has a diesel-electric transmission.
Triplets: [[‘ALCO RS-3’, ‘powerType’, ‘Dieselelectric transmission’], [‘ALCO RS-3’, ‘length’,
‘17068.8 (millimetres)’]]
Definitions:
powerType: The subject entity uses the type of
power or energy source specified by the object
entity.
...
Now write a definition for each relation present
in the triplets extracted from the following text:
Text: Alan Shepard was an American who was
born on Nov 18, 1923 in New Hampshire, was
selected by NASA in 1959, was a member of the
Apollo 14 crew and died in California
Triplets: [[‘Alan Shepard’, ‘bornOn’, ‘Nov 18,
1923’], [‘Alan Shepard’, ‘participatedIn’, ‘Apollo14’]]

结果: (bornOn: The subject entity was born on
the date specified by the object entity.) and
(participatedIn: The subject entity took part in
the event or mission specified by the object
entity.)

3.Schema标准化(Schema Canonicalization):
第三阶段将开放知识库(KG)精炼成规范化的形式,消除冗余和歧义。首先使用句子变换器对每个schema组件的定义进行向量化,创建嵌入。然后根据目标Schema的可用性,规范化以两种方式之一进行:

  • 目标对齐(Target Alignment):如果有预定义的目标Schema,识别目标Schema中与每个元素最相关的组件进行标准化。LLMs评估每个潜在转换的可行性,以确保不会过度泛化。
  • 自我标准化(Self Canonicalization):如果没有预定义的目标Schema,目标是合并语义相似(向量相似性)的组件,并将它们标准化为一个单一表示。通过向量和LLM验证来搜索潜在的合并候选者。与目标对齐不同,认为不可转换的组件被添加到规范Schema中,从而扩展它。

Schema Canonicalization提示示例:

Given a piece of text, a relational triplet extracted
from it, and the definition of the relation in it,
choose the most appropriate relation to replace it
in this context if there is any.
Text: Alan Shepard was born on Nov 18, 1923
and selected by NASA in 1959. He was a member
of the Apollo 14 crew.
Triplets: [‘Alan Shepard’, ‘participatedIn’,
‘Apollo 14’]
Definition of ‘participatedIn’: The subject entitytook part in the event or mission specified by the
object entity.
Choices:
A. ‘mission’: The subject entity participated in
the event or operation specified by the object entity.
B. ‘season’: The subject entity participated in the
season of a series specified by the object entity.
...
F. None of the above

结果:[‘Alan Shepard’, ‘birthDate’, ‘Nov 18, 1923’],[‘Alan Shepard’, ‘mission’, ‘Apollo 14’],构成了规范化的知识图谱。

二、EDC+R:迭代使用Schema检索器精炼EDC

EDC+R 是对 EDC 的改进,通过引入一个额外的迭代步骤来进一步提升知识图谱的质量。这个过程类似于RAG,通过在初始提取阶段的提示(prompt)中提供先前提取的三元组和相关Schema部分来实现。目标是利用从 EDC 过程中产生的数据来提高提取三元组的质量

精炼过程由以下两个主要元素组成:

  • 候选实体:这是之前迭代中由 EDC 提取的实体,以及使用 LLM 从文本中提取的实体。
  • 候选关系:这是之前由 EDC 提取的关系,以及通过训练有素的 Schema Retriever 从预定义/规范化的Schema中检索到的关系。

Schema Retriever 的作用:Schema Retriever是可以训练的,Schema Retriever 通过将Schema组件和输入文本投影到向量空间中,使得余弦相似度能够捕捉二者之间的相关性,即Schema组件在输入文本中出现的概率。

训练数据集由文本和它们对应的定义关系对组成。微调的是一个嵌入模型,目标是区分与给定文本相关联的正确关系和其他不相关的关系

效果

参考文献

  • paper:Extract, Define, Canonicalize: An LLM-based Framework for Knowledge Graph Construction,https://arxiv.org/pdf/2404.03868v2
  • code:https://github.com/clear-nus/edc

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

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

相关文章

计算机网络:数据链路层 —— 网络适配器与 MAC 地址

文章目录 网络适配器使用网络适配器网络适配器类型 MAC 地址MAC 地址格式MAC 地址类型MAC 地址发送顺序数据接收MAC 地址泄露问题 网络适配器 要将计算机连接到以太网,需要使用相应的网络适配器(Adapter),网络适配器一般简称为“网卡”。在计…

通信工程学习:什么是SRAM静态随机存取存储器

SRAM:静态随机存取存储器 SRAM,全称为Static Random-Access Memory,即静态随机存取存储器,是一种重要的随机存取存储器类型。以下是对SRAM的详细介绍: 一、定义与特点 定义: SRAM是一种只要保持通电&#…

CSS @规则(At-rules)系列详解___@import规则使用方法

CSS 规则(At-rules)系列详解 ___import规则使用方法 本文目录: 零、时光宝盒 一、import规则定义和用法 二、CSS import语法 2.1、语法格式 2.2、常见形式 2.3、语法说明 三、import使用方法例子 3.1、导入 CSS 规则 3.2、根据媒体查询条件导入 CSS 规则 …

结构体字节对齐的一些记录

‌结构体字节对齐的原因‌ 结构体字节对齐的主要原因是为了满足硬件平台的内存访问要求。某些硬件平台对特定类型的数据只能从特定的内存地址开始存取,如果数据没有进行对齐,可能会导致访问错误或效率低下。例如,某些架构的CPU在访问未对齐的…

原来CDC数据同步可以这么简单,零代码可视化一键数据同步

当前企业实时同步与分析场景中面临的挑战: 随着业务发展需要,实时分析成为企业目前的强需求,成为支撑企业业务发展的必须项。 一般来说,要满足数据实时分析的诉求,通常有两种方案: 第一种是直接使用源端…

多线程——解决线程安全问题

目录 前言 一、 synchronized 关键字 1. synchronized 的作用 1. synchronized 的特性 (1)互斥性 (2)可重入 2. synchronized 使用示例 (1)修饰代码块 (2)直接修饰普通方法…

Linux的GDB学习与入门

GDB GDB(GNU Debugger)是一个功能强大的调试工具,广泛用于调试 C、C 和其他编程语言编写的程序。它是 GNU 项目的一部分,专为帮助开发者在程序执行时检测和修复错误设计。GDB 能够控制程序的执行,查看程序内部的状态&…

2024诺奖引发思考,AI究竟是泡沫还是未来?

你好,我是三桥君 现在的AI技术发展得非常快,特别是深度学习和大模型这些技术,感觉和以前那些最后没搞成的技术泡沫不一样。 现在AI有超级强大的计算能力,还有大量的数据可以用来训练,算法也越来越厉害,能搞…

【单机游戏】【烛火地牢2:猫咪的诅咒】烛火地牢2:猫咪的诅咒介绍

《烛火地牢2:猫咪的诅咒》是一款将Roguelike与2D横版动作融为一体的独立游戏,由新西兰制作人Chris McFarland耗费3年时间精心制作。玩家将闯入不同的关卡接受挑战,通关要求是寻找每个关卡中的钥匙。在闯关时玩家能获得武器,防具&a…

关于int*的*号归属权问题

再根据函数指针定义:int (*int) (int a)。我们发现*和后面的标识符才是一体的 所以int *a,b;的写法更好,说明a是指针类型,b是int类型

让Kimi像人类思考的“Kimi探索版“已开启灰度内测!GPT-o1贡献者之一宣布离职|AI日报

文章推荐 “AI教父”辛顿与物理学家霍普菲尔德荣获诺贝尔物理学奖!“AI教母”李飞飞选择谷歌云作为主要计算提供商|AI日报 今日热点 o1推理模型贡献者Luke Metz官宣从OpenAI离职 就在昨日,o1推理模型贡献者之一Luke Metz发文称自己经过两…

Ofcms-(java代码审计学习)

1、背景 根据《java代码审计实战》学习进行记录,java代码审计CMS实战。 2、Ofcms下载 可搜索Ofcms1.1.2版本进行下载。下载连接:ofcms: java 版CMS系统、基于java技术研发的内容管理系统、功能:栏目模板自定义、内容模型自定义、多个站点管…

五、UI弹窗提示

一、制作弹窗UI 二、创建脚本 1、继承WindowRoot(UI基类) 获取UI上面的组件 2、初始化 将这个文本失活 3、写一个提示出现的方法 这个派生类中,继承了基类的两个方法,设置显示和设置文本 对应基类的这两个方法 将动画赋值给动…

DDPM - Denoising Diffusion Probabilistic Models 扩散模型

DDPM - Denoising Diffusion Probabilistic Models 扩散模型 扩散模型概述 扩散模型是在模拟图像加噪的逆向过程。也就是在实现一个去噪的过程。简单的来说就包括两个过程组成 前向的扩散过程 Forward Diffusion Process反向扩散过程 Reverse Diffusion Process 下面我们对整个…

流域生态系统服务评价、水文水生态分析、碳收支、气候变化影响、制图等领域中的应用

流域生态系统服务评价、水文水生态分析、碳收支、气候变化影响、制图等领域中的应用 专题一、生态系统服务评价技术框架 1.1 生态系统服务概述 1.2 流域生态系统服务的分类与作用 1.3 生态系统服务评估方法 专题二、AI大模型与生态系统服务评价 2.1 目前常用大模型介绍 2…

Java并发 - AQS之ReentrantLock

文章目录 ReentrantLockAQS 队列AbstractOwnableSynchronizerAbstractQueuedSynchronizerNodewaitStatusSHARED/EXCLUSIVE 模式 加锁流程尝试加锁 tryAcquire加锁失败入队addWaiterenq 阻塞等待 acquireQueuedparkAndCheckInterrupt 放弃加锁 cancelAcquire唤醒阻塞线程 unpark…

大语言模型训练

大语言模型训练 1.两大问题2.并行训练2.1数据并行2.2模型并行2.3张量并行2.4混合并行 3.权重计算3.1浮点数3.2混合精度训练3.3deepspeed(微软)3.3.1 ZeRO3.3.2ZeRO-offload 3.3总结 4.PEFT4.1Prompt TuningPrefix-tuning4.2P-tuning & P-tuning v2 5…

arcpy总结

arcpy 一、是什么二、为什么三、怎么用1、在哪里打开2、基础术语3、代码组织4、案例(1)裁剪(2)土地变化特征分析(4)文件访问与检测(5)空间数据的查询、插入与更新(6&…

伯努利分布(Bernoulli distribution)的两次成功之间间隔次数的分布

伯努利分布(Bernoulli distribution)是一种特殊的二项式分布,即0-1分布。百科上已经说明了这种分布,即,其中。其数学期望为,方差为。详细说明见0—1分布_百度百科 本文进一步说明对于这类分布的事件&#…

BUUCTF-greatescape1

发现有ftp包和tcp包居多 下载解压是个流量包,使用wiresharh打开,CTRLF,按下图搜索ftp tcp18流发现ssc.key 传送,在19流发现key内容 复制保存为ssc.key, 加载key解密tls,再追踪tls流可得flag INS{OkThatWasWay2Easy} …