今日Arxiv最热NLP大模型论文:Llama-2上下文扩大48倍的方法来了,港大发布,无需训练

引言:大语言模型的长上下文理解能力

在当今的人工智能领域,大语言模型(Large Language Models,简称LLMs)的长上下文理解能力成为了一个重要的研究方向。这种能力对于模型来说至关重要,因为它使得LLMs能够有效地应对各种应用场景,例如在庞大的PDF文件中分析和回应查询、保留扩展的对话历史以及增强交互式聊天机器人的功能。然而,由于训练语料库的可获取性有限,以及长上下文微调的成本过高,目前的开源模型在性能上往往无法与专有模型相媲美,且通常只能提供较小的模型尺寸(例如7B/13B)。

针对这些限制,不需要额外训练即可进行上下文扩展的方法变得尤为吸引人。最近的无训练方法,包括LM-infinite和StreamingLLM,已经展示了在有限上下文窗口训练的LLMs能够高效处理无限长度的文本。这些模型通过选择性保留关键的局部信息来处理扩展序列,有效地维持了低困惑度(Perplexity,PPL),但它们失去了长距离依赖性。为了保留全局信息,另一种观点是有效地推断出超出训练时遇到的序列长度。一些流行的技术,如基于Llama模型的位置插值(PI)和NTK-Aware RoPE,是对旋转位置编码(RoPE)的调整。这些扩展的位置编码相比原始RoPE需要更少的微调步骤,而且它们的训练成本可以通过YaRN和CLEX等方法进一步降低。

论文标题: Training-Free Long-Context Scaling of Large Language Models

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

声明:本期论文解读非人类撰写,全文由赛博马良「AI论文解读达人」智能体自主完成,经人工审核、配图后发布。

公众号「夕小瑶科技说」后台回复“智能体内测”获取智能体内测邀请链接。

长上下文处理的挑战与现有方法局限性

在大语言模型(LLMs)的发展中,理解和处理长上下文信息是一个关键挑战。这种能力对于有效地应对各种应用场景至关重要,包括在庞大的PDF文件中分析和回应查询、保留扩展的对话历史以及增强交互式聊天机器人的功能。然而,尽管通过在长文本序列上进一步训练短上下文模型可以提高长上下文能力,目前的开源模型在性能上往往不及专有模型,并且通常只提供较小的尺寸(例如7B/13B)。

现有的方法,如LM-infinite和StreamingLLM,展示了在有限上下文窗口训练的LLMs能够高效处理无限长度的文本。这些模型通过选择性保留关键的局部信息来处理扩展序列,有效地保持了低困惑度(PPL),但却丢失了长距离依赖。为了保留全局信息,另一种观点是有效地推断超出训练期间遇到的序列长度。流行的技术,如基于Llama模型的Position Interpolation(PI)和NTK-Aware RoPE(NTK),是对Rotary Positional Encodings(RoPE)的调整。这些扩展的位置编码相比原始RoPE需要更少的微调步骤,其训练成本可以通过YaRN和CLEX等方法进一步降低。然而,在无需训练的环境中,这些方法通常会导致PPL显著增加,尤其是在输入长度是训练长度两倍以上时。

双块注意力(DCA)框架

1. DCA的三个组件:内块、间块和连续块注意力

双块注意力(DCA)是一个新的无需训练的框架,用于推断LLMs的上下文窗口。DCA避免了线性缩放位置索引或增加RoPE的基频。相反,它选择重用预训练模型中的原始位置索引及其嵌入,但重新设计了相对位置矩阵的构建,以尽可能准确地反映两个标记之间的相对位置。DCA由三个组件组成:(1)内块注意力,针对同一块内的标记处理;(2)间块注意力,用于处理不同块之间的标记;(3)连续块注意力,用于处理连续的、不同的块中的标记。这些各自的处理帮助模型有效捕捉序列中的长距离和短距离依赖。

2. DCA与Flash Attention的集成

