MEGALODON:突破传统,实现高效无限上下文长度的大规模语言模型预训练和推理

在人工智能领域,尤其是在自然语言处理(NLP)中,大模型(LLMs)的预训练和推理效率一直是研究的热点。最近,一项突破性的研究提出了一种新型神经网络架构——MEGALODON,旨在解决传统Transformer架构在处理长序列时面临的挑战。

MEGALODON-7B、LLAMA2-7B和LLAMA2-13B在训练过程中处理的token数量与负对数似然(Negative Log-Likelihood, NLL)的关系。比较不同模型在相同训练token数量下的性能,其中NLL越低表示模型性能越好

大模型(LLMs)在处理诸如多轮对话、长文档理解和视频生成等实际应用时,需要高效地处理长序列数据,并生成连贯的输出。然而,现有的Transformer架构由于其二次数方的计算复杂性以及对长度泛化的有限归纳偏差,使得其在长序列建模上效率不高。尽管已经提出了一些次二次数方的解决方案,如线性注意力和状态空间模型,但它们在预训练效率和下游任务准确性上仍不如Transformer。

不同模型在标准学术基准测试中的表现,包括模型大小、上下文长度以及预训练期间使用的数据token数量。表格中还展示了各个模型在多个基准测试中的得分

为了克服这些限制,MEGALODON架构应运而生。它继承了MEGA(指数移动平均与门控注意力)的架构,并进一步引入了多个技术组件以提高其能力和稳定性。这些组件包括复杂指数移动平均(CEMA)、时间步归一化层、归一化注意力机制以及预归一化和双跳残差配置。

不同归一化方法的示意图,包括层归一化(Layer Norm)、组归一化(Group Norm)和时间步归一化(Timestep Norm)

Figure 2展示了不同归一化方法的计算方式,这些方法在神经网络中用于稳定训练过程并提高模型的性能。归一化通过调整激活输出的分布,减少内部协变量偏移,从而使得模型更加稳定,便于学习和泛化。归一化方法包括:

  1. Layer Normalization(层归一化):这是一种常用的归一化技术,它在神经网络的层级上对数据进行归一化处理。Layer Normalization会在神经网络的每一层计算激活值的均值和方差,然后使用这些统计量来归一化当前层的激活输出。

  2. Group Normalization(分组归一化):这种方法是对Layer Normalization的一个扩展,它将特征维度分成多个组,并在每个组内分别计算均值和方差来归一化激活值。Group Normalization允许模型在特征维度上捕捉局部依赖性,同时减少参数数量。

  3. Timestep Normalization(时间步归一化):这是MEGALODON架构中特别提出的一种归一化方法,它专门用于处理序列数据。Timestep Normalization在序列的时间步上计算累积的均值和方差,以此来归一化序列数据。这种方法对于自回归模型特别有用,因为它可以防止时间步上的梯度消失或爆炸问题,同时避免未来信息的泄露。

MEGALODON架构中,这些归一化方法被用来增强模型处理长序列的能力。通过合理地选择和应用这些归一化技术,MEGALODON能够在保持计算效率的同时,提高模型在长序列数据上的稳定性和性能。

MEGALODON架构的示意图

Figure 3提供了MEGALODON架构的详细图解,展示了其核心组件和配置。这个架构是为了提高大型语言模型(LLMs)在长序列数据上的效率和性能而设计的

Figure 3(a) 展示了一个MEGALODON层的草图,它包括以下几个关键组件:

  • CEMA (Complex Exponential Moving Average) Output: 这是MEGALODON中的一个创新组件,它扩展了传统的指数移动平均(EMA)到复数域,以增强模型捕捉长距离依赖的能力。

  • Gate: 门控机制是控制信息流的一种方式,在MEGALODON中,可能包括重置门(reset gate)和更新门(update gate),它们共同作用于注意力机制的输出。

  • Q, K, V (Query, Key, Value): 这些是注意力机制中的查询、键和值,它们是模型用来计算注意力分数和加权输出的基础。

  • Normalized Attention Unit: 归一化注意力单元是MEGALODON中的另一个关键创新,它通过归一化查询和键的表示来提高注意力机制的稳定性。

  • Output Y: 经过注意力机制和后续的归一化处理后,得到的输出将被送入下一层或作为最终的预测结果。

  • Layer Norm: 层归一化被应用于输入和注意力输出上,以稳定训练过程并提高模型的泛化能力。

  • FFN (Feed-Forward Network): 这是每个Transformer层中的标准组件,用于在注意力机制之后进一步处理数据。

