【ACL2024】基于长尾检索知识增强的大语言模型

news2024/11/13 16:09:06

近日,阿里云人工智能平台PAI与阿里集团安全部内容安全算法团队、华东师范大学何晓丰教授团队合作,在自然语言处理顶级会议ACL2024上发表论文《On the Role of Long-tail Knowledge in Retrieval Augmented Large Language Models》,论文主题为长尾知识检索增强的大语言模型。通过将问题识别为普通可回答和长尾两种性质,让大模型针对性的对长尾问题进行检索文档增强。对于普通可回答的用户提问可以直接通过大模型回答,而不需要进行文档检索增强,从而能增强大模型处理不同类型用户提问的效率。

背景

尽管大型语言模型展现了卓越的性能,在应对诸如产生幻象、依赖陈旧信息及进行不透明且难以追溯的推理过程等难题时仍面临挑战。作为应对这些局限性的新兴策略,检索增强生成(RAG)技术通过融入外部知识数据库,显著增强了模型在处理知识要求高的任务时的精确度与可靠性,确保了知识的及时更新与特定领域信息的融合。RAG体系本质上结合了大型预训练语言模型的内在知识与大规模动态外部数据资源,其核心包括三个步骤:Retrieval、Augmentation和Generation。这一机制利用外部知识库检索最新信息,以此“增强”模型能力,进而生成更为精准的答案,通过在生成内容前查询并整合外部来源信息以构造更加全面的输入提示,极大提升了生成结果的准确度与关联性。然而,当前RAG方法只专注于通过不加区别地使用检索到的信息增强查询来提高LLM的响应质量,而很少关注LLM真正需要什么类型的知识才能更准确地回答原始查询。

大模型查询中不同知识类型对提升性能和效率的影响

为了进一步解决RAG在LLM回答时遇到的回答效率和检索知识源的问题,提出对问题查询类型进行识别算法来提升LLM推理的效率是必要的。我们将大模型提问所需知识进行了分类,包含了长尾知识,普通知识和两者都有的知识。将该查询输入到大模型中进行区分,发现对于大模型来说,其实不需要将所有对应的知识都召回,只需要对已有的长尾Query部分进行知识召回增强大模型理解能力即可,大模型的性能和处理查询的效率也会快很多。

算法概述

长尾检测指标ECE

之前传统的工作依赖文本频率来判断实例是否长尾。因此,低频文本往往被归类为长尾类。对于LLM来说,计算以前未知用户查询的文本频率难度较大。预期校准误差(ECE)为测量“长尾”提供了新的视角。ECE测量模型的估计概率与真实(观测)概率的匹配程度。在ECE的计算中,将每个样例的置信度分配到一个特定的区间内,由模型的预测概率得到。准确度由预测标签与实际标签真值的比较确定。每个样本的置信度和准确度之间的绝对差值表示校准度。整个数据集的期望校准度表明了模型的可靠性。形式上,ECE可表述为:

其中i表示第i个bin,N为数据集的样例总数,acc(b_i) 和conf(b_i)表示bin的准确度和置信度,n{b_i}为bin的实例数,B为区间[0,1]内的bin数。在我们的模型中,由于ECE是计算机视觉领域针对长尾判断提出的,我们将ECE扩展到自然语言处理领域,特别是LLM文本生成场景。

基于度量的长尾检测

我们用MENTOR和平均预测概率对传统的ECE公式进行了转换:

  • ECE的准确性是衡量预测与标准答案之间的一致性。在生成场景中,我们使用METEOR来衡量预测候选和标准答案之间的一致性和相关性。

  • ECE的置信度是模型本身产生的预测概率。同样,我们使用LLMs输出的平均token概率。

此外,为了增强长尾检测的度量能力,我们进一步集成了以下两个因素,有助于我们进一步分离常见sample和长尾sample之间的关系:

  • 平均词频,因为词频是长尾文本的基本指标。

  • 利用总数据集的平均梯度和特定sample梯度之间的点积来评估差异。该操作是因为长尾实例的梯度与整个数据集的平均梯度相差很大,反之亦然。

从上述算法分析,我们得出GECE指标如下:

其中pred和ref分别表示生成的文本和引用的基本事实。M(pred,ref)是METEOR得分,p(t_i)表示由LLM产生的第i个token的概率,n是token序列长度。 对于分母部分,α是平均词频。我们可以看到,长尾实例的α值较小,因此其倒数将较大。较大的GECE值意味着更高的长尾识别准确度。例如,我们将GECE应用于NQ数据集“谁被评为2014年度非洲足球先生”的查询,值为34.6。而对于长尾、更专业的NQ查询“谁在歌剧魅影中扮演过拉乌尔”,GECE值为112.7。

RAG Pipeline扩展

作为对普通RAG pipeline的扩展,我们只从数据源检索与长尾查询相关的文档,而不考虑通用sample。检索过程由密集检索器实现,以检索相关的WikiPedia文档。对于长尾实例,我们将与调用的相关文档连接的查询输入LLMs以获得答案。对于通用sample,我们只将查询本身输入到LLMs。