DCA的块基础注意力计算可以与Flash Attention无缝集成,Flash Attention是开源社区中长上下文扩展的关键元素。该研究在模型上进行了全面评估,包括语言建模、密钥检索和涵盖问答(Q&A)和摘要等实际长上下文应用的多样化任务。与以往的工作不同,通常仅限于在7B/13B模型上进行验证,该方法的显著训练效率使得可以在70B模型上进行验证,确保了结论的稳健性。为了验证模型的长上下文能力,不受预训练期间可能的数据暴露的影响,使用本文本身作为输入,并为模型设计了一系列问题。实证结果揭示了以下见解:在语言建模上,DCA对于无需训练的方法来说是一个显著的进步。它首次展示了具有4k上下文窗口的LLMs可以扩展到超过32k而无需训练,并保持PPL的微小增加,而以前的方法通常在超过8k的上下文长度上就会失败。此外,该研究展示了当与DCA集成时,Llama2 70B展现出处理超过100k标记上下文大小的卓越推断能力。

实验设置:评估DCA在不同任务上的表现

1. 实验目的与设计

本研究旨在评估Dual Chunk Attention(DCA)在不同任务上的表现,特别是在长序列语言建模中的效果。DCA是一种无需额外训练即可扩展大型语言模型(LLMs)上下文窗口的新框架。实验设计包括在多种任务上进行全面评估,如语言建模、密钥检索和现实世界的长上下文应用,包括问答和摘要。

2. 实验设置

实验中,DCA应用于不同版本的Llama2模型(7B、13B和70B),以及它们的聊天对应模型,这些模型的预训练上下文为4k。此外,DCA还被应用于两个流行的开源长上下文模型:Together-32k和CodeLlama。为了验证模型的长上下文能力,研究团队使用本文作为输入,并为模型设计了一系列问题。

3. 实验资源

实验在NVIDIA A100-80G GPU上进行,7B/13B版本的CHUNKLLAMA2只需要一块GPU即可进行推理。当扩展到70B模型时,两块GPU足以处理长达16k的上下文长度。此外,实验还涉及到了基于Flash Attention 2的优化,以实现与原始自注意力在GPU内存使用和推理速度上的可比性。

实验结果分析:DCA在长序列语言建模中的效果

1. 语言建模

在PG19数据集上的评估显示,DCA在语言建模任务上取得了显著进步。例如,Llama2 70B模型在整合DCA后,能够处理超过100k个令牌的上下文大小,同时仅有微小的困惑度(PPL)增加。此外,已经支持32k上下文窗口的现有长上下文LLMs,通过DCA进一步扩展到192k上下文长度时,仍然保持了高密钥检索准确率和低困惑度。

2. 实际任务

在现实世界基准测试中,DCA不仅在基于PPL的评估中表现出色,还在基础模型和经过指令微调的聊天模型上应用于真实任务。例如,DCA在没有额外训练的情况下,与流行的微调基线模型如YaRN、MPT和Together相比,7B/13B版本的CHUNKLLAMA2在NarrativeQA、QMSum、QuALITY和Qasper等任务上取得了可比或更好的结果。

3. 效率分析

DCA与Flash Attention结合使用时,在不同提示长度下的推理时间和GPU内存消耗与原始自注意力机制相当,没有引入显著的额外开销。这表明DCA能够在保持模型性能的同时,有效地扩展LLMs的上下文窗口。

4. 结论

实验结果表明,DCA是一种有效的训练方法,能够显著扩展LLMs的上下文窗口,同时保持或提升模型在长序列语言建模任务上的性能。通过巧妙利用模型现有的位置索引和引入多方面的注意力机制,DCA为长上下文场景中的LLM应用提供了一种成本效益高的解决方案。

DCA在实际任务中的应用

1. 7B/13B模型的训练自由与微调模型

在实际任务中,Dual Chunk Attention(DCA)框架被应用于7B和13B的Llama2模型,以及它们的聊天模型变体。这些模型在预训练时具有4k的上下文窗口。通过DCA的应用,这些模型能够在不需要额外训练的情况下处理更长的上下文。此外,研究者还对7B/13B的Llama2模型进行了微调,使用了长对话数据集,其中包含16k个输入令牌,这些数据集来源于ShareGPT和AlpacaGPT4。微调过程遵循了Vicuna和LongChat的方法,仅使用了大约40至60个GPU小时。

2. 70B模型的性能提升

