【Arxiv 大模型最新进展】PEAR: 零额外推理开销,提升RAG性能!(★AI最前线★)

news2025/4/17 4:13:36

【Arxiv 大模型最新进展】PEAR: 零额外推理开销,提升RAG性能!(★AI最前线★)


🌟 嗨,你好,我是 青松 !

🌈 自小刺头深草里,而今渐觉出蓬蒿。


NLP Github 项目推荐:

  • 【AI 藏经阁】:https://gitee.com/fasterai/ai-e-book

    介绍:该仓库主要分享了数百本 AI 领域电子书

  • 【AI 算法面经】:fasterai/nlp-interview-handbook#面经

    介绍:该仓库一网打尽互联网大厂NLP算法面经,算法求职必备神器

  • 【大模型(LLMs)面试笔记】:https://gitee.com/fasterai/nlp-interview-handbook

    介绍:该仓库汇总了 NLP 算法工程师高频面题,适合大模型初学者和正在准备面试的小伙伴希望能帮助各位同学缩短面试准备时间,不错过金三银四涨薪窗口,迅速收获心仪的Offer 🎉🎉🎉


文章目录

  • PEAR: Position-Embedding-Agnostic Attention Re-weighting Enhances Retrieval-Augmented Generation with Zero Inference Overhead
      • 定位抑制头
      • 重加权系数学习
      • 实验结果


PEAR: Position-Embedding-Agnostic Attention Re-weighting Enhances Retrieval-Augmented Generation with Zero Inference Overhead

作者Tao Tan, Yining Qian, Ang Lv, Hongzhan Lin, Songhao Wu, Yongbo Wang, Feng Wang, Jingtong Wu, Xin Lu, Rui Yan

单位Gaoling School of Artificial Intelligence, Renmin University of China, Southeast University, Ant Group

下图给出此文的整体逻辑框架。首先,对文章进行一句话总结,然后简要介绍研究内容、研究动机、技术动机、解决方案以及优势与潜力,以便读者快速了解文章脉络。

本文研究的是如何在RAG任务中提升模型对上下文的感知能力。现有增强上下文感知的方法存在效率低下、推理时产生时间或内存开销,且很多方法针对特定位置嵌入等问题。研究发现部分注意力头会抑制上下文信息流动,影响 LLMs 的上下文感知能力,因此本文提出了PEAR方法,通过削弱这种抑制机制,提高 RAG 任务的性能。该方法首先定位上下文感知抑制头,然后对这些抑制头的输出乘以可学习的系数来削弱其影响。

具体地,PEAR方法分为两个阶段,定位抑制头和重加权系数学习,以下是详细介绍。

定位抑制头

  1. 任务输入

对于每个输入样本,创建一个长度为 n n n 的序列 { x 1 , . . . , x n } \{{x_1,...,x_n}\} {x1,...,xn},其中 x i x_i xi 是从词汇表中随机采样的标记。然后将此序列重复,得到输入样本 { x 1 , . . . , x 2 n } \{x_1,...,x_{2n}\} {x1,...,x2n},其中 x i = x i + n ( i ∈ [ 1 , n ] ) x_i = x_{i+n} (i \in [1, n]) xi=xi+n(i[1,n]) 。若在位置 n + i + 1 n + i + 1 n+i+1 时,输出logits最高的标记是 x i x_i xi ,则认为模型成功执行了代理任务。

注:这是因为在语义无意义的上下文中,模型倾向于检查序列中的最后几个标记是否先前出现过,并复制它们最后一次出现的后一个Token作为输出。这种处理倾向使得模型在面对这种重复的输入结构时,能够尝试按照这种模式进行预测。

  1. 抑制头定位

构建输入序列,沿着序列维度平均每个注意力头的输出得到一个平均向量作为干预向量,然后替换正常运行的 A n − 1 ( l , h ) A_{n - 1}^{(l,h)} An1(l,h) ,这个过程视为削弱该头的影响,如图1所示。

接下来计算指标为logits差异,对于第 l l l 层的第 h h h 个注意力头,计算:
Δ π ( l , h ) = π ~ 2 n ( l , h ) [ x n − 1 ] π 2 n [ x n − 1 ] − 1 \Delta\pi^{(l,h)}=\frac{\tilde{\pi}_{2n}^{(l,h)}[x_{n - 1}]}{\pi_{2n}[x_{n - 1}]}-1 Δπ(l,h)=π2n[xn1]π~2n(l,h)[xn1]1
,其中 π 2 n [ x n − 1 ] \pi_{2n}[x_{n - 1}] π2n[xn1] 是正常运行时位置 2 n 2n 2n 选择 x n − 1 x_{n - 1} xn1 的logits, π ~ 2 n ( l , h ) [ x n − 1 ] \tilde{\pi}_{2n}^{(l,h)}[x_{n - 1}] π~2n(l,h)[xn1] 是干预 A ( l , h ) A^{(l,h)} A(l,h) 后的logits。该指标值越高,表明 A ( l , Λ ) A^{(l,\Lambda)} A(l,Λ) 的抑制效果越强。使用不同的 n n n 值重复实验取平均值以减轻上下文长度的偏差,最后将前 K K K 个最负面影响的头确定为抑制头

