当前位置:首页 > 文章列表 > 科技周边 > 人工智能 > 扩展LLaMA2上下文至100k:MIT和港中文采用LongLoRA方法

扩展LLaMA2上下文至100k:MIT和港中文采用LongLoRA方法

来源:51CTO.COM 2023-10-08 22:13:57 0浏览 收藏

哈喽!大家好,很高兴又见面了,我是golang学习网的一名作者,今天由我给大家带来一篇《扩展LLaMA2上下文至100k:MIT和港中文采用LongLoRA方法》,本文主要会讲到等等知识点,希望大家一起学习进步,也欢迎大家关注、点赞、收藏、转发! 下面就一起来看看吧!

通常情况下,大型预训练模型的文本长度是固定的。如果想要支持更长的文本,就需要对模型进行微调。然而,训练具有长上下文的语言模型的计算成本非常高,需要大量的训练时间和GPU资源

举个例子,如果要训练一个具有8192长度上下文的模型,相比于2048长度上下文,需要16倍的计算资源。尽管如此,上下文长度对于模型性能非常重要,因为它代表了LLM在回应时对整个上下文的清晰理解能力

最近,麻省理工学院与香港中文大学合作研究,提出了LongLoRA。这是一种高效的微调方法,能够在有限的计算成本下扩展预训练的大型语言模型的上下文大小

扩展LLaMA2上下文至100k:MIT和港中文采用LongLoRA方法

论文地址:https://arxiv.org/pdf/2309.12307.pdf

项目地址:https://github.com/dvlab-research/LongLoRA 可以在这个链接上找到项目

本文旨在加快LLM的上下文扩展,从两个方面进行了改进

一方面,尽管在推理过程中需要密集的全局注意力,但通过稀疏的局部注意力可以有效且高效地对模型进行微调。本文提出的"移动短注意力"方法有效地实现了上下文扩展,节省了大量的计算,与使用传统的注意力机制进行微调的性能相似

另一方面,LoRA在可训练嵌入和归一化的前提下,在上下文扩展方面表现出色。LongLoRA在LLaMA2模型的各种任务中,从7B/13B扩展到70B,都展现出了很好的结果。在单台8x A100设备上,LongLoRA将LLaMA2 7B的上下文扩展到100k,LLaMA2 70B扩展到32k。LongLoRA扩展了模型的上下文,同时保留了其原始架构,并且与大多数现有技术兼容,如FlashAttention-2。为了使LongLoRA更实用,研究者收集了一个名为LongQA的数据集,用于监督微调。该数据集包含超过3k个长上下文问题-答案对

LongLoRA 是一种能够在注意力水平和权重水平上加速预训练大型语言模型上下文扩展的方法。以下是其亮点:

  • 短暂的注意力转移 易于实现,与 Flash-Attention 兼容,且在推理过程中不需要使用。
  • 发布了所有模型,包括从 7B 到 70B 的模型,上下文长度从 8k 到 100k,包括 LLaMA2-LongLoRA-7B-100k、LLaMA2-LongLoRA-13B-64k 和 LLaMA2-LongLoRA-70B-32k。
  • 建立了一个长上下文 QA 数据集 LongQA,用于监督微调。研究者已经发布了 13B 和 70B 32k 型号的 SFT、Llama-2-13b-chat-longlora-32k-sft 和 Llama-2-70b-chat-longlora-32k-sft,并将在下个月发布数据集。

LongLoRA 技术细节 

短暂的注意力转移

标准自注意力模式的计算开销为 O (n^2 ),使得长序列上的 LLM 内存开销高且速度慢。为了在训练中避免这个问题,本文提出了 shift short attention(S^2 -Attn),如下图 2 所示。

扩展LLaMA2上下文至100k:MIT和港中文采用LongLoRA方法

研究人员验证了微调的重要性,如表1所示。如果不进行微调,在上下文长度增加的情况下,即使模型配备了适当的位置嵌入,其性能也会下降

扩展LLaMA2上下文至100k:MIT和港中文采用LongLoRA方法

现有的 efficient  attention 设计也可以提高长上下文语言模型的效率。在下表 2 中,研究者将 S^2 -Attn 与几种典型的 efficient  attention 进行了比较,可以发现,前者不仅能够实现高效的微调,还支持 full attention 测试。