算法评测

为了更好的评估基于该长尾数据识别增强的RAG方法,我们选取了多个知识覆盖场景的公开数据集进行评测,模型效果如下图所示,同时,我们对GECE只针对长尾实体进行识别进行了充分的时间效率评估,效果如下。

我们发现在相关baseline算法基础上,加入GECE扩展模块不仅仅提高了在各个知识密集型数据集上的效果,同时由于过滤掉一些涉及通用知识的Query,模型执行数据的速度也随之提高。

参考文献

  • Akari Asai, Zeqiu Wu, Yizhong Wang, Avirup Sil, and Hannaneh Hajishirzi. 2023. Self-rag: Learning to retrieve, generate, and critique through self-reflection. CoRR, abs/2310.11511

  • Satanjeev Banerjee and Alon Lavie. 2005. METEOR: an automatic metric for MT evaluation with improved correlation with human judgments. In ACL, pages 65–72.

  • Zhangyin Feng, Xiaocheng Feng, Dezhi Zhao, Maojin Yang, and Bing Qin. 2023. Retrieval-generation synergy augmented large language models. CoRR, abs/2310.05149.

  • Gautier Izacard, Patrick S. H. Lewis, Maria Lomeli, Lucas Hosseini, Fabio Petroni, Timo Schick, Jane Dwivedi-Yu, Armand Joulin, Sebastian Riedel, and Edouard Grave. 2023. Atlas: Few-shot learning with retrieval augmented language models. J. Mach. Learn. Res., pages 251:1–251:43.

  • Nikhil Kandpal, Haikang Deng, Adam Roberts, Eric Wallace, and Colin Raffel. 2023. Large language models struggle to learn long-tail knowledge. In ICML, pages 15696–15707.

论文信息

论文名字:On the Role of Long-tail Knowledge in Retrieval Augmented Large Language Models

论文作者:李东阳,严俊冰,张涛林,汪诚愚,何晓丰,黄龙涛,薛晖,黄俊

论文pdf链接:https://arxiv.org/pdf/2406.16367

阿里云人工智能平台PAI长期招聘研究实习生。团队专注于深度学习算法研究与应用,重点聚焦大语言模型和多模态AIGC大模型的应用算法研究和应用。简历投递和咨询:chengyu.wcy@alibaba-inc.com

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

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

相关文章

爆火游戏《黑神话:悟空》研发背后有哪些故事?

极狐GitLab 是 GitLab 在中国的发行版,专门面向中国程序员和企业提供企业级一体化 DevOps 平台,用来帮助用户实现需求管理、源代码托管、CI/CD、安全合规,而且所有的操作都是在一个平台上进行,省事省心省钱。可以一键安装极狐GitL…

美团的测试面试题,真的很难吗?

年前,我的一个粉丝留言给我说,他在面试美团的自动化测试岗的时候,不幸挂掉了。 越想越可惜,回想面试经过,好好总结了几个点,发现面试没过的主要原因是在几个关键的问题没有给到面试官想要的答案 美团的面…

寻访中国100家.NET中大企业 —— 第二站:苏州行