重加权系数学习

在标准的多注意力头机制中,所有注意力头的输出以相等的权重聚合。本文提出将抑制头集合中的每个头的输出乘以一个可学习的标量,称为重新加权系数,以削弱抑制头的影响,如图2所示。

为了优化这些重新加权系数,冻结LLM的原始参数,仅训练加权系数以最小化代理任务上的损失。损失仅在序列的后半部分计算,即 L = − ∑ i = n 2 n − 1 l o g ( p ( x i + 1 ∣ x 1 : i ) ) \mathcal{L}=-\sum_{i=n}^{2n - 1}log(p(x_{i + 1}|x_{1:i})) L=i=n2n1log(p(xi+1x1:i)),目的是增强基于上下文的检索能力而非预测下一个标记。
在下游RAG任务中,重新加权系数与任务无关且保持固定。对于每个LLM,只需通过代理任务对抑制头进行一次优化。因此,PEAR在下游RAG任务的推理过程中引入零额外开销。此外,重新加权系数的学习与LLM架构无关,使该方法与各种位置编码算法兼容。

实验结果

在不同RAG任务上的表现如图3所示,推理时间对比如图4所示,表明本方法在引入零额外开销的情况下提升了RAG任务的性能。

图5是PEAR方法在不同位置编码上的表现,表明PEAR独立于位置编码,适配于各种模型结构。


  • 原文链接: https://arxiv.org/pdf/2409.19745

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

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

相关文章

Linux-C/C++《C/9、信号:基础》(基本概念、信号分类、信号传递等)

本章将讨论信号,虽然信号的基本概念比较简单,但是其所涉及到的细节内容比较多,所以本章篇幅也会相对比较长。事实上,在很多应用程序当中,都会存在处理异步事件这种需求,而信号提供了一种处理异步事件的方法…

【工具插件类教学】实现运行时2D物体交互的利器Runtime2DTransformInteractor

目录 ​编辑 1. 插件核心功能 1.1 基础变换操作 1.2 高级特性 2. 安装与配置 2.1 导入插件 2.2 配置控制器参数 2.3 为物体添加交互功能 3. 使用示例 3.1 基础操作演示 3.2 多选与批量操作 3.3 自定义光标与外观 4. 高级配置技巧 4.1 动态调整包围框控件尺寸 4.…

OpenCV形态学操作

1.1. 形态学操作介绍 初识: 形态学操作是一种基于图像形状的处理方法,主要用于分析和处理图像中的几何结构。其核心是通过结构元素(卷积核)对图像进行扫描和操作,从而改变图像的形状和特征。例如: 腐蚀&…

【Ubuntu】GPU显存被占用,但显示没有使用GPU的进程

文章目录 一、问题描述二、解决方案2.1 寻找问题进程2.2 尝试杀死相关进程2.3 投放核弹,一键全杀2.4 再次查看GPU使用情况 参考资料 一、问题描述 今天使用服务器的时候发现gpu被占了很多内存,但是使用 nvidia-smi 命令并没有发现占这么多显存的进程&am…

通义灵码AI程序员

通义灵码是阿里云与通义实验室联合打造的智能编码辅助工具,基于通义大模型技术,为开发者提供多种编程辅助功能。它支持多种编程语言,包括 Java、Python、Go、TypeScript、JavaScript、C/C、PHP、C#、Ruby 等 200 多种编码语言。 通义灵码 AI…

以ChatGPT为例解析大模型背后的技术

目录 1、大模型分类 2、为什么自然语言处理可计算? 2.1、One-hot分类编码(传统词表示方法) 2.2、词向量 3、Transformer架构 3.1、何为注意力机制? 3.2、注意力机制在 Transformer 模型中有何意义? 3.3、位置编…

Redis-缓存过期和内存淘汰

缓存过期&&内存淘汰 过期删除如何设置过期时间判断key是否过期过期删除策略有哪些定时删除惰性删除定期删除Redis过期删除策略 内存淘汰策略如何设置Redis最大运行内存Redis内存淘汰策略有哪些不进行数据淘汰进行数据淘汰的策略设置了过期时间的数据中进行淘汰所有数据…

七星棋牌全开源修复版源码解析:6端兼容,200种玩法全面支持

