如何评价最新的Mamba?真的能超越Transformer吗?最新综述!

人工智能 新闻
今天为大家分享香港理工大学Mamba最新的综述!

本文经自动驾驶之心公众号授权转载,转载请联系出处。

写在前面&笔者的个人理解

深度学习作为一项重要技术,引发了人工智能(AI)的一场非凡革命,导致了人类生活方式的巨大变化。作为最具代表性的架构,Transformers已经为众多高级模型提供了支持,特别是包含数十亿个参数的大型语言模型(LLM),成为深度学习的基石。尽管取得了令人瞩目的成就,但Transformer仍然面临着固有的局限性,特别是注意力计算的二次计算复杂性导致的耗时推理。最近,一种名为Mamba的新型架构从经典状态空间模型中汲取灵感,成为构建基础模型的有前景的替代方案,在保持序列长度接近线性可扩展性的同时,为Transformers提供了可比的建模能力。这引发了越来越多的研究,积极探索Mamba在各个领域取得令人印象深刻的性能的潜力。鉴于这种快速发展,迫切需要进行系统审查,巩固现有的Mamba授权模型,全面了解这种新兴的模型架构。因此,在本次调查中,我们对最近的曼巴相关研究进行了深入调查,主要从三个方面进行:基于曼巴的模型的进展、使曼巴适应各种数据的技术以及曼巴可以擅长的应用。具体来说,我们首先回顾各种代表性深度学习模型的基础知识以及Mamba-1和2的细节作为估计。然后,为了展示Mamba对人工智能的意义,我们全面回顾了有关Mamba模型架构设计、数据适应性和应用的相关研究。最后,我们讨论了当前的局限性,并探索了各种有前景的研究方向,为未来的研究提供了更深入的见解。

本文简介

在过去的二十年里,深度学习作为最突出的人工智能(AI)技术,在医疗保健、自主系统、推荐系统和金融服务等各个领域带来了革命。这一时期见证了众多深度神经网络(DNN)的出现,这些网络极大地改变了人类的生活方式,为个人提供了巨大的便利。一个值得注意的例子是U-Net,这是一种视野内的强大深度学习模型,广泛应用于医学成像,用于检查MRI和CT等放射学扫描。其应用有助于疾病的识别和诊断,展示了其在这一关键医疗保健领域的有效性。此外,图神经网络(GNN)用于处理图结构数据以支持智能服务,例如向用户推荐个性化内容、产品或服务的推荐系统。此外,循环神经网络(RNN)在机器翻译中被广泛采用,因为它们能够捕获准确翻译所必需的顺序和上下文信息,使来自不同语言背景的个人能够有效地交流和包含彼此的想法、观点和信息。

在各种深度学习架构中,Transformers最近脱颖而出,并在广泛的应用领域确立了其主导地位。例如,作为最具代表性的大型基础模型,像ChatGPT这样的大型语言模型(LLM)从根本上建立在Transformer架构上。通过将模型规模扩展到数十亿,并在各种数据源的混合上进行训练,这些基于Transformer的模型展示了人类水平的智能,在语言理解、常识推理和内容学习方面具有令人印象深刻的能力。这一显著的成功得益于注意力机制,它使基于Transformer的模型能够专注于输入序列的相关部分,并促进更好的上下文理解。然而,注意力机制也引入了显著的计算开销,该开销随着输入大小的平方而增加,这给处理纵向输入带来了挑战。例如,计算成本的快速增长使Transformers处理大量序列变得不切实际或不可行,从而限制了它们在文档级机器翻译或长文档摘要等任务中的适用性。

