0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

首个线性注意力Transformer大模型!1750亿参数,速度和精度更优

CVer 来源:机器之心 2023-07-31 15:20 次阅读

GPT 等大型语言模型(LLM)的成功离不开 Softmax 注意力机制,但这一机制也存在着成本高等一些缺点。

近日,上海人工智能实验室和 OpenNLPLab 的一个研究团队提出了一种新的大型语言模型 TransNormerLLM,其中完全抛弃了基于 Softmax 的注意力机制,而是使用了新提出的线性注意力。据介绍,TransNormerLLM 是首个基于线性注意力的大型语言模型(LLM),其在准确度和效率方面的表现优于传统的基于 Softmax 注意力的模型。研究者也将发布其预训练模型的开源版本。

97997bce-2ef2-11ee-815d-dac502259ad0.png

论文:https://arxiv.org/abs/2307.14995

模型:https://github.com/OpenNLPLab/TransnormerLLM

大型语言模型已经为自然语言处理(NLP)领域带来了变革。它们能出色地处理许多不同类型的任务,提升了在计算框架中使用人类语言进行理解、生成和交互的能力。之前语言建模的发展主要围绕 Transformer 架构,其中堪称支柱的模型包括基本的 Transformer、GPT 系列、BERT 和 BART 等开创性的模型。Transformer 架构的成功立足于 softmax 注意力机制,该机制可以识别出数据驱动的模型方案中输入 token 之间的依赖关系,其还能感知全局位置,让模型能有效处理自然语言的长程动态情况。

即便如此,传统的 Transformer 依然存在局限。首要的一点,它们有着对于序列长度的二次时间复杂度,这会限制它们的可扩展性并拖累训练和推理阶段的计算资源和时间效率。为了将这种二次时间复杂性简化至线性复杂性,已经有不少研究者提出了多种不同的序列建模方法。但是,这些方法却难以用于 LLM,原因有二:1) 它们在语言建模任务上的表现往往不如人意;2) 它们在真实世界场景中并没有展现出速度优势。

这篇论文提出的 TransNormerLLM 是首个基于线性注意力的 LLM,其在准确度和效率方面都优于传统的 softmax 注意力。TransNormerLLM 的构建基于之前的线性注意力架构 TransNormer,同时也做了一些修改让性能更优。TransNormerLLM 中关键性的改进包括位置嵌入、线性注意力加速、门控机制、张量归一化和推理加速。

其中值得格外注意的一项改进是将 TransNormer 的 DiagAttention 替换成线性注意力,从而可提升全局的互动性能。研究者还引入了带指数衰减的 LRPE 来解决 dilution 问题。此外,研究者还引入了 Lightning Attention(闪电注意力)这种全新技术,并表示其可以将线性注意力在训练时的速度提升两倍,并且其还能通过感知 IO 将内存用量减少 4 倍。不仅如此,他们还简化了 GLU 和归一化方法,而后者将整体的速度提升了 20%。他们还提出了一种稳健的推理算法,可以在不同的序列长度下保证数值稳定和恒定的推理速度,由此能提升模型在训练和推理阶段的效率。

为了验证 TransNormerLLM 的效果,研究者精心收集了一个大型语料库,其大小超过 6TB,token 数更是超过 2 万亿。为了确保数据的质量,他们还开发了一种用于过滤所收集语料库的自清理(self-cleaning)策略。如表 1 所示,研究者对原始 TransNormer 模型进行了扩展,得到了参数量从 3.85 亿到 1750 亿的多个 TransNormerLLM 模型。然后他们基于新的大型语料库进行了全面实验和控制变量研究,结果表明新方法的性能优于基于 softmax 注意力的方法并且还有更快的训练和推理速度。

97a652a4-2ef2-11ee-815d-dac502259ad0.png

表 1:TransNormerLLM 模型的多种变体

为了促进 LLM 领域的研究,上海人工智能实验室和 OpenNLPLab 的这些研究者也将开源自己的预训练模型,他们表示这是为了「让研究者和实践者基于我们的成果构建应用以及探索用于 LLM 的高效 transformer 结构」。

TransNormerLLM

架构改进