对于70B的Llama2模型,DCA展示了显著的性能提升。与原始的4k训练长度相比,DCA使得70B模型能够处理超过100k令牌的上下文大小,同时仅略微增加了困惑度(Perplexity,PPL)。这一性能提升证明了DCA在扩展上下文窗口方面的有效性。研究者没有找到许多开源的70B模型作为基线进行比较,但是与支持32k上下文窗口的Longlora模型相比,70B的DCA模型在不需要任何训练步骤的情况下,实现了可比的性能。

DCA在零样本和少样本设置中的表现

在零样本和少样本的设置中,DCA框架的表现与通过昂贵的持续训练构建的现有最先进模型相当,甚至超过了它们。在零样本的实验中,DCA应用于基础模型和经过指令微调的聊天模型,展示了与开源模型相当的性能。特别是在零样本实验中,70B的DCA模型在与Longlora 70B聊天版本相比时显示出显著的改进,并且与GPT-3.5以及Llama2 Long的聊天版本相比,70B的DCA模型在没有额外训练的情况下直接扩展到16k上下文窗口,达到了94%的性能。

在少样本的实验中,DCA在没有进行指令调整的模型上进行了验证。实验结果表明,大多数NarrativeQA和QMSum的测试案例输入长度超过16k令牌,而Qasper和QuALITY的测试案例长度通常在8k令牌以下。在这些设置中,7B/13B的DCA模型实现了与YaRN、MPT、Together等流行的微调基线相当的结果。

效率分析:DCA的推理时间和GPU内存消耗

在评估大语言模型(LLMs)的长上下文理解能力时,推理时间和GPU内存消耗是两个关键的性能指标。Dual Chunk Attention(DCA)作为一种新的训练无关框架,旨在扩展LLMs的上下文窗口,同时保持高效的计算性能。以下是DCA在这些方面的表现分析。

1. 推理时间

根据实验结果,DCA与Flash Attention集成后,在不同的输入长度上的推理时间与原始的自注意力机制(PyTorch实现)和Flash Attention相比较。实验在单个NVIDIA A100 80G GPU上进行,使用Llama2 7B模型,输入长文本来自NarrativeQA。在20次试验中,DCA保持了与原始Flash Attention相似的推理速度,没有引入显著的额外开销。

2. GPU内存消耗

同样地,DCA集成Flash Attention后的GPU内存消耗与原始自注意力机制和Flash Attention进行了比较。在没有Flash Attention的情况下,单个GPU能够处理的最大输入长度大约在12k到16k tokens之间。DCA在GPU内存消耗方面与原始Flash Attention相当,没有显著增加。

综上所述,DCA不仅能够有效扩展LLMs的上下文窗口,而且在推理时间和GPU内存消耗方面保持了高效性能,这对于开源社区中长上下文扩展的关键元素Flash Attention来说尤为重要。

总结:DCA的创新点和对长上下文LLM的影响

Dual Chunk Attention(DCA)提出了一种新颖的训练无关框架,通过巧妙地利用模型现有的位置索引和引入多面向的注意力机制,允许LLMs扩展超过8倍的训练长度,而无需昂贵和耗时的进一步训练。

DCA的创新点在于它与Flash Attention的兼容性,仅需要对推理代码进行修改,无需进行大量的重新训练。DCA在训练长度内保持模型性能,并在此范围之外提供额外的性能提升,与已经进行了长上下文微调的模型兼容。因此,DCA可能对行业产生重大影响,为LLM应用中的长上下文场景提供了一种成本效益高的解决方案。

在长上下文能力的评估中,DCA展现了显著的性能,能够在不增加训练成本的情况下,与现有的最先进模型相媲美,甚至超越。例如,DCA与Llama2 70B集成后,展现了处理超过100k tokens上下文大小的卓越扩展能力。此外,DCA还与现有的长上下文LLMs(如PI和NTK)正交,实验证明,已经支持32k上下文窗口的现有长上下文LLMs可以进一步扩展到192k上下文长度,同时保持高通行密钥检索精度和低困惑度(PPL)。

总之,DCA为长上下文LLMs提供了一种高效且无需额外训练的扩展方法,这对于处理大规模文本数据,如PDF分析、长对话历史保持和交互式聊天机器人等应用至关重要。

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

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

