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

news2024/11/15 7:08:21

原文地址: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.coloradmin.cn/o/1516136.html

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

相关文章

Qt学习--自定义命名空间

假设我们要创建一个命名空间来包含与圆形相关的功能。我们可以命名这个命名空间为 Cir : 在这个头文件中,我们定义了一个名为 Cir 的命名空间,其中包含了计算圆的面积和周长的函数,以及 圆周率常量 PI 。 使用命名空间 在…

软考73-上午题-【面向对象技术2-UML】-UML中的图4

一、构件图(组件图) 1-1、构件图的定义 展现了,一组构件之间的组织和依赖。 构件图专注于系统的静态实现图。 构件图与类图相关,通常把构件映射为一个、多个类、接口、协作。 【回顾】: 类图展示了一组对象、接口、…

学生时期学习资源同步-1 第一学期结业考试题4

原创作者:田超凡(程序员田宝宝) 版权所有,引用请注明原作者,严禁复制转载

【node版本问题】运行项目报错 PostCSS received undefined instead of CSS string

最近该项目没有做任何修改,今天运行突然跑不起来报错了 PostCSS received undefined instead of CSS string 【原因】突然想起来期间有换过 node 版本为 16.17.1 【解决】将 node 版本换回之前的 14.18.0 就可以了

【Java - 框架 - Mybatis】(02) SpringBoot整合Mybatis操作Mysql - 快速上手

“SpringBoot"整合"Mybatis"操作"Mysql” - 快速上手; 环境 Java版本"1.8.0_202";Spring Boot版本"2.5.9";Windows 11 专业版_22621.2428;IntelliJ IDEA 2021.1.3(Ultimate Edition)&a…

VC++ BitBlt函数学习

1 BitBlt BitBlt函数执行与像素矩形相对应的颜色数据的位块传输,从指定的源设备上下文传输到目标设备上下文。 把位块从一个DC传到另一个DC; VC单文档工程,写3句代码如下; void CDeskdcView::OnDraw(CDC* pDC) {CDeskdcDoc* pDoc = GetDocument();ASSERT_VALID(pDoc);//…

mac输入su命令报错如何重置密码

diannao1xiejiandeMacBook-Air ~ % su Password: su: Sorry输入 sudo passwd 命令重置密码即可。

Seata 2.x 系列【10】回滚日志表 undo_log

有道无术,术尚可求,有术无道,止于术。 本系列Seata 版本 2.0.0 本系列Spring Boot 版本 3.2.0 本系列Spring Cloud 版本 2023.0.0 源码地址:https://gitee.com/pearl-organization/study-seata-demo 文章目录 1. 概述2. 表语句…

[抽象]工厂模式([Abstract] Factory)——创建型模式

[抽象]工厂模式——创建型模式 什么是抽象工厂? 抽象工厂模式是一种创建型设计模式,让你能够保证在客户端程序中创建一系列有依赖的对象组时,无需关心这些对象的类型。 具体来说: 对象的创建与使用分离: 抽象工厂模…

手把手带你实现大模型检索增强生成RAG(一)——数据清洗准备

首先,需要整理一大堆可以用来检索的文本数据,这些数据可以是网页、论文、报告、电影脚本、电视剧脚本等等。这些数据可以是原始的文本数据,也可以是经过清洗、处理过的文本数据。 作为IT打工仔,我从二道贩子处购入一本软考秘籍。…

【Numpy】基础学习:一文了解np.expand_dims的作用、用法

【Numpy】基础学习:一文了解np.expand_dims的作用、用法 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程👈 希望…

电脑闹钟软件哪个好用,电脑闹钟软件推荐助你高效工作

在这个快节奏的社会中,时间对于每个人来说都是宝贵的。如何有效利用时间,提高工作效率成为了现代人所面临的重要问题之一。而电脑闹钟软件作为一款实用的工作助手,可以提醒我们按时完成任务,规划好时间,使我们更加高效…

STC89C52单片机 启动!!!(一)

跑马灯实现 直接上代码 #include<regx52.h> sbit D1P2^0; sbit D2P2^1; sbit D3P2^2; sbit D4P2^3; sbit D5P2^4; sbit D6P2^5; sbit D7P2^6; sbit D8P2^7; void delay(int num){while(num--){} } void led_running(){//从第1盏灯到第8盏灯依次点亮D10;delay(40000);D2…

解决方案:淘宝NPM镜像证书到期导致的安装Node失败

博主猫头虎的技术世界 &#x1f31f; 欢迎来到猫头虎的博客 — 探索技术的无限可能&#xff01; 专栏链接&#xff1a; &#x1f517; 精选专栏&#xff1a; 《面试题大全》 — 面试准备的宝典&#xff01;《IDEA开发秘籍》 — 提升你的IDEA技能&#xff01;《100天精通鸿蒙》 …

宏集案例 | 风电滑动轴承齿轮箱内多点温度采集与处理

前言 风力发电机组中的滑动轴承齿轮箱作为关键的传动装置&#xff0c;承担着将风能转化为电能的重要角色。齿轮箱内多点温度的实时监测可以有效地预防设备故障和性能下降。实时监测齿轮箱内多点温度可以有效地预防设备故障和性能下降。 为了确保风力发电机组的安全稳定运行&a…

HarmonyOS NEXT应用开发之深色模式适配

介绍 本示例介绍在开发应用以适应深色模式时&#xff0c;对于深色和浅色模式的适配方案&#xff0c;采取了多种策略如下&#xff1a; 固定属性适配&#xff1a;对于部分组件的颜色属性&#xff0c;如背景色或字体颜色&#xff0c;若保持不变&#xff0c;可直接设定固定色值或…

数组名结合指针的面试题的讲解

笔试题 第一题&#xff1a; 已知条件&#xff1a; 已知p为结构体指针变量&#xff0c;值为0x100000&#xff0c;并且结构体的大小为20字节&#xff0c;并且打印格式均为%p&#xff0c;%p不会在乎正负数&#xff0c;它会以补码的形式直接打印&#xff0c;0x1为16进制的1。 第一问…

[C++核心编程](九):类和对象——多态**

目录 多态的分类 多态的原理剖析 多态的优点 纯虚函数和抽象类 虚析构和纯虚析构 多态是C面向对象三大特性之一 多态的分类 静态多态 -函数重载和运算符重载属于静态多态&#xff0c;复用函数名 -函数地址早绑定-编译阶段确定函数地址 动态多态 -派生类和虚函数实现运行…

Docker达梦安装

拷贝安装包到 /soft目录下&#xff0c;执行以下命令导入安装包&#xff1a; docker load -i dm8_20230808_rev197096_x86_rh6_64_single.tar 结果显示如下&#xff1a; 启动容器 镜像导入后&#xff0c;使用 docker run 启动容器&#xff0c;启动命令如下&#xff1a; doc…

如何使用vue定义组件之——子组件调用父组件数据

1.定义父子模板template <div class"container"><my-father></my-father><my-father></my-father><my-father></my-father><!-- 此处无法调用子组件&#xff0c;子组件必须依赖于父组件进行展示 --><!-- <my-…