下面将简单介绍 TransNormerLLM 的各个模块以及研究者提出的一些改进措施。

改进一:位置编码

TransNormer 中的较低层使用了 DiagAttention 来避免 dilution 问题。但是,这会导致 token 之间缺乏全局互动能力。为了解决这个问题,研究者为 TransNormerLLM 使用了带指数衰减的 LRPE(线性化相对位置编码),从而可在较低层保留完整的注意力。研究者把这种方法称为 LRPE-d。

改进二:门控机制

门控可以增强模型的性能并使训练过程平滑。研究者为 TransNormerLLM 使用了来自论文《Transformer quality in linear time》的 Flash 方法并在 token 混合中使用了门控式线性注意力(GLA)的结构。

为了进一步提升模型速度,他们还提出了 Simple GLU(SGLU),其去除了原始 GLU 结构的激活函数,因为门本身就能引入非线性。

改进三:张量归一化

研究者使用了 TransNormer 中引入的 NormAttention。在 TransNormerLLM 中,他们使用一种新的简单归一化函数 SimpleRMSNorm(简写为 SRMSNorm)替换了 RMSNorm。

整体结构

图 1 展示了 TransNormerLLM 的整体结构。

97e756b4-2ef2-11ee-815d-dac502259ad0.png

图 1:新提出模型的整体架构

在该结构中,输入 X 的更新通过两个连续步骤完成:首先,其通过使用了 SRMSNorm 归一化的门控式线性注意力(GLA)模块。然后,再次通过使用了 SRMSNorm 归一化的简单门控式线性单元(SGLU)模块。这种整体架构有助于提升模型的性能表现。下方给出了这个整体流程的伪代码:

97ed3976-2ef2-11ee-815d-dac502259ad0.png

训练优化

闪电注意力

为了加快注意力计算速度,研究者引入了闪电注意力(Lightning Attention)算法,这能让新提出的线性注意力更适合 IO(输入和输出)处理。

算法 1 展示了闪电注意力的前向通过的实现细节,算法 2 则是后向通过的。研究者表示,他们还有一个可以更快计算梯度的实现版本,这会在未来发布。

9803e0b8-2ef2-11ee-815d-dac502259ad0.png

98613bd2-2ef2-11ee-815d-dac502259ad0.png

模型并行化

为了在计算机集群上分散所有模型参数、梯度和优化器状态张量,研究者使用了全分片数据并行(FSDP/Fully Sharded Data Parallel)。这种策略性分区方法可减少对每个 GPU 的内存占用,从而优化了内存利用率。为了进一步提高效率,他们使用了激活检查点(Activation Checkpointing),这可减少后向通过过程中缓存在内存中的激活数量。相反,当计算这些梯度时,这些梯度会被移除并重新计算。该技术有助于提升计算效率和节省资源。此外,为了在减少 GPU 内存消耗的同时加快计算速度,研究者还使用了自动混合精度(AMP)。

除了上述成果外,研究者还更进一步通过对线性 transformer 执行模型并行化而进行了系统工程优化,其灵感很大程度上来自于英伟达的 Megatron-LM 模型并行化,在传统的 Transformer 模型中,每个 transformer 层都有一个自注意力模块,其后跟着一个两层多层感知器(MLP)模块。当使用 Megatron-LM 模型并行性时,是在这两个模块上独立使用。类似地,TransNormerLLM 结构也是由两个主要模块构成:SGLU 和 GLA;这两者的模型并行化分开执行。

稳健推理

这让 TransNormerLLM 能以 RNN 的形式执行推理。算法 3 给出了这个过程的细节。但其中存在数值精度问题。

986974a0-2ef2-11ee-815d-dac502259ad0.png

为了避免这些问题,研究者提出了稳健推理算法,见算法 4。

9885e6a8-2ef2-11ee-815d-dac502259ad0.png

原推理算法和稳健推理算法得到的结果是一样的。

语料库

研究者从互联网收集了大量可公开使用的文本,总大小超过 700TB。收集到的数据经由他们的数据预处理程序进行处理,如图 2 所示,留下 6TB 的干净语料库,其中包含大约 2 万亿 token。为了提供更好的透明度,帮助用户更好理解,他们对数据源进行了分门别类。表 2 给出了具体的类别情况。