扩展LLaMA2上下文至100k:MIT和港中文采用LongLoRA方法

此外,S^2 -Attn 的实现非常简单,只需要两个步骤:(1) 转换半注意力头中的令牌 (2) 将令牌特征的维度移至批次维度。这个过程只需要几行代码即可完成

改进长距离低功耗广域网(LoRA)的内容

LoRA 是一种有效且流行的方法,可使 LLM 适应其他数据集。与完全微调相比,它节省了很多可训练参数和内存成本。然而,将 LLM 从短上下文长度调整为长上下文长度并不容易。研究者观察到 LoRA 和完全微调之间存在明显的差距。如下表 3 所示,随着目标上下文长度的增大,LoRA 和完全微调之间的差距也会增大。

扩展LLaMA2上下文至100k:MIT和港中文采用LongLoRA方法

为了弥补这一差距,研究者打开嵌入层和归一化层进行训练。如表 3 所示,它们占用的参数有限,但对长上下文适应有影响。特别是归一化层,在整个 LLaMA2 7B 的参数占比仅为 0.004%。在实验中,研究者将这种改进的 LoRA 表示为 LoRA+。

实验及结果

研究者扩展了预训练的 7B、13B 和 70B LLaMA2 模型。7B 模型的最大扩展上下文窗口大小为 100k,13B 模型的最大扩展上下文窗口大小为 65536,70B 模型的最大扩展上下文窗口大小为 32768。 

研究者在研究中沿用了 Position Interpolation 的大部分训练超参数。不过,由于只使用了单台 8×A100 GPU 设备,在某些情况下批大小更小。所有的模型都通过预测下一个 token 来进行微调。研究者使用了 AdamW 优化器,其中 β_1 = 0.9,β_2 = 0.95。7B 和 13B 模型的学习率设定为 2 × 10^−5,而 70B 模型的学习率设定为 10^−5

他们还使用了线性学习率预热。权重衰减为零。每台设备的批大小设为 1,梯度累积步骤设为 8,这意味着使用 8 个 GPU,全局批大小等于 64。模型进行了 1000 步的训练。

研究者使用 Redpajama 数据集进行训练,并构建了一个长上下文 QA 数据集 LongQA,用于监督微调。Redpajama 微调的模型呈现了良好的困惑度,但它们的聊天能力是有限的。研究者收集了超过 3k 个问题 - 答案对,它们都是与技术论文、科幻小说和其他书籍等材料有关的。设计的问题包括总结、关系、人物等。

根据表格4,我们可以观察到在相同的训练和评估上下文长度下,随着上下文大小的增加,困惑度逐渐降低

扩展LLaMA2上下文至100k:MIT和港中文采用LongLoRA方法

在下表 5 中,研究者进一步考察了在单台 8×A100 设备上可微调的最大上下文长度。他们分别将 LLaMA2 7B、13B 和 70B 扩展到 100k、65536 和 32768 上下文长度。LongLoRA 在这些超大设置上取得了令人满意的结果。此外,实验还发现扩展模型在较小的上下文长度上会出现一些困惑度下降。

扩展LLaMA2上下文至100k:MIT和港中文采用LongLoRA方法

在下表 6 中,研究者将模型与其他开放式 LLM 在 LongChat 中引入的主题检索任务上进行比较。这个任务是从很长的对话中检索目标话题,对话长度从 3k、6k、10k、13k 到 16k 不等。

扩展LLaMA2上下文至100k:MIT和港中文采用LongLoRA方法

需要进行重新书写的内容是:消融实验

在第七个表格中,研究人员对LLaMA2 7B进行了不同类型的层细分。他们对FLOPs进行了分析:随着上下文长度的增加,全注意力机制的比例也急剧增加。例如,在上下文长度为8192时,全注意力机制占总FLOP的24.5%,而在上下文长度为65536时,增至72.2%。而当使用S^2-Attn时,比例下降至39.4%

扩展LLaMA2上下文至100k:MIT和港中文采用LongLoRA方法

下表8展示了在PG19验证集上扩展到8192上下文长度时,LLaMA2 7B模型的复杂度与微调步骤之间的关系。可以发现,如果不进行微调,在第0步时,模型的长上下文能力有限。完全微调比低阶训练收敛得更快。两者在200步后逐渐接近,最后没有出现大的差距

