Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

DenseMamba:大模型的DenseNet时刻,Mamba和RetNet精度显著提升

近期,来自华为诺亚方舟实验室的研究者提出了 DenseSSM,用于增强 SSM 中各层间隐藏信息的流动。通过将浅层隐藏状态有选择地整合到深层中,DenseSSM 保留了对最终输出至关重要的精细信息。DenseSSM 在保持训练并行性和推理效率的同时,通过密集连接实现了性能提升。该方法可广泛应用于各种 SSM 类型,如 Mamba 和 RetNet。

随着 ChatGPT 的突破性进展,大型语言模型(LLMs)迎来了一个崭新的里程碑。这些模型在语言理解、对话交互和逻辑推理方面展现了卓越的性能。过去一年,人们目睹了 LLaMA、ChatGLM 等模型的诞生,它们基于 Transformer 架构,采用多头自注意力(MHSA)机制来捕捉词汇间的复杂关系,尽管 MHSA 模块在模型中扮演着核心角色,但其在推理过程中对计算和内存资源的需求却极为庞大。具体来说,对于长度为 N 的输入句子,自注意力的计算复杂度高达 O (N^2),而内存占用则达到了 O (N^2D),其中 D 是模型的维度。

为了应对这一挑战,最新的研究致力于简化 Transformer 架构,以降低其在计算和空间上的复杂度。研究者们探索了多种创新方法,包括卷积语言模型、循环单元、长上下文模型,以及状态空间模型(SSMs)。这些新兴技术为构建高效能的 LLMs 提供了强有力的替代方案。SSMs 通过引入高效的隐藏状态机制,有效处理长距离依赖问题,同时保持了训练的并行性和推理的高效率。隐藏状态能够在时间维度上传递信息,减少了在每一步中访问历史词汇的计算负担。通过状态转移参数 A,隐藏状态能够将前一时间步的信息传递至当前时间步,实现对下一个词汇的自回归预测。

尽管隐藏状态在 SSMs 中起着至关重要的作用,但其在以往的研究中并未得到充分研究。不同层的权重和隐藏特征包含了从细粒度到粗粒度的多层次信息。然而,在早期的 SSMs 版本中,隐藏状态仅在当前层内流动,限制了其传递更深层信息的能力,从而影响了模型捕获丰富层次信息的能力。

为了解决这个挑战,华为诺亚方舟实验室的科研团队发表了新工作《DenseMamba: State Space Models with Dense Hidden Connection for Efficient Large Language Models》, 提出一个适用于各类 SSM 模型例如 Mamba 和 RetNet 的 DenseSSM 方法,该方法有选择地将浅层隐藏状态整合到深层,保留了对最终输出至关重要的浅层细粒度信息,以增强深层感知原始文本信息的能力。

图片

  • 论文链接:https://arxiv.org/abs/2403.00818

  • 项目主页:https://github.com/WailordHe/DenseSSM

文章首先分析了状态空间模型(SSMs)中的隐藏状态退化问题,

图片

上标 “l” 表示第 l 个块。其中,Θ(·) 是从 SSM 模块的最后一个输出到输入的转换,例如卷积和前馈网络(FFN)。从公式 (7) 可以看出,从第 (l-m) 层到第 l 层的隐藏信息传递需要经过 m 个变换块和 m 次 BC 矩阵乘法。这样复杂的计算过程可能导致显著的信息丢失,这意味着在第 l 层尝试检索浅层的某些信息变得非常困难和不清晰。

方法

密集(Dense)隐藏层连接

在上述分析中发现随着层深度的增加,SSM 中重要隐藏状态的衰减。因此,DenseSSM 提出了一种密集连接的隐藏状态方法,以更好地保留来自浅层的细粒度信息,增强深层感知原始文本信息的能力。对于第 l 个块,DenseSSM 在其前 m 个块中密集连接隐藏状态。

图片

首先,收集浅层隐藏状态,并引入一个选择性转换模块 φ,同时将它们投影到目标层的子空间并选择有用的部分:

图片