98adce0c-2ef2-11ee-815d-dac502259ad0.png

图 2:数据预处理流程

98b4ebba-2ef2-11ee-815d-dac502259ad0.png

表 2:语料库统计数据

实验

研究者在 Metaseq 框架中使用 PyTorch 和 Trition 实现了 TransNormerLLM。模型的训练使用了 Adam 优化器,FSDP 也被用于高效地将模型扩展到 NVIDIA A100 80G 集群。他们也适当地使用了模型并行技术来优化性能。

架构消融实验

98dff3c8-2ef2-11ee-815d-dac502259ad0.png

表 3:Transformer vs TransNormerLLM。在相同的配置下,当模型参数数量为 385M 和 1B 时,TransNormerLLM 的性能比 Transformer 分别好 5% 和 9%。

990048f8-2ef2-11ee-815d-dac502259ad0.png

表 4:TransNormer vs TransNormerLLM。TransNormerLLM 的实验结果是最好的。

9911405e-2ef2-11ee-815d-dac502259ad0.png

表 5:位置编码组合使用 LRPE+LRPE-d 得到的结果最优。

993472cc-2ef2-11ee-815d-dac502259ad0.png

表 6:衰减温度方面的消融实验结果。结果表明新方法更优。

994ee63e-2ef2-11ee-815d-dac502259ad0.png

表 7:门控机制方面的消融实验结果。使用该门控机制的模型表现更好。

996e0e4c-2ef2-11ee-815d-dac502259ad0.png

表 8:GLA 激活函数的消融实验结果。用不同激活函数得到结果差不多。

9977845e-2ef2-11ee-815d-dac502259ad0.png

表 9:GLU 激活函数的消融实验结果。去除激活函数对结果没有负面影响。

9992c232-2ef2-11ee-815d-dac502259ad0.png

表 10:归一化函数。使用以下归一化函数的结果差异不大。

99b740da-2ef2-11ee-815d-dac502259ad0.png

图 3:对 SRMSNorm 实现的性能评估

99c82bde-2ef2-11ee-815d-dac502259ad0.png

图 4:线性注意力和闪电注意力之间的内存和速度比较

99f63f60-2ef2-11ee-815d-dac502259ad0.png

图 5:推理时间和内存占用情况

系统优化

9a00c6ec-2ef2-11ee-815d-dac502259ad0.png

表 11:模型并行性性能

9a207eb0-2ef2-11ee-815d-dac502259ad0.png

表 12:训练不同大小的模型的效率

9a4bce62-2ef2-11ee-815d-dac502259ad0.png

表 13:训练 Transformer 和 TransNormerLLM 的最大上下文长度

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 线性
    +关注

    关注

    0

    文章

    196

    浏览量

    25128
  • 语言模型
    +关注

    关注

    0

    文章

    508

    浏览量

    10247
  • Transformer
    +关注

    关注

    0

    文章

    141

    浏览量

    5982
  • 大模型
    +关注

    关注

    2

    文章

    2339

    浏览量

    2500

原文标题:放弃Softmax!首个线性注意力Transformer大模型!1750亿参数,速度和精度更优