最近,一种有前景的架构,结构化状态空间序列模型(SSM),已经出现,可以有效地捕获序列数据中的复杂依赖关系,成为Transformer的强大竞争对手。这些模型受经典状态空间模型的启发,可以被认为是递归神经网络和卷积神经网络的融合。它们可以通过递归或卷积运算高效计算,实现序列长度的线性或近线性缩放,从而显著降低计算成本。更具体地说,作为最成功的SSM变体之一,Mamba实现了与Transformer相当的建模能力,同时保持了序列长度的线性可扩展性,将其推向了焦点领域。Mamba首先引入了一种简单而有效的选择机制,通过基于输入对SSM参数进行参数化,使模型能够过滤掉不相关的信息,同时无限期地保留必要和相关的数据。然后,Mamba提出了一种硬件感知算法,通过扫描而不是卷积来定期计算模型,在A100 GPU上实现了高达3倍的计算速度。如图1所示,Mamba对复杂和长度顺序数据的强大建模能力,以及近乎线性的可扩展性,使其成为一种新兴的基础模型,有望彻底改变各种研究和应用领域,如计算机视觉、自然语言处理、医疗保健等。例如,Zhu等人提出了Vim,它比DeiT快2.8倍,在提取高分辨率图像的特征时节省了86.8%的GPU内存。Dao和Gu展示了SSM和注意力变体之间的联系,并提出了一种新的架构,该架构改进了选择性SSM,使语言建模速度提高了2-8倍。

图片

在Mamba强大的长序列建模能力及其高效性的推动下,出现了大量文献,重点是在各种下游任务中使用和改进Mamba。鉴于与曼巴相关的研究大幅增加,对现有文献进行全面回顾并考虑未来研究的潜在方向至关重要。因此,在这项调查中,我们从几个角度对曼巴进行了全面的回顾,为新来者提供了对曼巴内部运作的基本了解,同时帮助经验丰富的从业者了解其最新发展。具体来说,剩下的调查组织如下:在第2节中,我们回顾了各种代表性深度神经网络的背景知识,包括RNN、Transformers和状态空间模型,而Mamba的详细信息在第3节中介绍。接下来,我们在第4节中从块设计、扫描模式和内存管理的角度总结了基于Mamba的研究的最新进展。然后,第5节介绍了使Mamba适应各种数据的技术,包括顺序和非顺序数据。此外,第6节介绍了Mamba模型的代表性应用,第7节介绍了挑战和未来方向。最后,我们在第8节总结了整个调查。

与我们的调查同时,发布了几项相关调查,纯粹关注状态空间模型和视觉曼巴。与这些调查不同,本文主要关注曼巴的相关研究。它从一个新的角度系统地分析了现有文献,以探索Mamba架构的演变以及基于Mamba的模型中使用的数据自适应方法。

Mamba