本篇文章将详细讲解 七星棋牌修复版源码 的 技术架构、功能实现、二次开发思路、搭建教程 等内容,助您快速掌握该棋牌系统的开发技巧。 1. 七星棋牌源码概述 七星棋牌修复版源码是一款高度自由的 开源棋牌项目,该版本修复了原版中的多个 系统漏洞&#…

第六届计算机信息和大数据应用国际学术会议(CIBDA 2025)

重要信息 大会官网:www.ic-cibda.org(了解会议,投稿等) 大会时间:2025年3月14-16日 大会地点:中国-武汉 简介 第六届计算机信息和大数据应用(CIBDA 2025)将于2025年3月14-16日在中国…

PyTorch 深度学习框架中 torch.cuda.empty_cache() 的妙用与注意事项

🍉 CSDN 叶庭云:https://yetingyun.blog.csdn.net/ 在使用 PyTorch 进行深度学习模型训练与调优过程中,torch.cuda.empty_cache() 方法作为一种高效工具被广泛采用;但其正确应用要求充分理解该方法的功能及最佳实践。下文将对该方…

快速入门——Vue框架快速上手

学习自哔哩哔哩上的“刘老师教编程”,具体学习的网站为:8.Vue框架快速上手_哔哩哔哩_bilibili,以下是看课后做的笔记,仅供参考。 第一节:前端环境准备 编码工具VSCode【www.code.visualstudio.com】/WebStorm也可&am…

zookeeper集群配置

配置 一、配置myid文件 # 进入解压好的文件夹下面 touch myid vim myid # master节点写0,slave1节点写1,slave2节点写2二、配置zoo.cfg文件 1.在master节点编辑zookeeper配置文件 # 进入解压好的文件夹下面 cd conf/ cp zoo_sample.cfg zoo.cfg vim …

掌握.NET Core后端发布流程,如何部署后端应用?

无论你是刚接触.NET Core的新手还是已有经验的开发者,在这篇文章中你将会学习到一系列实用的发布技巧与最佳实践,帮助你高效顺利地将.NET Core后端应用部署到生产环境中 目录 程序发布操作 Docker容器注册表 文件夹发布 导入配置文件 网站运行操作 …

华为昇腾920b服务器部署DeepSeek翻车现场

最近到祸一台HUAWEI Kunpeng 920 5250,先看看配置。之前是部署的讯飞大模型,发现资源利用率太低了。把5台减少到3台,就出了他 硬件配置信息 基本硬件信息 按照惯例先来看看配置。一共3块盘,500G的系统盘, 2块3T固态…

使用Python添加、读取和删除Word文档属性

在Python中处理Word文档时,对文档属性进行操作是一项重要的任务。文档属性主要分为内置属性(如标题、作者等)和自定义属性(用户根据自身需求定义的属性)。合理地管理这些属性,能够提升文档管理效率、优化信…

Day15-后端Web实战-登录认证——会话技术JWT令牌过滤器拦截器

目录 登录认证1. 登录功能1.1 需求1.2 接口文档1.3 思路分析1.4 功能开发1.5 测试 2. 登录校验2.1 问题分析2.2 会话技术2.2.1 会话技术介绍2.2.2 会话跟踪方案2.2.2.1 方案一 - Cookie2.2.2.2 方案二 - Session2.2.2.3 方案三 - 令牌技术 2.3 JWT令牌2.3.1 介绍2.3.2 生成和校…

VSCode运行Go程序报错:Unable to process `evaluate`: debuggee is running

如果使用默认的VSCode的服务器来运行Go程序,那么使用fmt.Scan函数输入数据的时候就会报错,我们需要修改launch.json文件,将Go程序运行在shell终端上。 main.go package mainimport "fmt"func main() {var n intfmt.Scan(&n)v…

IntersectionObserver用法

IntersectionObserver用法 1.什么是IntersectionObserver?2.使用2.1 创建观察对象2.2 观察指定DOM对象2.3 参数详解(1)callback参数(2)options 配置参数 3.应用3.1 Dom进入页面的加载动画3.2 图片的懒加载 1.什么是IntersectionObserver? IntersectionO…

R语言NIMBLE、Stan和INLA贝叶斯平滑及条件空间模型死亡率数据分析:提升疾病风险估计准确性...

全文链接:https://tecdat.cn/?p40365 在环境流行病学研究中,理解空间数据的特性以及如何通过合适的模型分析疾病的空间分布是至关重要的。本文主要介绍了不同类型的空间数据、空间格点过程的理论,并引入了疾病映射以及对空间风险进行平滑处理…

DeepSeek - R1:模型架构深度解析

DeepSeek - R1:模型架构深度解析 引言 本文将深入探索DeepSeek - R1模型架构。将从输入到输出追踪DeepSeek - R1模型,找出架构中的新发展和关键部分。DeepSeek - R1基于DeepSeek - V3 - Base模型架构,本文旨在涵盖其设计的所有重要方面。 …