操作图片是融合中间隐藏向量和当前隐藏状态的函数。具有所提出的密集隐藏层连接的 SSM 被称为 DenseSSM, 下图为递归模式的 DenseSSM 示例。

图片

DenseSSM 也可以基于卷积模式以实现高效训练。根据状态空间模型(SSM)的公式图片可以得到:

图片

这个过程可以通过对输入序列图片进行卷积来实现:

图片

在文章所提出的 DenseSSM 中,可以获得隐藏状态加强的 SSM 的输出:

图片

DenseSSM 方法的并行实现示例图:

图片

Selective Transition Module (选择性转换模块)

图片

选择性转换模块 φ(·) 的目的是将输入投影到目标子空间,并同时选择隐藏信息的有用部分。通过投影层和门控选择机制实现了选择性转换模块,如上图所示。首先,前 m 个 SSM 块中的隐藏状态会被投影到相同的空间:

图片

然后,根据输入图片生成门控权重,并使用它们来选择有用的隐藏状态:

图片

在实践中作者保持了简单且高效的实现。投影层使用线性变换实现,而门控模块则使用参数高效的带有激活函数的两层 MLP。

Hidden Fusion Module (隐藏层融合模块)

选择性转换模块后从浅层获得了选择的隐藏状态,即图片后,DenseSSM 方法利用一个隐藏融合模块将这些精选的浅层隐藏状态与当前层的隐藏状态结合起来。由于这些精选状态已经被投影到相同的空间,因此可以简单地将它们累加到当前层的隐藏状态上:

图片

为了保持模型的高效性,其他可能的实现方式,例如拼接和交叉注意力机制没有被使用。

扩展到 RetNet

RetNet 可以被视为一种状态空间模型,它利用线性注意力来简化自注意力的计算复杂度。与标准 Transformer 相比具有快速推理和并行化训练兼得的优势。

图片

其中,图片是循环状态, RetNet 的密集 KV 连接执行方式如下。首先,浅层的 K 和 V 被连接起来:

图片

然后,这些 K 和 V 被注入到当前层的原始键(或值)中:

图片

配备了使用所提出 DenseSSM 方法的密集键值(KV)连接的 RetNet 被称为 DenseRetNet,如下图所示。

图片

此外,DenseRetNet 也可以在并行模式下实现,也就是说,可以在 GPU 或 NPU 上并行训练。DenseRetNet 的并行模式公式如下:

图片

实验

文章进行了全面的实验,以验证所提出的 DenseSSM 的有效性。这些实验在不同的架构上进行,包括 RetNet 和 Mamba。

预训练数据

在实验中,选择了 The Pile 数据集的一个子集,并从头开始训练所有模型。为了确保训练集包含 150 亿(15B)个 tokens,对数据集进行了随机抽样。在所有实验中,统一使用了 LLaMA 分词器来处理这些数据。

评估数据集

在评估模型性能时,特别关注了模型在多种下游任务上的零样本和少样本学习能力。这些任务包括了一系列测试常识推理和问答的数据集,例如 HellaSwag、BoolQ、COPA、PIQA、Winograd、Winogrande、StoryCloze、OpenBookQA、SciQ、ARC-easy 和 ARC-challenge。此外,文章还报告了 WikiText 和 LAMBADA 的词困惑度指标。所有评估都通过使用 LM evaluation harness 标准化的评估工具进行,以确保评估模型能力的一致性。

实验设置

为了验证提出的 DenseSSM 机制的有效性,选择了 350M 和 1.3B 两种模型规格进行实验。所有模型都是从头开始训练的,并进行了一个 Epoch 的训练,共使用了 1.5B tokens。训练时,设置训练的 batch size 为 0.5M,序列长度为 2048 个 token。训练过程中使用了 AdamW 优化器,并采用了多项式学习率衰减,warm-up 比例设置为总训练步数的 1.5%。权重衰减设置为 0.01,梯度裁剪设置为 1。

DenseRetNet 的实验