为了解决传统SSM在上下文感知能力方面的上述缺点,[55]提出了Mamba作为一种潜在的替代方案,有望成为通用的序列基础模型骨干。最近,Mamba-2[提出了结构化空间状态对偶性(SSD),建立了一个将结构化SSM和各种形式的注意力联系起来的稳健理论框架,使我们能够将最初为变压器开发的算法和系统优化转移到SSM。在本节中,我们将对曼巴和曼巴-2进行简洁明了的介绍。

传统的SSM在建模文本和其他信息密集型数据方面的效果有限,阻碍了它们在深度学习方面的进展。在追求赋予SSM Transformer建模能力的过程中,Gu和Dao引入了三种基于结构化状态空间模型的创新技术,即基于高阶多项式投影算子(HiPPO)的内存初始化、选择机制和硬件感知计算,如图3所示。这些技术旨在增强SSM在长距离线性时间序列建模中的能力。特别是,初始化策略建立了一个连贯的隐藏状态矩阵,有效地促进了长距离记忆。然后,选择机制使SSM能够获取内容感知表示。最后,Mamba设计了两种硬件感知计算算法,并行联想扫描和内存重构,以提高训练效率。

图片

HiPPO-based Memory Initialization:从序列数据中建模和学习是当代机器学习的基本挑战,是各种任务的基础,包括语言建模、语音识别和视频处理。对复杂和长期的时间依赖性进行建模的一个基本组成部分在于内存,包括存储和整合来自先前时间步骤的信息的能力。与RNN类似,保留和忘记历史隐藏状态(即矩阵A)在SSM中起着至关重要的作用,以实现令人满意的性能。在之前的结构化状态空间序列模型(SSM)中,有人建议进行特殊的初始化,特别是在复值模型的情况下。事实证明,这些特殊的初始化在各种情况下都是有益的,包括数据可用性有限的情况。同样,Mamba主要关注隐藏状态矩阵A的初始化,以捕获复杂的时间依赖关系。这是通过利用HiPPO理论和创新的勒让德尺度(LegS)来实现的,确保全面考虑完整的历史背景,而不是有限的滑动窗口。具体来说,HiPPO LegS为所有历史数据点分配了统一的权重,可以表示为:

图片

基于HiPPO理论,Mamba为复杂和真实的情况引入了两种简单的初始化方法,即S4D-Lin和S4D-real,如

图片

Selection Mechanism:由于时间不变性的特性,传统的状态空间模型对于基于特定模型输入(即内容感知建模能力)产生个性化输出是必不可少的。为了给SSM提供类似于注意力机制的能力,Mamba设计了一种时变选择机制,根据模型输入对权重矩阵进行参数化。这种创新使SSM能够过滤掉无关的信息,同时无限期地保留相关细节。形式上,选择机制涉及将区间D和矩阵B、C设置为输入x的函数,可以表示为:

图片图片图片

Hardware-aware Computation:该选择机制旨在克服线性时不变模型的局限性。尽管如此,它还是对高效训练提出了挑战:SSM的卷积核变得依赖于输入,导致无法执行并行计算。为了解决这个问题,Mamba使用了两种计算技术,即并行关联扫描(也称为并行前缀和)和内存重新计算。首先,并行关联扫描利用线性关联计算的特性和现代加速器(GPU和TPU)的并行性,以内存高效的方式执行选择性SSM的计算。更具体地说,并行关联扫描将模型训练的计算复杂度从降低到。扫描的核心是在给定的输入上构建一个平衡的二叉树,并从根开始来回扫描。换句话说,并行关联扫描首先从叶子遍历到根(即,向上扫描),在树的内部节点处创建部分和。然后,它反转遍历,从根向上移动到树上,使用部分和构建整个扫描(即向下扫描)。另一方面,Mamba利用传统的重新计算方法来减少训练选择性SSM层的总体内存需求。特别是,在并行关联扫描的前向传递过程中,Mamba与大小为BLDN的干扰中间状态保持距离,以防止内存扩展。相反,它在反向过程中重新计算这些中间状态以进行梯度计算。通过这样做,重新计算避开了在GPU内存单元之间读取元素的必要性。除了优化扫描操作的内存需求外,Mamba-1还扩展了重新计算的使用,以提高整个SSM层的效率。这种优化包括投影、卷积和激活,这些通常需要大量的内存资源,但可以快速重新计算。

Mamba-2: State Space Duality

Transformers在各个领域的深度学习成功中发挥了至关重要的作用,激发了各种技术的发展,如参数高效微调[95]、灾难性遗忘缓解[96]和模型量化[195],旨在从各个角度提高模型性能。为了使状态空间模型能够访问并受益于最初为Transformer开发的有价值的技术,Mamba-2[29]引入了一个名为结构化状态空间对偶性(SSD)的综合框架,该框架在SSM和不同形式的注意力之间建立了理论联系。公式化:

图片

基于SSD,Mamba-2通过块分解矩阵乘法算法开发了一种更具硬件效率的计算方法。具体来说,通过矩阵变换将状态空间模型视为半可分矩阵,Mamba-2将计算分解为矩阵块,其中对角块表示块内计算。相比之下,非对角块表示通过SSM的隐藏状态分解的块间计算。这种方法使Mamba-2的训练过程比Mamba-1的并行联想扫描快2-8倍,同时保持与Transformer的竞争力。

Mamba Block

在本小节中,我们总结了Mamba-1和Mamba-2的区块设计。图4显示了这两种架构的比较。Mamba-1的动机是以SSM为中心的观点,其中选择性SSM层的任务是从输入序列X到Y进行映射。在这种设计中,(a,B,C)的线性投影是在创建X的初始线性投影之后应用的。然后,输入令牌和状态矩阵通过选择性SSM单元,利用并行关联扫描产生输出Y。之后,Mamba-1使用跳过连接来鼓励特征重用和模型训练过程中经常出现的所有退化问题。最后,通过将该块与标准归一化和残差连接交织堆叠,构建了Mamba模型。

图片

至于Mamba-2,它引入了SSD层,旨在创建一个从[X,A,B,C]到Y的映射。这是通过在块的开头用单个投影同时处理[X,A,B,C]来实现的,类似于标准注意力架构并行生成Q,K,V投影的方式。换句话说,Mamba-2块通过去除连续的线性投影简化了Mamba-1块。与Mamba-1中的并行选择性扫描相比,这使得SSD结构的计算速度更快。此外,在跳跃连接后添加了一个归一化层,旨在提高训练稳定性。

Advancements in Mamba Models

状态空间模型和Mamba最近得到了探索,并成为一种有前景的替代方案,作为基础模型骨干。虽然Mamba在自然语言处理方面表现出了熟练程度,但它仍然遇到了挑战,例如记忆丧失、对各种任务的泛化,以及基于Transformer的语言模型捕获复杂模式的能力较差。为了克服这些挑战,已经做出了大量努力来改进曼巴结构。现有的研究主要集中在修改块设计、扫描模式和内存管理方面。本节将从这三个方面介绍几种重要技术,相关研究总结见表1。

图片

Block Design

曼巴block的设计和结构对曼巴模型的整体性能有重大影响,使其成为新兴的研究热点。如图5所示,基于构建新曼巴区块的不同方法,现有研究可分为三类:a)整合方法旨在将曼巴区块与其他知名模型整合,以在有效性和效率之间取得平衡;b) 替代方法试图利用Mamba块来替代高级模型框架中的主要层;c)修改方法侧重于修改经典曼巴块内的组件。

