使用大型语言模型进行实体提取

原文地址:Using A Large Language Model For Entity Extraction

LLM 能否比传统 NLP 方法更好地提取实体?

2022 年 7 月 12 日

Large Language Models for Generative Information Extraction: A Survey

实体简介

使用Co:here大型语言模型。

实体可以被视为句子或用户输入中的名词。在对话设计中,有两种实体提取方法......

一个是更基本的、顺序的槽填充过程。聊天机器人会逐个提示用户输入每个实体,并且用户需要遵循这种高度结构化的方法。

例如,在航班预订的情况下,机器人通过以下方式提示用户捕获实体。

像AWS Lex V2这样的框架在很大程度上具有槽填充方法,其中界面不是对话式的且非结构化的,并且框架以槽填充为中心。

其次,更复杂的方法是设计实体类型的复合和上下文方法。就Microsoft LUIS而言,机器学习嵌套实体正在被开创;您可以在此处阅读有关嵌套实体的更多信息。

这种方法的一个特点是聊天机器人彻底挖掘用户输入的实体。聊天机器人不会重新提示用户输入用户已提供的任何输入。用户也不必遵守预定义的结构并格式化他们的输入。

下图说明了这种方法,用户输入包含从用户话语中根据上下文提取的复合实体。

Gartner 领导者还倾向于拥有与特定意图相关的实体。因此,一旦检测到意图,NLU 就会拥有与所识别的意图相关的较小的预期可能实体池。

三种类型的实体

有人可能会说存在三种实体提取方法……

NLU 定义的实体

这些实体是自定义实体,主要在聊天机器人开发框架内定义。详细了解聊天机器人中实体结构的出现,以及为什么它对于准确和高效地捕获非结构化数据很重要。

命名实体

在NLP中,命名实体是现实世界的对象,例如人、地点、公司、产品等。命名实体不需要训练或任何定义命名实体的过程(在大多数情况下)NLP/NLU系统会自动检测它。唯一的障碍是特定人类语言中命名实体功能的可用性。

这些命名实体可以是抽象的,也可以是实际存在的。以下是Riva NLU检测到的命名实体的示例。

Jupyter Notebook 中的命名实体代码块

输入示例

Jensen Huang is the CEO of NVIDIA Corporation, located in Santa Clara, California.

示例输出:

Named Entities:jensen huang (PER)nvidia corporation (ORG)santa clara (LOC)california (LOC)

spaCy还有一个非常高效的命名实体检测系统,该系统也可以分配标签。默认模型标识大量命名和数字实体。这可以包括地点、公司、产品等。

检测到的每个命名实体的详细信息

  • 文本:原始实体文本。
  • 开始:文档中实体开始的索引
  • End:文档中实体结尾的索引
  • label:实体标签,即类型

返回大型语言模型

在我们讨论 LLM 和实体之前……LLM 的功能可以分为两个广泛的实现:生成表示

在本文中,您可以关于如何使用生成和表示模型来引导聊天机器人,利用语义搜索、语言生成和我喜欢称之为意图文档的概念。

表示语言模型用于分类和语义搜索。

使用 LLM 进行实体提取

对于实体提取,我们将使用Co:here的生成语言模型,该模型可用于补全、文本摘要和实体提取

使用像Co:here这样的大型语言模型来训练模型和提取实体有以下几个方面的不同:

  • 几次训练方法需要少量的训练数据。
  • 差异很大的数据的准确性令人震惊。
  • 具有多个训练样本和多个实体的管理和环境可能会变得复杂。图形管理工作室环境将是通过无代码界面直观地管理实体的理想选择。
  • 我没有测试使用复合实体、每个话语或句子多个实体的实体提取。该系统在检测多词实体方面表现出色,而传统的实体提取经常无法做到这一点。
  • 在某些情况下,提取意图的话语相当长,这使得LLMs的表现更加令人印象深刻。
  • 这种类型的提取很有趣,因为它不只是盲目地看文本。该模型在预训练过程中获取了电影信息,这有助于它仅从几个示例中理解任务。

下面是使用的训练数据,JSON 格式:

movie_examples = [
("Deadpool 2", "Deadpool 2 | Official HD Deadpool's \"Wet on Wet\" Teaser | 2018"),
("none", "Jordan Peele Just Became the First Black Writer-Director With a $100M Movie Debut"),
("Joker", "Joker Officially Rated “R”"),
("Free Guy", "Ryan Reynolds’ 'Free Guy' Receives July 3, 2020 Release Date - About a bank teller stuck in his routine that discovers he’s an NPC character in brutal open world game."),
("none", "James Cameron congratulates Kevin Feige and Marvel!"),
("Guardians of the Galaxy", "The Cast of Guardians of the Galaxy release statement on James Gunn"),
("Inception", "Inception is a movie about dreams and levels in dreams."),
]