一:事情起因 在.NET圈里混了十多年,相信有不少人知道我专注于玩 .NET高级调试,如今技术上的硬实力还是能够解决市面上的一些疑难杂症,但软实力却在另一个极端,如(人际交往,人情事故&#xff09…

[RCTF2015]EasySQL1

打开题目 点进去看看 注册个admin账户,登陆进去 一个个点开看,没发现flag 我们也可以由此得出结论,页面存在二次注入的漏洞,并可以大胆猜测修改密码的源代码 resoponse为invalid string的关键字是被过滤的关键字,Le…

氟化工特氟龙精馏装置:PFA氟化氢反应装置的应用

精馏装置是进行精馏的一种塔式气液接触装置。利用混合物中各组分具有不同的挥发度,即在同一温度下各组分的蒸气压不同这一性质,使液相中的轻组分(低沸物)转移到气相中。 实验精馏装置的组成 实验精馏装置通常由以下几部分组成&am…

Linux2.6设备驱动开发

一:Linux2.6驱动设备开发的特点 1:首先是属于字符型设备注册的方法之一 这种开发接口是在Linux2.6引入的,之前的版本不支持这种开发方式,也是目前最标准的开发方式。 2:Linux2.6的设备开发 不再去限制设备号&#xf…

(javaweb)SpringBootWeb案例(毕业设计)案例--部门管理

目录 1.准备工作 2.部门管理--查询功能 3.前后端联调 3.部门管理--新增功能 1.准备工作 mapper数据访问层相当于dao层 根据页面原型和需求分析出接口文档--前后端必须遵循这种规范 大部分情况下 接口文档由后端人员来编写 前后端进行交互基于restful风格接口 http的请求方式…

TypeScript学习笔记(二)——TypeScript 高级类型

目录 1. class 类 1.1 class 关键字的基本使用 1.2 类继承 1.3 类成员可见性 1.4 类成员只读修饰符 2. 类型兼容性 2.1 类型兼容性 2.2 接口兼容性 2.3 函数兼容性 3. 交叉类型 4. 泛型 4.1 创建泛型函数 4.2 泛型约束 4.3 多个泛型的类型变量约束 4.4 泛型接口…

【深度学习入门项目】基于支持向量机的手写数字识别

目录 导入必要的包1. 数据集2. 数据处理3. 训练过程4. 输出结果完整代码 本项目使用SVM训练模型,用于预测手写数字图片。 导入必要的包 numpy: 这个库是Python中常用的数学计算库。在这个项目中,我使用numpy来处理图像数据,将图像数据转换为…

FPGA开发——DS18B20读取温度并且在数码管上显示

一、简介 在上一篇文章中我们对于DS18B20的相关理论进行了详细的解释,同时也对怎样使用DS18B20进行了一个简单的叙述。在这篇文章我们通过工程来实现DS18B20的温度读取并且实现在数码管伤显示。 1、基本实现思路 根据不同时刻的操作,我们可以使用一个状…

基于vue框架的班级网站的设计与实现vg66m(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。

系统程序文件列表 项目功能:班级,学生,班级活动,班级相册,班级开支,活动记录 开题报告内容 基于Vue框架的班级网站设计与实现 开题报告 一、引言 随着互联网技术的飞速发展,网络已经成为人们日常生活中不可或缺的一部分。在教育领域,班级…

大白话解析:深入浅出大模型RAG模块全解析

文章目录 什么是 RAG? 技术交流&资料通俗易懂讲解大模型系列 RAG模块化 什么是模块化RAG? 索引模块 块优化 滑动窗口从小到大元数据附加 结构化组织 层次化索引知识图谱文档组织 预检索模块 查询扩展 多查询子查询CoVe 查询转换 重写HyDE 查询路由…

TON链上游戏项目开发基本要求及模式创建与海外宣发策略

TON(The Open Network)是由Telegram开发的区块链平台,以其高速、低延迟、和高扩展性吸引了大量开发者和项目方。TON链上游戏项目作为一个新兴领域,结合了区块链技术和游戏产业,为用户提供了全新的游戏体验和经济激励。…

精益生产咨询:为企业量身定制的高效能蜕变计划!——张驰咨询

在当今这个快速变化、竞争激烈的市场环境中,企业如何保持持续的竞争优势,提高生产效率,降低成本,同时又能快速响应市场需求,成为了每一个企业家必须面对的重大课题。精益生产(Lean Production)作…

第5节:Elasticsearch核心概念

我的后端学习笔记大纲 我的ElasticSearch学习大纲 1.Lucene和Elasticsearch的关系: 1.Lucene:最先进、功能最强大的搜索库,直接基于lucene开发,非常复杂,api复杂2.Elasticsearch:基于lucene,封装了许多luc…

跳槽?面试软件测试需要掌握的知识你Get了吗

想从事软件测试相关的工作,立志成为一名优秀的软件测试工程师。 一名优秀的软件测试工程师,需要扎实的专业基础,包括测试相关技术、编程技能、数据库知识、计算机网络、以及操作系统等等。对于没有测试经验的应届生求职者来说,面…

SpringBoot项目部署时application.yml文件的加载优先级和启动脚本

文章目录 application.yml文件的加载优先级(由高到低)第一级命令行参数第二级Jar包同级目录 /config第三级Jar包同级目录第四级classpath 下的/config第五级classpath 根路径/总结: logback.xml 文件加载顺序当application.yml 和 bootstrap.yml 同时存在时java jar…

淘宝天猫详情接口API:实现轻松购物,探索最具性价比的商品

随着电子商务的蓬勃发展,网络购物已经成为现代人日常生活中的重要部分。在这个浩瀚的电商海洋中,淘宝和天猫无疑是最为耀眼的两大平台。然而,如何在众多的商品中挑选出性价比最高的产品?淘宝天猫详情接口API为您提供了解决方案。 …

基于vue框架的班级管理系统3pdep(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。

系统程序文件列表 项目功能:学生,班级事务,班级,成绩信息,请假,销假,班级信息,教师 开题报告内容 基于Vue框架的班级管理系统 开题报告 一、引言 随着教育信息化进程的加快,学校管理工作逐渐从传统的纸质化、人工化向数字化、智能化转变。班级作为学…

Python与自动化测试:提高软件质量和稳定性

在软件开发过程中,自动化测试是提高软件质量和稳定性的重要手段之一。Python作为一种简洁而强大的编程语言,为自动化测试提供了丰富的工具和库。本文将介绍几个常见的自动化测试案例,并提供详细的Python代码示例,帮助您更好地理解…