图片

Scanning Mode

并行关联扫描操作是Mamba模型中的一个关键组成部分,旨在解决选择机制引起的计算问题,加速训练过程,减少内存需求。它通过利用时变SSM的线性特性在硬件级别设计核融合和重新计算来实现这一点。然而,Mamba的单向序列建模范式阻碍了对各种数据(如图像和视频)的全面学习过程。为了缓解这一问题,几项研究侧重于设计高效的扫描方法,以提高模型性能并促进Mamba模型的训练过程。如图6所示,专注于开发扫描模式技术的现有研究可分为两类:1)平面扫描方法从令牌序列的平面角度处理模型输入;以及2)立体扫描方法跨维度、通道或比例扫描模型输入。

图片

Memory Management

与RNN一样,状态空间模型中隐藏状态的记忆有效地存储了之前步骤的信息,因此在SSM的整体功能中起着至关重要的作用。虽然Mamba引入了基于HiPPO的内存初始化方法,但SSM单元的内存管理仍然存在挑战,包括在层之间传输隐藏信息和实现无损内存压缩。为此,一些开创性的研究提出了不同的解决方案,包括内存初始化、压缩和连接。例如,Ezoe和Sato试图通过在模型再训练期间使用平衡截断方法来改进选择性SSM的初始化过程。此外,DGMamba引入了一种隐藏状态抑制方法,以增强状态空间模型中隐藏状态的领域泛化能力。这种方法可以消除这些隐藏状态的负面影响,从而缩小不同领域隐藏状态之间的差距。同样,DenseMamba提出了一种密集连接方法,以增强SSM中各层之间隐藏信息的传播。该策略旨在通过有选择地将浅层的隐藏状态集成到深层来减轻内存退化,并为输出生成保留详细信息。

Adapting Mamba to Diverse Data

Mamba架构代表了选择性状态空间模型的扩展,它具有循环模型的基本特性,使其非常适合作为操作文本、时间序列、语音等序列的通用基础模型。与此同时,最近的开创性研究将Mamba架构的利用扩展到了序列数据之外,包括图像和图形等领域,如图7所示。这些研究旨在利用Mamba在捕获长期依赖关系方面的卓越能力,同时利用其在学习和推理过程中的效率。因此,在本节中,我们的目标是研究使Mamba适应各种类型数据的新兴技术。

图片图片

Sequential Data

序列数据是指以特定顺序收集或组织的数据,其中数据点的顺序具有重要意义。为了探索利用Mamba作为序列数据任务基础模型的潜力,我们在以下部分进行了全面的回顾,涵盖了各种序列数据,包括自然语言、视频、时间序列、语音和人体运动。

Non-Sequential Data