扩展LLaMA2上下文至100k:MIT和港中文采用LongLoRA方法

在微调过程中,不同的注意力模式的效果如下表2所示

扩展LLaMA2上下文至100k:MIT和港中文采用LongLoRA方法

内容展示

经过阅读《哈利・波特》的内容后,这个模型能够解释为什么斯内普对哈利不友好,甚至能够总结出人物之间的关系

扩展LLaMA2上下文至100k:MIT和港中文采用LongLoRA方法

不仅如此,给它一篇论文,还能帮助你立刻了解相关信息。

扩展LLaMA2上下文至100k:MIT和港中文采用LongLoRA方法

更多详细内容,请参阅原文。

以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于科技周边的相关知识,也可关注golang学习网公众号。

版本声明
本文转载于:51CTO.COM 如有侵犯,请联系study_golang@163.com删除
进化扩散驱动下的蛋白质生成:微软发布开源AI框架EvoDiff进化扩散驱动下的蛋白质生成:微软发布开源AI框架EvoDiff
上一篇
进化扩散驱动下的蛋白质生成:微软发布开源AI框架EvoDiff
英特尔宣布分拆可编程解决方案部门 PSG,未来计划独立 IPO 上市
下一篇
英特尔宣布分拆可编程解决方案部门 PSG,未来计划独立 IPO 上市
查看更多
最新文章
查看更多
课程推荐
  • 前端进阶之JavaScript设计模式
    前端进阶之JavaScript设计模式
    设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
    542次学习
  • GO语言核心编程课程
    GO语言核心编程课程
    本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
    508次学习
  • 简单聊聊mysql8与网络通信
    简单聊聊mysql8与网络通信
    如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
    497次学习
  • JavaScript正则表达式基础与实战
    JavaScript正则表达式基础与实战
    在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
    487次学习
  • 从零制作响应式网站—Grid布局
    从零制作响应式网站—Grid布局
    本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
    484次学习
查看更多
AI推荐
  • 可图AI图片生成:快手可灵AI2.0引领图像创作新时代
    可图AI图片生成
    探索快手旗下可灵AI2.0发布的可图AI2.0图像生成大模型,体验从文本生成图像、图像编辑到风格转绘的全链路创作。了解其技术突破、功能创新及在广告、影视、非遗等领域的应用,领先于Midjourney、DALL-E等竞品。
    20次使用
  • MeowTalk喵说:AI猫咪语言翻译,增进人猫情感交流
    MeowTalk喵说
    MeowTalk喵说是一款由Akvelon公司开发的AI应用,通过分析猫咪的叫声,帮助主人理解猫咪的需求和情感。支持iOS和Android平台,提供个性化翻译、情感互动、趣味对话等功能,增进人猫之间的情感联系。
    19次使用
  • SEO标题Traini:全球首创宠物AI技术,提升宠物健康与行为解读
    Traini
    SEO摘要Traini是一家专注于宠物健康教育的创新科技公司,利用先进的人工智能技术,提供宠物行为解读、个性化训练计划、在线课程、医疗辅助和个性化服务推荐等多功能服务。通过PEBI系统,Traini能够精准识别宠物狗的12种情绪状态,推动宠物与人类的智能互动,提升宠物生活质量。
    20次使用
  • 可图AI 2.0:快手旗下新一代图像生成大模型,专业创作者与普通用户的多模态创作引擎
    可图AI 2.0图片生成
    可图AI 2.0 是快手旗下的新一代图像生成大模型,支持文本生成图像、图像编辑、风格转绘等全链路创作需求。凭借DiT架构和MVL交互体系,提升了复杂语义理解和多模态交互能力,适用于广告、影视、非遗等领域,助力创作者高效创作。
    23次使用
  • 毕业宝AIGC检测:AI生成内容检测工具,助力学术诚信
    毕业宝AIGC检测
    毕业宝AIGC检测是“毕业宝”平台的AI生成内容检测工具,专为学术场景设计,帮助用户初步判断文本的原创性和AI参与度。通过与知网、维普数据库联动,提供全面检测结果,适用于学生、研究者、教育工作者及内容创作者。
    36次使用
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码