文章出处:【微信号:CVer,微信公众号:CVer】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    一种基于因果路径的层次图卷积注意力网络

    机电系统中数据驱动故障检测模型的性能和可解释性。引入了一种混合因果发现算法来发现监测变量之间的继承因果关系。顺序连接因果变量的因果路径用作接收场,使用多尺度卷积来提取特征。基于分层注意力机制来聚合
    的头像 发表于 11-12 09:52 196次阅读
    一种基于因果路径的层次图卷积<b class='flag-5'>注意力</b>网络

    英伟达推出归一化Transformer,革命性提升LLM训练速度

    了新的突破。 相较于传统的Transformer架构,nGPT在保持原有精度的同时,直接将大型语言模型(LLM)的训练速度提升了高达20倍。这一显著的性能提升,无疑将极大地推动AI技术
    的头像 发表于 10-23 11:30 352次阅读

    【《大语言模型应用指南》阅读体验】+ 基础知识学习

    并捕捉长距离依赖关系的神经网络结构。Transformer通过编码器(Encoder)和解码器(Decoder)两部分实现语言的编码和解码。 注意力机制:Transformer中的注意力
    发表于 08-02 11:03

    llm模型有哪些格式

    : 基于Transformer模型 Transformer是一种基于自注意力机制的模型,广泛应用于NLP领域。基于
    的头像 发表于 07-09 09:59 556次阅读

    Transformer模型在语音识别和语音生成中的应用优势

    随着人工智能技术的飞速发展,语音识别和语音生成作为人机交互的重要组成部分,正逐渐渗透到我们生活的各个方面。而Transformer模型,自其诞生以来,凭借其独特的自注意力机制和并行计算能力,在
    的头像 发表于 07-03 18:24 977次阅读

    使用PyTorch搭建Transformer模型

    Transformer模型自其问世以来,在自然语言处理(NLP)领域取得了巨大的成功,并成为了许多先进模型(如BERT、GPT等)的基础。本文将深入解读如何使用PyTorch框架搭建Trans
    的头像 发表于 07-02 11:41 1483次阅读

    Transformer 能代替图神经网络吗?

    初设计之外的数据(如图像和其他序列数据)。然后人们也开始优化和寻找替代方案,主要是为了减少计算成本(自注意力机制的二次方成本)。关于哪种架构在计算成本方面更优的讨论一
    的头像 发表于 07-02 08:27 328次阅读
    <b class='flag-5'>Transformer</b> 能代替图神经网络吗?

    【大规模语言模型:从理论到实践】- 阅读体验

    再次感谢电子发烧友提供的书籍试读机会。今天来分享下我在学习大模型训练中 注意力机制 的心得体会。 虽然注意力机制可以显著提高模型处理长序列数据的能力,但这也带来了计算成本的增加。在大型
    发表于 06-07 14:44

    通义千问开源千亿级参数模型

    通义千问近日开源了其首个千亿级参数模型Qwen1.5-110B,这是其全系列中首个达到千亿级别的开源模型。Qwen1.5-110B模型继承了
    的头像 发表于 05-08 11:01 712次阅读

    通义千问推出1100亿参数开源模型

    通义千问近日震撼发布1100亿参数的开源模型Qwen1.5-110B,这一举措标志着通义千问在AI领域迈出了重大步伐。该模型成为通义千问全系列首个
    的头像 发表于 05-06 10:49 560次阅读

    【大语言模型:原理与工程实践】大语言模型的基础技术

    模型仍以Transformer为基础进行训练。Transformer是一种基于自注意力机制的编码器-解码器结构,其核心由编码器和解码器组成,每个部分均由多个相同层堆叠而成。自
    发表于 05-05 12:17

    【大语言模型:原理与工程实践】揭开大语言模型的面纱

    关系,从而在各种任务中表现出色。Transformer架构的推出,标志着语言模型技术的重大突破。它摒弃了传统的递归方式,利用自注意力机制捕捉序列中的依赖关系。这一创新极大地提高了模型
    发表于 05-04 23:55

    视觉Transformer基本原理及目标检测应用

    视觉Transformer的一般结构如图2所示,包括编码器和解码器两部分,其中编码器每一层包括一个多头自注意力模块(self-attention)和一个位置前馈神经网络(FFN)。
    发表于 04-03 10:32 3267次阅读
    视觉<b class='flag-5'>Transformer</b>基本原理及目标检测应用

    阿里巴巴发布AtomoVideo,兼容多款文生图模型的高保真图像视频框架

    AtomoVideo运用预设的 T2I 模型,在每个空间卷积层和注意力层后新增一维时空卷积和注意力模块。现有的 T2I 模型参数固定不变,它
    的头像 发表于 03-07 11:22 749次阅读

    基于Transformer的多模态BEV融合方案

    由于大量的相机和激光雷达特征以及注意力的二次性质,将 Transformer 架构简单地应用于相机-激光雷达融合问题是很困难的。
    发表于 01-23 11:39 750次阅读
    基于<b class='flag-5'>Transformer</b>的多模态BEV融合方案