非序列数据与顺序数据的不同之处在于不遵循特定的顺序。其数据点可以按任何顺序组织或访问,而不会显著影响数据的含义或解释。这种固有顺序的缺失给循环模型带来了困难,例如专门用于捕获数据中时间依赖性的RNN和SSM。令人惊讶的是,代表SSM的Mamba在最近的发展中在有效处理非连续数据方面取得了显著的成功。在本节中,我们将回顾有关Mamba如何有效处理非连续数据(包括图像、图形和点云)的相关研究。

Multimodal Data

整合多种模态,如语言(顺序数据)和图像(非顺序数据),为人工智能感知和场景理解提供了有价值和互补的信息。最近,多模态大型语言模型(MLLM)受到了广泛的研究关注,MLLM固有了大型语言模型的高级功能,包括强大的语言表达和逻辑推理。虽然Transformers一直是该领域的主导方法,但Mamba已经成为一个强大的竞争对手,在对齐混合源数据和实现序列长度的线性复杂度缩放方面表现出了令人印象深刻的性能,这使得Mamba成为Transformers多模态学习的有前景的替代品。例如,Qiao等人提出VL Mamba,探索利用Mamba的高效架构来解决视觉语言任务,利用预先训练的Mamba模型进行语言理解,并结合连接器模块将视觉补丁与语言标记对齐。Wang等人提出了文本控制运动Mamba,它利用Mamba基于文本查询动态捕获全局时间信息,以增强对人类运动的理解。此外,Fusion-Mamba和Sigma试图融合来自不同模态(如热、深度和RGB)的互补信息。Fusion-Mamba专注于改进对象检测,而Sigma旨在增强语义分割。

应用

Natural Language Processing

在自然语言处理领域,最近出现了一些基于Mamba的模型作为基于Transformer的语言建模模型的替代品,特别是在涉及广泛上下文的应用中,如问答系统和文本摘要。

Computer Vision

除了NLP应用外,基于Mamba的模型在计算机视觉领域也显示出潜力,如疾病诊断和运动识别与生成等代表性应用。

Speech Analysis

语音信号本质上由数千个样本组成。虽然这种宽泛的时间背景提供了丰富的声学特征,但它也带来了巨大的计算需求。为了有效地处理语音信号,几种基于Mamba的模型已成功应用于各种语音应用,特别是语音分离和标记以及语音增强。

Drug Discovery

蛋白质设计、分子设计和基因组分析在推进药物发现和生物技术方面至关重要。利用基于MAMBA的模型显著降低了这些域中长序列建模的复杂性。具体来说,PTM-Mamba]和ProtMamba是基于Mamba架构的蛋白质语言模型。PTM-Mamba使用双向门控Mamba块和结构化状态空间模型,有效地处理长序列,同时减少计算需求。ProtMamba被设计为具有同源性意识但无比对,足以处理数百个蛋白质序列的广泛背景。这两种模型即使在大数据集的情况下也能保持高效率和准确性,为蛋白质设计提供了关键工具。与此同时,生成式分子设计旨在模拟具有特定分布的定制特性的分子。然而,目前的模型缺乏优化高保真神谕所需的效率,直接导致成功率低。Saturn应用Mamba架构,利用其线性复杂性和计算效率在药物发现方面超越了22个竞争模型。此外,了解基因组对于深入了解细胞生物学至关重要。基因组建模的挑战包括捕捉远距离标记之间的相互作用,考虑上游和下游区域的影响,并确保DNA序列的互补性。Caduceus和MSAMamba都利用了Mamba模型,在应对这些挑战方面表现出色。Caduceus是一种DNA基础模型,它通过BiMamba和MambaDNA组件增强了Mamba架构,用于双向建模并确保反向补体等效性,在长期基因组任务中显著优于现有模型。同样,MSAMamba通过沿序列维度实施选择性扫描操作,解决了基于变换器的DNA多序列比对模型的局限性。这种设计将以前方法的训练上下文长度延长了八倍,从而可以对广泛的DNA序列进行更全面的分析。

Recommender Systems

