基于ChatGPT聊天的零样本信息提取7.25

基于ChatGPT聊天的零样本信息提取

  • 摘要
  • 介绍
  • ChatIE
    • 用于零样本IE的多轮 QA
  • 实验
  • 总结

在这里插入图片描述

摘要

零样本信息提取(IE)旨在从未注释的文本中构建IE系统。由于很少涉及人类干预,因此具有挑战性。

零样本IE减少了数据标记所需的时间和工作量。最近对大型语言模型(LLMs,GFI-3,ChatGPT)的研究在零样本设置下显示出了良好的性能,从而激励我们研究基于提示的方法。

在这项工作中,我们询问是否可以通过直接提示LLM来构建强IE模型。
具体来说,我们将零样本IE任务转换为多轮问题解答问题,使用两阶段框架(ChatIE)。借助ChatGPT的强大功能,我们在三个IE任务上对我们的框架进行了广泛的评估:实体关系三重提取、命名实体识别和事件提取。

在两种语言的六个数据集上的经验结果表明,ChatIE在几种数据集上取得了令人印象深刻的性能,甚至超过了一些完整的模型。

介绍

信息提取旨在将非结构化文本中的结构化信息提取为结构化数据格式,包括实体关系提取(RE)、命名实体识别(NER)、事件提取(EE)等任务。这是自然语言处理中一项有趣的重要任务。处理大量的标签数据总是非常繁忙、劳动密集且耗时。

最近的工作在大规模预训练大语言模型上,例如GPT-3。
InstructGPT和ChatGPT表明,LLM即使不调整参数,仅使用少数示例作为说明,也能很好地执行各种下游任务。因此,这是一个时间问题:LLM提示在同一框架下执行零样本IE任务是否可行。这也是一个挑战,因为包含多个相关元素的结构化数据很容易通过一次预测来提取,尤其是对于像RE这样的复杂任务。以前的工作将这些复杂任务分解为不同的部分,并训练几个模块来解决每个部分。

基于这些线索,在本文中,我们转向ChatGPT,并假设ChatGPT天生具有在交互模式下存放统一正确零样本IE模型的能力。

更具体地说,我们提出了ChatIE,将零样本任务转化为一个多回合问题,并使用两阶段框架回答问题。

  1. 在第一阶段,我们的目的是找出一个句子中可能存在的相应元素类型。
  2. 在第二阶段,我们对来自阶段1的每个元素类型进行链式信息提取。

在这里插入图片描述
每个阶段都通过一个多回合的QA过程来实现。在每一轮,我们都会根据设计的模板和之前提取的信息构建提示,以询问ChatGPT。最后,我们将每个转弯的结果组成结构化数据。我们对IE、NER和EE进行了广泛的实验任务,包括两种语言的六个数据集:英语和汉语。

实验结果表明,当不使用ChatIE的普通ChatGPT无法用原始任务指令解决IE时,当IE任务分解为多个更简单、更容易的子任务时,我们提出的在ChatGPT上实例化的两阶段框架成功了。令人惊讶的是,ChatIE在几个数据集上取得了令人印象深刻的性能,甚至超过了一些全镜头模型。

ChatIE

用于零样本IE的多轮 QA

将IE框架分解成两个阶段,每个阶段都包含几轮QA,参考与ChatGPT的对话。

在第一阶段,我们的目标是在三个任务中分别找出句子中存在的实体、关系或事件的类型。这样,我们过滤掉不存在的元素类型,以减少搜索空间和假设的复杂性,有助于提取信息。

在第二阶段,我们在第一阶段提取的元素类型以及相应的任务特定方案的基础上进一步提取相关信息。

第一阶段:对于这个例子而言,这一步仅包含了一轮QA。为找到在句子中呈现的元素类型,我们首先利用任务特定的 TypeQues模板和元素类型列表 来构建问题。然后我们将问题和句子组合到ChatGPT中。为了便于提取答案,我们要求系统 以列表形式回复 。如果这些内容不包含任何元素类型,系统将生成一个带有NONE Token的响应。