接下来我们获取数据进行分析:

['Hayao Miyazaki Got So Bored with Retirement He Started Directing Again ‘in Order to Live’',  
"First poster for Pixar's Luca",  
'New images from Space Jam: A New Legacy',  
'Official Poster for "Sonic the Hedgehog 2"',  
'Ng Man Tat, legendary HK actor and frequent collborator of Stephen Chow (Shaolin Soccer, God of Gambler) died at 70',  
'Zack Snyder’s Justice League has officially been Rated R for for violence and some language',  
'HBOMax and Disney+ NEED to improve their apps if they want to compete with Netflix.',  
'I want a sequel to Rat Race where John Cleese’s character dies and invites everyone from the first film to his funeral, BUT, he’s secretly set up a Rat Maze to trap them all in. A sort of post-mortem revenge on them for donating all his wealth to charity.',
"'Trainspotting' at 25: How an Indie Film About Heroin Became a Feel-Good Classic",  
'‘Avatar: The Last Airbender’ Franchise To Expand With Launch Of Nickelodeon’s Avatar Studios, Animated Theatrical Film To Start Production Later This Year']

结果如下:

  • 该模型十分之九正确。
  • 错过了该盘中的第四(4)号。
  • 需要进行实验来检测沿途的边缘情况。例如,如果有人提到两个电影名称怎么办?我们在提示中添加的解决这些情况的示例越多,结果就越有弹性。

结论

通过笔记本的一些观察:

  • 少样本训练方法确实为实体提取提供了更灵活、更令人兴奋的前景。
  • 聊天机器人可以在某种程度上进行引导,并且可以将实体添加到我在这里讨论的意图文档方法中。
  • 仅通过几个训练示例,似乎确实涵盖了更广泛的潜在用户话语基础。
  • 我看到一个新兴的用例,其中 LLM 实体提取可以作为扩展或引导实体提取的途径在聊天机器人中实现。这是我想在不久的将来探索的事情。
  • 最后,迫切需要一种无代码工作室方法,用户可以通过该方法访问 LLM 功能、创建和提交训练数据以及构建实体提取功能。

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

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

相关文章

pytorch_retinaface训练Resnet50_Final.pth过程+无图版安装Nvidia+CUDA驱动GPU

背景 当前处于人脸检测分支,项目就是retinaface官方的代码加上数据集目录结构,目的是训练出最后的模型文件Resnet50_Final.pth 代码 https://gitee.com/congminglst/pytorch_-retinaface.git 项目结构与设计 图片数据集采用widerface, 前…

如何通过隐藏服务器真实IP来防御DDOS攻击

我们知道,服务器对外提供服务,基本上都是放置在公网上的。所以说服务器放置在公网上会面临很多攻击,如果不做好必要的防护措施,服务器被人攻击只是时间上的问题。 而我们面临的众多攻击中,DDoS攻击是最常见同时也是影响…

【Flink】Flink 的八种分区策略(源码解读)

Flink 的八种分区策略(源码解读) 1.继承关系图1.1 接口:ChannelSelector1.2 抽象类:StreamPartitioner1.3 继承关系图 2.分区策略2.1 GlobalPartitioner2.2 ShufflePartitioner2.3 BroadcastPartitioner2.4 RebalancePartitioner2…

树莓派4B Ubuntu20.04 Python3.9安装ROS踩坑记录

问题描述 在使用sudo apt-get update命令更新时发现无法引入apt-pkg,使用python3 -c "import apt_pkg"发现无法引入,应该是因为:20.04的系统默认python是3.8,但是我换成了3.9所以没有编译文件,于是使用sudo update-alte…

three.js如何实现简易3D机房?(四)点击事件+呼吸灯效果

接上一篇: three.js如何实现简易3D机房?(三)显示信息弹框/标签:http://t.csdnimg.cn/5W2wA 目录 八、点击事件 1.实现效果 2.获取相交点 3.呼吸灯效果 4.添加点击事件 5.问题解决 八、点击事件 1.实现效果 2.…

蓝桥杯大赛软件python赛道真题:蛇形填数

真题链接:https://www.lanqiao.cn/problems/594/learning/ 题目描述: 本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。 如下图所示,小明用从1开始的正整数“蛇形”填充无限大的矩阵。 1 2 6 …

【打工日常】使用docker部署个人实时在线文档协助编辑器

一、Etherpad介绍 Etherpad是一个高度可定制的开源在线编辑器,提供真正实时的协作编辑。放在自己的服务器里面,可以更大程度的保护自己工作的隐私,并且Etherpad允许您实时协作编辑文档,就像在浏览器中运行的实时多人编辑器一样这样…