相关文章

精品SSM的教学管理系统课程作业成绩

《[含文档PPT源码等]精品基于SSM的教学管理系统[包运行成功]》该项目含有源码、文档、PPT、配套开发软件、软件安装教程、项目发布教程、包运行成功! 软件开发环境及开发工具: Java——涉及技术: 前端使用技术:HTML5,CSS3、Jav…

<网络安全>《63 微课堂<第3课 旁路部署和串行部署是什么?>》

1、串联和并联概念 串联和并联是物理学上的概念。 串联电路把元件逐个顺次连接起来组成的电路。如图,特点是:流过一个元件的电流同时也流过另一个。 并联电路把元件并列地连接起来组成的电路,如图,特点是:干路的电流…

Ps:快照

“历史记录” History面板可分为快照区和历史记录状态区两个部分。 Photoshop 的快照 snapshot功能允许用户保存当前工作状态的完整副本,这包括图像的所有图层(包括图层可见性)、图层样式、选区以及颜色模式、位深度等其他属性。 通过创建当前…

一份在互联网公司干了八年的经验分享

一份在互联网公司干了八年的经验分享 一晃在这一行已经摸爬滚打8年有余,虽科班毕业,也不是什么名校,学校的计算机氛围没那么浓厚,我基本上是在工作之后才开始正儿八经的学习编程,一边啃书本敲代码,一边是上…

汽车三元催化器的废品项目详解,三元催化再生项目的回收技术教学

一、教程描述 这是一个收废品项目,就收那些别人不懂的,三元催化器的附加值高,只要掌握技术,怎么玩都行的,只是要放得下你的面子。三元催化器,是安装在汽车排气系统中最重要的机外净化装置,它可…

NOC2023软件创意编程(学而思赛道)python小高组初赛真题

软件创意编程 一、参赛范围 1.参赛组别:小学低年级组(1-3 年级)、小学高年级组(4-6 年级)、初中组。 2.参赛人数:1 人。 3.指导教师:1 人(可空缺)。 4.每人限参加 1 个赛项。 组别确定:以地方教育行政主管部门(教委、教育厅、教育局) 认定的选手所属学段为准。 二、…

2024年3月5-7日年生物发酵装备展-环科环保科技

参展企业介绍 山东环科环保科技有限公司,是一家集环保设备的设计、制造、安装、服务及环境治理工程总承包于一体的企业。 公司长期专注于大气、水、危固废三大领域,以科技创造碧水蓝天,为客户提供环保解决方案。 以稳定的产品及服务质量、适用的技术、…

BUUCTF---数据包中的线索1

1.题目描述 2.下载附件,是一个.pcap文件 3.放在wireshark中,仔细观察数据流,会发现有个叫fenxi.php的数据流 4.这条数据流是http,且使用GET方式,接下来我们使用http.request,methodGET 命令来过滤数据流 5.在分析栏中我们追踪htt…

DataGrip(IDEA 内置)连接 SQL Server

原文:https://blog.iyatt.com/?p14265 测试环境: IDEA 2023.1SQL Server 2022 首先打开 SQL Server 配置管理工具 启用 TCP/IP 打开 Windows 服务管理 在服务列表中找到 SQL Server(MSSQLSERVER),右键重新启…

C++复习笔记——多态

1 多态 基本概念: 静态多态:编译时多态,运算符重载和函数重载动态多态:运行时多态,派生类重写基类的虚函数实现 静态多态和动态多态的区别就是函数地址是早绑定(静态联编,静态绑定)还是晚绑定(动态联编&a…

一些可以访问gpt的方式

1、Coze扣子是新一代 AI 大模型智能体开发平台。整合了插件、长短期记忆、工作流、卡片等丰富能力,扣子能帮你低门槛、快速搭建个性化或具备商业价值的智能体,并发布到豆包、飞书等各个平台。https://www.coze.cn/ 2、https://poe.com/ 3、插件阿里…

牛客禁用题改造:求和

使用内部类可以使程序的封装性更加完美 #include <type_traits>class Solution {class add{public:static int count;static int tmp;add(){countcounttmp;tmp;} }; public:int Sum_Solution(int n) {add a[n];return add::count;} };int Solution::add::count0; int …