Figure 3(b) 展示了预归一化(Pre-Norm)的配置,这是Transformer架构中常用的一种归一化策略。在这种配置中:

  • 输入X首先被送入归一化层,然后进入注意力机制。

  • 注意力机制的输出与原始输入X相加,形成残差连接。

  • 残差连接的输出再次经过归一化,然后送入前馈网络(FFN)。

这种配置有助于减少训练过程中的内部协变量偏移,并且由于归一化层在每个子层(如注意力机制和FFN)之前应用,因此有助于稳定深层网络的训练。

Figure 3(c)展示了MEGALODON中的另一种配置,即预归一化结合双跳残差连接。这种配置对预归一化进行了改进:

  • 输入X首先经过归一化,然后送入注意力机制。

  • 注意力机制的输出与原始输入X相加,形成第一跳残差连接。

  • 这个残差连接的输出再次经过归一化,然后送入前馈网络(FFN)。

  • FFN的输出与原始输入X再次相加,形成第二跳残差连接。

这种双跳残差连接的设计有助于进一步稳定深层网络的训练,特别是在模型规模非常大时。通过在每个主要组件(如注意力机制和FFN)之后重新使用原始输入作为残差连接,这种配置减少了深层网络中梯度消失或爆炸的风险。

MEGALODON架构是针对现有Transformer架构在处理长序列数据时遇到的挑战而设计的。它基于MEGA架构,引入了一系列创新技术,以提高模型处理长序列的能力,并保持了高效的计算性能。

MEGALODON采用了复杂指数移动平均(CEMA),这是对MEGA中使用的多维阻尼指数移动平均(EMA)的扩展。CEMA通过在复数域中操作,增加了模型捕捉长序列依赖关系的能力。CEMA通过将EMA中的衰减和阻尼因子扩展到复数参数,使得模型能够在保持时间序列信息的同时,更好地捕捉序列中的长距离依赖。

MEGALODON引入了时间步归一化层(Timestep Normalization Layer),这是一种对现有归一化技术(如Layer Normalization和Group Normalization)的改进。时间步归一化层通过在序列的时间维度上计算累积的均值和方差,来减少序列内部的协变量偏移。这种归一化方法特别适用于自回归序列建模任务,因为它可以防止未来信息的泄露,同时提高了模型的稳定性。

MEGALODON采用了归一化注意力机制(Normalized Attention Mechanism),这是一种改进的注意力计算方法,通过使用归一化的共享表示来计算查询(Q)、键(K)和值(V)。这种方法简化了注意力分数的计算,并且通过引入非线性,提高了模型的表达能力。

MEGALODON还提出了预归一化和双跳残差配置(Pre-Norm with Two-hop Residual Configuration)。这种配置通过重新组织每个块中的残差连接,减少了深层网络训练中的不稳定性。在这种配置中,输入序列在经过归一化后直接用于残差连接,从而简化了模型的架构并提高了训练的稳定性。

MEGALODON架构通过将输入序列分块处理,实现了线性的计算和内存复杂度。这意味着无论序列长度如何,模型都能够以恒定的资源消耗来处理数据,这对于大规模语言模型的预训练和推理尤为重要。

MEGALODON还提出了一种新的分布式预训练算法,该算法通过在时间步/序列维度上进行并行化,进一步提高了模型的可扩展性。这种并行化策略允许模型在保持通信开销较低的同时,有效地利用多个计算设备,加速了模型的训练过程。

研究人员对MEGALODON架构进行了全面的评估,以验证其在长上下文序列建模上的性能。为此,他们构建了一个70亿参数的模型,并在2万亿个训练token上进行了预训练,这是一个前所未有的规模,旨在模拟真实世界中可能遇到的复杂和庞大的数据集。

在实验中,MEGALODON展现出了卓越的效率和可扩展性。与LLAMA2相比,MEGALODON在训练困惑度上取得了显著的降低,这是一个衡量模型对数据集预测准确性的关键指标。低困惑度意味着模型在预测下一个token时更加自信,这在长序列建模中尤为重要,因为即使是微小的误差也可能会随着序列的增长而累积。

在不同上下文长度下,LLAMA2-7B和MEGALODON-7B每个设备的平均每秒单词数(Words Per Second, WPS),用于衡量训练速度

除了训练效率外,MEGALODON在多个下游任务中也表现出色。研究人员在不同的学术基准测试中对MEGALODON进行了评估,包括常识推理、世界知识问答和阅读理解等任务。在这些测试中,MEGALODON不仅超越了LLAMA2,而且在某些任务上达到了与更大模型规模相当的性能水平。