DenseRetNet 模型的大小和超参数设置详细列出如下。此外,DenseRetNet 模型中还进一步集成了全局注意力单元(GAU)。GAU 将注意力机制与前馈网络(FFN)块结合为一个单元,这使得模型能够同时进行通道混合和 token 混合。与原始的 GAU 不同,多头机制仍然被采用以实现多尺度的指数衰减,这种设计旨在提高模型对不同尺度特征的捕捉能力,从而提升性能。

图片

在通用语料库以及包括常识推理和问答在内的多种下游任务上,对 DenseRetNet 模型进行了评估。实验结果的比较表格显示,DenseRetNet 模型在 Wikitext 和 LAMBADA 语料库上取得了更低的困惑度。此外,在零样本和少样本设置的下游任务中,DenseRetNet 表现出了显著的优势。与 RetNet 相比,DenseRetNet 显著提升了性能,并且在与基于 Transformer 的语言模型的比较中,实现了更优越的性能表现。这些结果表明,DenseRetNet 在处理自然语言处理任务时,具有强大的能力和潜力。

图片

DenseMamba 的实验

下表详细列出了 DenseMamba 模型的参数设置。由于 DenseMamba 使用的分词器相比于 Mamba 模型中使用的 GPT-NeoX 分词器规模较小,为了使参数数量相匹配,作者在模型中增加了两层。除此之外,模型结构和其他训练设置均遵循了 Mamba 论文中的描述。具体而言,对于 360M 参数的模型,学习率被设定为 3e-4;对于 1.3B 参数的模型,学习率被设定为 2e-4。在这两种情况下,均没有采用 dropout 技术。

图片

下表比较了 DenseMamba 与相对应模型的性能。DenseMamba 在测试集上表现出卓越的困惑度和准确性,优于 Mamba 和其他基于 Transformer 的模型。

图片

总结

文章提出了一个新的框架 ——DenseSSM(密集状态空间模型),旨在通过增强隐藏信息在不同层之间的流动来提升状态空间模型(SSM)的性能。在 SSM 中,隐藏状态是存储关键信息的核心单元,更有效地利用这些状态对于模型的基本功能至关重要。为了实现这一目标,作者提出了一种方法,即从浅层收集隐藏状态,并将它们有选择性地融合到深层的隐藏状态中,这样可以增强 SSM 对文本低层信息的感知能力。

DenseSSM 方法的设计考虑到了保持 SSM 原有的优点,如高效的自回归推理能力和高效的并行训练特性。通过将 DenseSSM 方法应用于流行的架构,例如 RetNet 和 Mamba,作者成功地创造了具有更强大的基础语言处理能力的新架构。这些新架构在公共基准测试中表现出了更高的准确性,证明了 DenseSSM 方法的有效性。

产业DenseSSMDenseMamba华为诺亚方舟实验室
相关数据
华为机构

华为创立于1987年,是全球领先的ICT(信息与通信)基础设施和智能终端提供商。

https://www.huawei.com/cn/
激活函数技术

在 计算网络中, 一个节点的激活函数定义了该节点在给定的输入或输入的集合下的输出。标准的计算机芯片电路可以看作是根据输入得到"开"(1)或"关"(0)输出的数字网络激活函数。这与神经网络中的线性感知机的行为类似。 一种函数(例如 ReLU 或 S 型函数),用于对上一层的所有输入求加权和,然后生成一个输出值(通常为非线性值),并将其传递给下一层。

权重技术

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

感知技术

知觉或感知是外界刺激作用于感官时,脑对外界的整体的看法和理解,为我们对外界的感官信息进行组织和解释。在认知科学中,也可看作一组程序,包括获取信息、理解信息、筛选信息、组织信息。与感觉不同,知觉反映的是由对象的各样属性及关系构成的整体。

自注意力技术

自注意力(Self-attention),有时也称为内部注意力,它是一种涉及单序列不同位置的注意力机制,并能计算序列的表征。自注意力在多种任务中都有非常成功的应用,例如阅读理解、摘要概括、文字蕴含和语句表征等。自注意力这种在序列内部执行 Attention 的方法可以视为搜索序列内部的隐藏关系,这种内部关系对于翻译以及序列任务的性能非常重要。

基准技术

一种简单的模型或启发法,用作比较模型效果时的参考点。基准有助于模型开发者针对特定问题量化最低预期效果。

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