SpringBoot轻松搞定接口防抖(防重复提交)

大家好,我是月夜枫,作为一名合格的码农,在开发后端Java业务系统,包括各种管理后台和小程序等。在这些项目中,我设计过单/多租户体系系统,对接过许多开放平台,也搞过消息中心这类较为复杂的应用&…

基于Java的高校实验室管理系统(Vue.js+SpringBoot)

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、研究内容2.1 实验室类型模块2.2 实验室模块2.3 实验管理模块2.4 实验设备模块2.5 实验订单模块 三、系统设计3.1 用例设计3.2 数据库设计 四、系统展示五、样例代码5.1 查询实验室设备5.2 实验放号5.3 实验预定 六、免责说明 一、摘…

【STM32】HAL库 CubeMX 教程 --- 通用定时器 TIM2 定时

实验目标: 通过CUbeMXHAL,配置TIM2,1s中断一次,闪烁LED。 一、常用型号的TIM时钟频率 1. STM32F103系列: 所有 TIM 的时钟频率都是72MHz;F103C8不带基本定时器,F103RC及以上才带基本定时器。…

[BUG] docker运行Java程序时配置代理-Dhttp.proxyHost后启动报错

[BUG] docker运行Java程序时配置代理-Dhttp.proxyHost后启动报错 bug现象描述 版本:2.0.4(客户端和服务端都是) 环境:私有云环境,只有少量跳板机器可以访问公网,其他机器均通过配置代理方式访问公网 bug现…

9、Linux-安装JDK、Tomcat和MySql

目录 一、安装JDK 1、传输JDK文件(.tar.gz) 2、解压 3、备份环境变量 4、配置环境变量 5、重新加载环境变量 6、验证(java -version) 二、安装Tomcat 1、传输文件,解压到/usr/local 2、进入Tomcat的bin目录 …

[PyQt5]PyQt5连接MYSQL时显示Driver not loaded解决方案

在第一次用PyQt5的 QSqlDatabase.addDatabase 连接mysql的时候,可能会出现Driver not loaded的情况,如下: from PyQt5.QtSql import QSqlQuery, QSqlDatabase from PyQt5.QtWidgets import QApplication import sysapp QApplication(sys.ar…

GO语言接入支付宝

GO语言接入支付宝 今天就go语言接入支付宝写一个教程 使用如下库,各种接口较为齐全 "github.com/smartwalle/alipay/v3"先简单介绍下加密: 试想,当用户向支付宝付款时,若不进行任何加密,那么黑客就可以任…

【杂记】IDEA和Eclipse如何查看GC日志

1.Eclipse查看GC日志 1.1 右击代码编辑区 -> Run As -> Run Configurations 1.2 点击Arguments栏 -> VM arguments:区域填写XX参数 -> Run 1.3 控制台输出GC详细日志 2.IDEA查看GC日志 2.1 鼠标右击代码编辑器空白区域,选择Edit 项目名.main()... 2.…

模型驱动软件开发

MDE 模型驱动工程(MDE, Model-Driven Engineering)是软件工程的一个分支,它将模型与建模拓展到软件开发的所有方面,形成一个多维建模空间,从而将工程活动建立在这些模型的映射和转换之上。[1] MDE的基本原则是将模型视…

实验二(一):IPV4编址及IPV4路由基础实验

一实验介绍 1.关于本实验 IPv4( Internet Protocol Version 4)是 TCP/IP 协议族中最为核心的协议之一。 它工作在 TCP/IP参考模型的网际互联层,该层与 OSI参考模型的网络层相对应。 网络层提供了无连接数据传输服务,即网络在发送分组时不需要先建立连…

学会与自己和解

最近半年来,在学习智能驾驶方面的技术,但有些文档和资料不方便分享,有一段时间没有写 写文档啦!那就写一些技术之外的东西吧,最近也一直在学心理建设,学会与自己和解 行动 唯有自己先行动起来,…

使用Migration升级数据库

使用Migration升级数据库 package com.tiger.room2;import android.content.Context;import androidx.annotation.NonNull; import androidx.room.Database; import androidx.room.Room; import androidx.room.RoomDatabase; import androidx.room.migration.Migration; impo…

Jmeter---非GUI命令行的执行生成报告、使用ant插件执行接口测试脚本生成报告

非GUI命令行的执行 1. 在jmx后缀的文件目录下打开命令行 2. 运行: jmeter -n -t filename.jmx(-n : 非GUI的方式 -t: 指定需要执行的脚本) 生成jtl报告 运行: jmeter -n -t filename.jmx -l result_filename.jtl 生成html报…