在长上下文评估中,MEGALODON的能力得到了进一步的证明。研究人员构建了一个包含不同上下文长度的验证数据集,从几千到两百万token不等。MEGALODON在这个数据集上的表现显示,随着上下文长度的增加,模型的预测性能稳步提高,这表明MEGALODON能够有效地利用更长的上下文信息来做出更准确的预测。

表 2: 列出了MEGALODON-7B和其他7B规模的开源长上下文模型在Scrolls数据集上的长上下文开放书籍问答(QA)任务的结果

MEGALODON在中等规模的基准测试中也显示出了其鲁棒性。研究人员在图像分类和自回归语言建模等任务上对MEGALODON进行了测试。在ImageNet-1K数据集上的图像分类任务中,MEGALODON达到了比现有最先进模型更高的准确率。在PG-19数据集上的自回归语言建模任务中,MEGALODON同样展现出了更低的困惑度,这意味着它能够更准确地预测文本序列中的下一个单词。

在ImageNet-1K数据集上,不同模型的Top-1准确率,用于评估MEGALODON在图像分类任务上的表现

这些实验结果不仅证明了MEGALODON在长上下文序列建模上的有效性,也展示了其在多种任务和数据类型上的通用性和鲁棒性。MEGALODON的这些特性使其成为一个有潜力的架构,可以应用于各种实际应用中,包括但不限于自然语言处理、计算机视觉和其他需要处理长序列数据的领域。随着人工智能技术的不断进步,MEGALODON架构有望在未来的AI研究和应用中发挥重要作用。

论文链接:https://arxiv.org/abs/2404.08801

GitHub 地址:https://github.com/XuezheMax/megalodon

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Redis 7.2.x 主从复制+哨兵模式

IP操作系统服务版本192.168.140.153CentOS 7redis-master,sentinel7.2.5192.168.140.156CentOS 7redis-slave,sentinel7.2.5192.168.140.159CentOS 7redis-slave,sentinel7.2.5 一、安装Redis 配置主从复制 参考下面文档: Redis 7.2.x 主从复制-CSDN博客文章浏览…

论文略读:Onthe Expressivity Role of LayerNorm in Transformers’ Attention

ACL 2023 研究了LayerNorm在 Transformers 中对注意力的作用LayerNorm为Transformer的Attention提供了两个重要的功能: 投影,projection LayerNorm 帮助 Attention 设计一个注意力查询,这样所有的Key都可以平等地访问通过将Key向量投影到同一…

pinctrl 和 gpio 子系统实验学习

pinctrl 子系统主要工作内容如下: ①、获取设备树中 pin 信息。 ②、根据获取到的 pin 信息来设置 pin 的复用功能 ③、根据获取到的 pin 信息来设置 pin 的电气特性,比如上/下拉、速度、驱动能力等。 对于我们使用者来讲,只需要在设备树里面…

【计算机网络基础】OSI七层网络模型 TCPIP四层网络模型

文章目录 ISO介绍网络模型介绍OSI七层模型OSI七层模型介绍OSI七层特点一、TCP/IP四层模型介绍二、TCP/IP四层模型TCP/IP协议簇一次C/S通信 🌈你好呀!我是 山顶风景独好 🎈欢迎踏入我的博客世界,能与您在此邂逅,真是缘分…

人工智能和机器学习这两个概念有什么区别?

什么是人工智能? 先来说下人工智能,人工智能(Artificial Intelligence),英文缩写为AI,通俗来讲就是用机器去做在过去只有人能做的事。 人工智能最早是由图灵提出的,在1950年,计算机…

【背就有效】软考中项计算公式汇总,简答题轻松拿下

宝子们注意啦!系统集成管理师的报名8月就要开始啦!你准备好迎接挑战了吗? 备考下半年软考的小伙伴们,在这里给大家准备了一份超实用的备考秘籍——系统集成项目管理工程师计算公式汇总。亲测有效,每天只需抽出一点时间…

数据库错误[ERR] 1071 - Specified key was too long; max key length is 1000 bytes

环境:phpstudy的mysql8 索引长度问题: 试了很多解决办法,例如需改配置: set global innodb_large_prefixON; set global innodb_file_formatBARRACUDA; 试了还是有问题,直接启动不了了。因为mysql8取消了这个配置。…

[linux]基于Ubuntu24.04原内核6.8.0升级到6.9.0

物理机操作系统: 虚拟机操作系统: Ubuntu 24.04 下载地址: https://mirror.nju.edu.cn/ubuntu-releases/24.04/ubuntu-24.04-desktop-amd64.iso VM版本信息: 内核源代码来源: https://ftp.sjtu.edu.cn/sites/ftp.kern…