学习率技术

在使用不同优化器(例如随机梯度下降,Adam)神经网络相关训练中,学习速率作为一个超参数控制了权重更新的幅度,以及训练的速度和精度。学习速率太大容易导致目标(代价)函数波动较大从而难以找到最优,而弱学习速率设置太小,则会导致收敛过慢耗时太长

逻辑推理技术

逻辑推理中有三种方式:演绎推理、归纳推理和溯因推理。它包括给定前提、结论和规则

超参数技术

在机器学习中,超参数是在学习过程开始之前设置其值的参数。 相反,其他参数的值是通过训练得出的。 不同的模型训练算法需要不同的超参数,一些简单的算法(如普通最小二乘回归)不需要。 给定这些超参数,训练算法从数据中学习参数。相同种类的机器学习模型可能需要不同的超参数来适应不同的数据模式,并且必须对其进行调整以便模型能够最优地解决机器学习问题。 在实际应用中一般需要对超参数进行优化,以找到一个超参数元组(tuple),由这些超参数元组形成一个最优化模型,该模型可以将在给定的独立数据上预定义的损失函数最小化。

注意力机制技术

我们可以粗略地把神经注意机制类比成一个可以专注于输入内容的某一子集(或特征)的神经网络. 注意力机制最早是由 DeepMind 为图像分类提出的,这让「神经网络在执行预测任务时可以更多关注输入中的相关部分,更少关注不相关的部分」。当解码器生成一个用于构成目标句子的词时,源句子中仅有少部分是相关的;因此,可以应用一个基于内容的注意力机制来根据源句子动态地生成一个(加权的)语境向量(context vector), 然后网络会根据这个语境向量而不是某个固定长度的向量来预测词。

语料库技术

语料库一词在语言学上意指大量的文本,通常经过整理,具有既定格式与标记;事实上,语料库英文 "text corpus" 的涵意即为"body of text"。

逻辑技术

人工智能领域用逻辑来理解智能推理问题;它可以提供用于分析编程语言的技术,也可用作分析、表征知识或编程的工具。目前人们常用的逻辑分支有命题逻辑(Propositional Logic )以及一阶逻辑(FOL)等谓词逻辑。

长距离依赖技术

也作“长距离调序”问题,在机器翻译中,比如中英文翻译,其语言结构差异比较大,词语顺序存在全局变化,不容易被捕捉

自然语言处理技术

自然语言处理(英语:natural language processing,缩写作 NLP)是人工智能和语言学领域的分支学科。此领域探讨如何处理及运用自然语言;自然语言认知则是指让电脑“懂”人类的语言。自然语言生成系统把计算机数据转化为自然语言。自然语言理解系统把自然语言转化为计算机程序更易于处理的形式。

优化器技术

优化器基类提供了计算梯度loss的方法,并可以将梯度应用于变量。优化器里包含了实现了经典的优化算法,如梯度下降和Adagrad。 优化器是提供了一个可以使用各种优化算法的接口,可以让用户直接调用一些经典的优化算法,如梯度下降法等等。优化器(optimizers)类的基类。这个类定义了在训练模型的时候添加一个操作的API。用户基本上不会直接使用这个类,但是你会用到他的子类比如GradientDescentOptimizer, AdagradOptimizer, MomentumOptimizer(tensorflow下的优化器包)等等这些算法。

常识推理技术

常识推理是人工智能(AI)的一个分支,它关注模拟人类每天遇到的普通情境的类型和本质的假设。这些假设包括对人和物体的物理特性,目的,意图和行为的判断,以及他们的行为和相互作用的可能结果。展示常识推理的设备将能够预测结果并得出类似于人类民间心理学(人类对人们的行为和意图进行推理的天生能力)和天真物理学(人类对物理世界的自然理解)的结论。

语言模型技术

统计式的语言模型是借由一个几率分布,而指派几率给字词所组成的字串。语言模型经常使用在许多自然语言处理方面的应用,如语音识别,机器翻译,词性标注,句法分析和资讯检索。

推荐文章
暂无评论
暂无评论~