第二阶段:该阶段通常包括多个QA轮次。在那之前,我们根据任务的方案设计了一系列特定的元素类型 ChainExtractionTemplate。ChainExtractionTemplates定义了一个问题链模板,链的长度通常为为1。但对于复杂的方案,如实体关系三重提取中的复数二元值提取,链的长度大于1。在这一点上,一个元素的提取可能依赖于另一个先前的元素,因此我们称之为链式模板(chained template)。
我们按照先前提取的元素类型的顺序以及ChainExtractionTemplates的理论执行多回合QA。为了生成问题,我们需要检索具有元素类型的模板,并在必要时填充相应的槽。然后我们访问ChatGPT并获得响应。最后,我们根据每一轮提取的元素组成结构化信息。同样,为了便于答案提取,我们要求系统以表格形式回复。如果没有提取任何内容,系统将生成一个带有NONE的令牌响应。

实验

总结

这是知识抽取和语言模型的结合,重点在于提出的基于ChatGPT的多轮QA框架——ChatIE,用于零样本信息提取。

ChatIE将每个回合的结果合成最终的结构化结果。

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Git】Git的概念安装工作区-暂存区-版本库

文章目录 Git概念-版本控制器Git安装Centos平台&ubuntu Git基本操作创建Git本地仓库配置Git 认识⼯作区、暂存区、版本库添加文件查看.git文件总结添加文件场景2 Git概念-版本控制器 引入 我们在编写各种⽂档时,为了防⽌⽂档丢失,更改失误&#xff0…

sql server表值函数