推荐系统广泛应用于电子商务和社交网络,旨在捕捉用户不断变化的偏好及其过去行为之间的相互依赖关系。尽管基于变换器的模型在推荐系统中表现出了有效性,但由于注意力机制的平方复杂性,它们面临着计算效率的挑战,尤其是在处理较长的行为序列时。最近,几个基于Mamba的模型已被应用于分析个性化推荐的长期用户行为。例如,Mamba4Rec率先使用选择性状态空间模型进行高效的顺序推荐,在保持推理效率的同时提高了模型性能。同样,RecMamba探讨了Mamba在终身顺序推荐场景(即序列长度≥2k)中的有效性,实现了与基准模型相当的性能,同时将训练时间缩短了70%,内存成本降低了80%。此外,EchoMamba4Rec将双向Mamba模块与频域滤波集成在一起,以准确捕捉用户交互数据中的复杂模式和相互依赖关系。它展示了优于现有模型的性能,提供了更精确和个性化的建议。此外,Mamba4KT专为智能教育中的知识追踪而设计,利用Mamba模型来捕捉练习和学生知识水平之间的持久相关性。随着教育数据集的扩展,这种方法为提高知识追踪研究中的预测准确性、模型效率和资源利用率提供了一条有前景的途径。

Robotics and Autonomous Systems

机器人和自主系统的主要目标是开发能够适应全面视觉环境并执行复杂动作的模型。目前用于机器人技术的多模态大语言模型(MLLM)在两个主要方面面临着重大挑战:1)处理需要高级推理的复杂任务的能力有限,2)微调和推理任务的计算费用巨大。由于其在推理速度、内存利用率和整体效率方面的优势,基于Mamba的模型正在成为自主和智能系统的有前景的基础,有望实现卓越的性能和巨大的可扩展性潜力。例如,RoboMamba将视觉编码器与Mamba集成在一起,创建了一个端到端的机器人MLLM。该方法通过协同训练将视觉数据与语言嵌入对齐,用视觉常识和机器人特定的推理增强模型,同时确保高效的微调和推理能力。同样,Jia等人介绍了MaIL,这是一种使用Mamba作为骨干的模仿学习(IL)策略架构。MaIL弥合了处理观测序列的效率和性能之间的差距。对真实机器人实验的广泛评估表明,MaIL为传统、大型和复杂的基于Transformer的IL策略提供了一种有竞争力的替代方案。

未来挑战

  • Mamba-based Foundation Models
  • Hardware-Awareness Computation
  • Trustworthy Mamba Models
  • Applying Emerging Techniques from Transformer to Mamba

结论

Mamba是一种新兴的深度学习架构,由于其强大的建模能力和计算效率,在语言生成、图像分类、推荐和药物发现等各个领域都取得了显著的成功。最近,人们越来越努力地开发基于Mamba的深度学习模型,这些模型具有更强大的表示学习能力和更低的计算复杂度。鉴于曼巴的快速进展,迫切需要一个系统的概述。为了弥合这一差距,在本文中,我们对Mamba进行了全面的回顾,重点介绍了它的架构进步、数据适应性和应用领域,为研究人员提供了对Mamba最新发展的深入了解和概述。此外,鉴于曼巴研究仍处于起步阶段,我们还讨论了当前的局限性,并为未来的研究提出了有前景的方向。

责任编辑:张燕妮 来源: 自动驾驶之心
相关推荐

2024-07-17 16:12:22

2024-05-13 10:38:08

2022-03-10 15:35:12

深度学习人工智能GNN

2023-07-03 09:55:01

2024-04-02 09:03:43

TransformeMambaRNN

2024-09-13 09:14:32

2020-09-17 09:00:37

华为鸿蒙操作系统

2023-11-22 10:00:30

视觉智能

2023-06-03 20:51:09

2024-01-26 10:02:51

自动驾驶3D

2024-11-29 18:37:07

2024-09-30 09:04:20

2023-11-02 09:22:13

自动驾驶框架

2024-01-02 10:17:07

AI论文

2020-09-21 14:25:26

Google 开源技术

2024-03-11 09:37:01

模型图片编辑

2024-07-15 08:20:00

2023-07-20 14:54:24

训练模型

2024-03-11 10:08:12

驾驶模型

2010-06-21 10:09:47

Java
点赞
收藏

51CTO技术栈公众号