React+TS前台项目实战(六)-- 全局常用组件Button封装

文章目录 前言Button组件1. 功能分析2. 代码注释说明3. 使用方式4. 效果展示 总结 前言 今天这篇主要讲全局按钮组件封装,可根据UI设计师要求自定义修改。 Button组件 1. 功能分析 (1)可以通过className属性自定义按钮样式,传递…

ZDH-智能营销-标签模块

目录 主题 项目源码 预览地址 安装包下载地址 标签模块 什么是标签 标签场景分类 标签设计 标签按照场景做了分类,但是运营人员需要感知到吗 标签按照场景做了分类,底层的计算引擎是否需要划分? 标签模块,是否需要涉及…

利安科技上市首日股价大涨:2023营收净利润下滑,募资金额大幅缩水

《港湾商业观察》施子夫 6月7日,宁波利安科技股份有限公司(以下简称,利安科技)正式在深交所创业板挂牌上市,股票简称为利安科技,股票代码300784。 上市当天,利安科技股价大涨348.76%。 2022年…

DriveWorld:一个预训练模型大幅提升检测+地图+跟踪+运动预测+Occ多个任务性能

1. 写在前面 以视觉为中心的自动驾驶技术近期因其较低的成本而引起了广泛关注,而预训练对于提取通用表示至关重要。然而,当前的以视觉为中心的预训练通常依赖于2D或3D预训练任务,忽视了自动驾驶作为4D场景理解任务的时序特征。这里通过引入一…

Golang | Leetcode Golang题解之第135题分发糖果

题目&#xff1a; 题解&#xff1a; func candy(ratings []int) int {n : len(ratings)ans, inc, dec, pre : 1, 1, 0, 1for i : 1; i < n; i {if ratings[i] > ratings[i-1] {dec 0if ratings[i] ratings[i-1] {pre 1} else {pre}ans preinc pre} else {decif dec…

mmdetection使用未定义backbone训练

首先找到你需要用到的 backbone&#xff0c;一般有名的backbone 都会在github有相应的代码开源和预训练权重提供 本文以mobilenetv3 fastercnn 作为举例&#xff0c;在mmdetection中并未提供 mobilenetv3&#xff0c;提供的仅有 mobilenetv2&#xff1b; 在github上找到 mobil…

Selenium三种等待方式的使用!

UI自动化测试&#xff0c;大多都是通过定位页面元素来模拟实际的生产场景操作。但在编写自动化测试脚本中&#xff0c;经常出现元素定位不到的情况&#xff0c;究其原因&#xff0c;无非两种情况&#xff1a;1、有frame&#xff1b;2、没有设置等待。 因为代码运行速度和浏览器…

【Vue】购物车案例-构建项目

脚手架新建项目 (注意&#xff1a;勾选vuex) 版本说明&#xff1a; vue2 vue-router3 vuex3 vue3 vue-router4 vuex4/pinia vue create vue-cart-demo需要勾选上vuex&#xff0c;由于这个项目只有一个页面&#xff0c;vuex可勾可不勾 将原本src内容清空&#xff0c;替换成教学…

VISIO安装教程+安装包

文章目录 01、什么是VISIO&#xff1f;02、安装教程03、常见安装问题解析 01、什么是VISIO&#xff1f; Visio是由微软开发的流程图和图表绘制软件&#xff0c;它是Microsoft Office套件的一部分。Visio提供了各种模板和工具&#xff0c;使用户能够轻松创建和编辑各种类型的图…

SwiftUI七使用UI控件

代码下载 在应用中&#xff0c;用户可以创建一个简介来描述他们自已的个人情况。为了让用户可以编辑自己的简介&#xff0c;需要添加一个编辑模式并设计一个偏好设置界面。这里使用多种通用控件来展示用户的各种数据&#xff0c;并在用户保存他们所做的数据修改时更新地标数据…

PCB 蚀刻因子(Etch Factor)

The standard definition for Etch Factor is to specify it as the ratio of trace thickness / amount of over-etching. This gives the following formula: Etch Factor T/[0.5(W1-W2)] 例如&#xff0c;W1 5.2mil&#xff0c; W1 4.2mil&#xff0c; T 3.7mil&#…

四维轻云|支持多源数据融合、城市级实景三维模型展示

四维轻云是一款轻量化的地理空间数据管理云平台&#xff0c;具有项目管理、数据上传、场景搭建、发布分享、素材库等功能模块&#xff0c;支持多用户在线协作管理&#xff0c;实现了轻量化、便捷化的空间数据应用。 1、多源数据融合 平台支持管理、展示各类空间数据&#xff…