一、创建测试表 Employees 二、创建表值函数 -- DROP FUNCTION TableIntSplit;CREATE FUNCTION TableIntSplit(Text NVARCHAR(4000),Sign NVARCHAR(4000)) RETURNS tempTable TABLE(Id INT ) AS BEGIN DECLARE StartIndex INT DECLARE FindIndex INT DECLARE Content VARCHAR(…

Spring之IoC源码分析及设计思想(一)——BeanFactory

关于Spring的IOC Spring 是一个开源的 Java 平台,它提供了一种简化应用程序开发的框架。它是一个分层的框架,包括两个主要的内核:控制反转(IOC)和面向切面编程(AOP)。IOC 允许应用程序将组件之…

STM32MP157驱动开发——按键驱动(POLL 机制)

文章目录 “POLL ”机制:APP执行过程驱动使用的函数应用使用的函数pollfd结构体poll函数事件类型实现原理 poll方式的按键驱动程序(stm32mp157)gpio_key_drv.cbutton_test.cMakefile修改设备树文件编译测试 “POLL ”机制: 使用休眠-唤醒的方式等待某个…

BOB_1.0.1靶机详解

BOB_1.0.1靶机详解 靶机下载地址:https://download.vulnhub.com/bob/Bob_v1.0.1.ova 这个靶机是一个相对简单的靶机,很快就打完了。 找到ip地址后对IP进行一个单独的扫描,发现ssh端口被改到25468了,等会儿登陆时候需要用到。 目…

SQL注入原理分析

前言 order by的作用及含义 order by 用于判断显示位,order by 原有的作用是对字段进行一个排序,在sql注入中用order by 来判断排序,order by 1就是对一个字段进行排序,如果一共四个字段,你order by 5 数据库不知道怎么…

物联网场景中的边缘计算解决方案有哪些?

在物联网场景中,边缘计算是一种重要的解决方案,用于在物联网设备和云端之间进行实时数据处理、分析和决策。HiWoo Box作为工业边缘网关设备,具备边缘计算能力,包括单点公式计算、Python脚本编程以及规则引擎,它为物联网…

使用Kmeans算法完成聚类任务

聚类任务 聚类任务是一种无监督学习任务,其目的是将一组数据点划分成若干个类别或簇,使得同一个簇内的数据点之间的相似度尽可能高,而不同簇之间的相似度尽可能低。聚类算法可以帮助我们发现数据中的内在结构和模式,发现异常点和离…

原生求生记:揭秘UniApp的原生能力限制

文章目录 1. 样式适配问题2. 性能问题3. 原生能力限制4. 插件兼容性问题5. 第三方组件库兼容性问题6. 全局变量污染7. 调试和定位问题8. 版本兼容性问题9. 前端生态限制10. 文档和支持附录:「简历必备」前后端实战项目(推荐:⭐️⭐️⭐️⭐️…

服务网格技术对比:深入比较Istio、Linkerd和Envoy等服务网格解决方案的优缺点

🌷🍁 博主 libin9iOak带您 Go to New World.✨🍁 🦄 个人主页——libin9iOak的博客🎐 🐳 《面试题大全》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~&#x1f33…

解决mysqld服务启动失败

1、进程 首先查看下mysql进程: ps -aux | grep mysql有进程号 2、所有者和所属组为mysql 查看/usr/local/MySQL/data/mysqld.pid所有者和所属组是否为mysql 原来是权限有问题,那么更改权限(还需要加权限)3、 重新启动服务

Kubernetes.Service—使用源 IP

使用源 IP 运行在 Kubernetes 集群中的应用程序通过 Service 抽象发现彼此并相互通信,它们也用 Service 与外部世界通信。 本文解释了发送到不同类型 Service 的数据包的源 IP 会发生什么情况,以及如何根据需要切换此行为。 准备开始 术语表 本文使用…

阿里云盘自动每日签到无需部署无需服务器(仅限学习交流使用)

一、前言 阿里云盘自动每日签到,无需部署,无需服务器 执行思路:使用金山文档的每日定时任务,执行阿里云盘签到接口。 二、效果展示: 三、步骤: 1、进入金山文档网页版 金山文档官网:https:…

EXCEL数据自动web网页查询----高效工作,做个监工

目的 自动将excel将数据填充到web网页,将反馈的数据粘贴到excel表 准备 24KB的鼠标连点器软件(文末附链接)、Excel 宏模块 优势 不需要编程、web验证、爬虫等风险提示。轻量、稳定、安全。 缺点 效率没那么快 演示 宏环境 ht…

QT第四讲

思维导图 基于QT的网络聊天室 widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include<QTcpServer> //服务器类 #include<QTcpSocket> //客户端类 #include<QMessageBox> //对话框类 #include<QList…

【Terraform学习】Terraform-AWS部署快速入门(快速入门)

Terraform-AWS部署快速入门 实验步骤 连接到 Terraform 环境 SSH 连接到Terraform 环境(名为MyEC2Instance的实例) 在 Amazon Web Services &#xff08;AWS&#xff09; 上预置 EC2 实例 用于描述 Terraform 中基础结构的文件集称为 Terraform 配置。您将编写一个配置来定义…

R-并行计算

本文介绍在计算机多核上通过parallel包进行并行计算。 并行计算运算步骤&#xff1a; 加载并行计算包&#xff0c;如library(parallel)。创建几个“workers”,通常一个workers一个核&#xff08;core&#xff09;&#xff1b;这些workers什么都不知道&#xff0c;它们的全局环…

【雕爷学编程】MicroPython动手做(10)——零基础学MaixPy之神经网络KPU2

KPU的基础架构 让我们回顾下经典神经网络的基础运算操作&#xff1a; 卷积&#xff08;Convolution&#xff09;:1x1卷积&#xff0c;3x3卷积&#xff0c;5x5及更高的卷积 批归一化&#xff08;Batch Normalization&#xff09; 激活&#xff08;Activate&#xff09; 池化&…

Meta-Transformer 多模态学习的统一框架

Meta-Transformer是一个用于多模态学习的新框架&#xff0c;用来处理和关联来自多种模态的信息&#xff0c;如自然语言、图像、点云、音频、视频、时间序列和表格数据&#xff0c;虽然各种数据之间存在固有的差距&#xff0c;但是Meta-Transformer利用冻结编码器从共享标记空间…

14:00面试,14:06就出来了,问的问题有点变态。。。

从小厂出来&#xff0c;没想到在另一家公司又寄了。 到这家公司开始上班&#xff0c;加班是每天必不可少的&#xff0c;看在钱给的比较多的份上&#xff0c;就不太计较了。没想到5月一纸通知&#xff0c;所有人不准加班&#xff0c;加班费不仅没有了&#xff0c;薪资还要降40%,…