MambaMixer:突破Transformers限制的高效深度学习架构

news2024/10/7 10:23:43

深度学习模型尤其是Transformers架构,已经在诸如自然语言处理、计算机视觉和时间序列预测等多个领域取得了显著成就。然而,随着模型输入序列长度的增加,传统的Transformers模型面临着显著的扩展性问题。其核心问题在于,Transformers中的注意力机制在处理长序列数据时,计算复杂度和内存需求随着输入大小呈二次方增长,这不仅限制了模型处理大规模数据的能力,也增加了训练和推理的时间成本。

本文介绍的“MambaMixer: Efficient Selective State Space Models with Dual Token and Channel Selection”正是针对这一挑战提出的解决方案。MambaMixer是一种新型的深度学习架构,它通过引入高效的选择性状态空间模型(SSMs),在保持数据依赖性的同时,显著降低了长序列建模的时间和空间复杂度。这一创新不仅推动了深度学习模型在处理大规模数据时的效率,也为长序列建模提供了新的可能性,特别是在需要捕捉长期依赖关系的复杂任务中。

方法

MambaMixer是一种结合了选择性令牌混合器(Selective Token Mixer)和选择性通道混合器(Selective Channel Mixer)的架构。这种设计旨在通过数据依赖的权重,沿着序列和模型维度有效地混合信息。选择性令牌混合器负责在序列维度上融合信息,而选择性通道混合器则关注于在模型维度上的信息融合。

选择性令牌混合器的设计灵感来源于Mamba模型,它在输入的投影之后和S6块之前使用一维卷积。这种设计不仅提供了更通用的形式和更具表现力的表示,还允许模型在不同分辨率级别上更专注或过滤信息,这在视觉和时间序列预测任务中尤为重要。

选择性通道混合器使用SSM作为通道混合块,可以为每个令牌选择性地过滤不相关的通道,并沿着模型维度轴融合信息。这种方法避免了在大型网络中训练时的不稳定性,并且由于其数据依赖性,可以更有效地选择信息丰富的通道。

为了克服数据依赖通道混合的挑战,作者提出了一种新的启发式方法,使用准分离矩阵来近似传统的前向和后向SSMs。这种方法不仅节省了大约一半的参数,还利用了硬件友好型和可并行化的实现,从而加快了训练速度。

QSMixer是MambaMixer的一个变体,它进一步简化了架构,使用准分离矩阵进行信息混合。这种方法不仅提高了效率,还保持了模型的表现力。QSMixer是首个大规模模型,展示了准分离矩阵在序列建模中的强大能力。

QSMixer(Quasi-Separable Mixer)的概览,展示了如何使用准可分离矩阵在序列和嵌入维度上进行信息混合

QSMixer是MambaMixer架构中的一个关键组件,它负责在序列和嵌入维度上进行信息混合。这种混合对于捕捉序列数据中的长距离依赖关系至关重要,尤其是在处理图像、视频和时间序列等多维数据时。

准分离矩阵

QSMixer 使用的准分离矩阵是一种具有特定结构的矩阵,它允许更高效的计算。这种结构化的特性使得矩阵的存储和操作更加经济,同时保持了模型的表达能力。

启发式改进

与传统的 SSMs 相比,QSMixer 的准分离矩阵提供了更多的表示能力。这种启发式改进使得模型能够以更少的参数捕捉更复杂的数据动态。

高效的计算

QSMixer 的核心优势之一是其高效的矩阵-向量乘法运算。由于准分离矩阵的结构特性,相关的乘法运算可以在线性时间内完成,这大大加快了模型的训练速度,降低了计算成本。

训练效率

得益于高效的矩阵运算,QSMixer 在训练过程中表现出了高效率。这使得模型即使在大规模数据集上也能快速收敛,同时保持了较低的内存和计算资源消耗。

视觉 MambaMixer 和视觉 QSMixer

为了适应视觉任务,作者对MambaMixer和QSMixer的门控机制进行了修改,使用一组卷积来提取输入图像的多分辨率特征。这种设计通过深度可分离卷积在不同分辨率上操作,增强了模型对图像特征的捕捉能力。

视觉任务,如图像分类、目标检测和语义分割,要求模型能够捕捉图像中的空间依赖性,包括垂直和水平方向。传统的序列编码器在处理这类任务时受限于其有限的感受野,即它们难以同时捕捉到图像在多个方向上的空间关系。为了解决这一挑战,研究者提出了多种图像扫描方法,但这些方法会增加参数数量并降低训练效率。

为了提高使用不同图像扫描方法的有效性和效率,研究者引入了Switch of Scans(SoS)模块。SoS模块使用一种路由器机制,动态选择每张图像最有效的扫描集合。这种设计灵感来源于混合专家技术,能够根据图像的高级特征来决定哪些扫描方法更为有用。

ViM2和ViQS模型进一步改进了MambaMixer和QSMixer的门控机制,采用多分辨率卷积来提取输入图像的多尺度特征。这些特征通过深度可分离卷积处理,以增强模型对不同尺度图像特征的捕捉能力,这对于密集图像和密集预测任务尤为重要。

ViM2模型采用了MambaMixer块,而ViQS模型则采用了QSMixer块。这两种模型都利用了选择性令牌混合器和选择性通道混合器,但ViQS在两者上都使用了基于准分离矩阵的简化和快速版本。这些混合器的设计允许模型在处理视觉数据时,能够选择性地过滤掉不相关的信息,同时保留有用的特征。

 ViM2 架构的设计和概览

ViM2和ViQS的设计不仅关注于单一任务的性能,还强调了模型的泛化能力。通过使用数据依赖的权重和准分离矩阵,这些模型能够适应不同的视觉任务,捕捉长距离依赖关系,并有效地处理多维数据。

实验

研究者设定了实验的主要目标,包括评估MambaMixer和QSMixer作为序列编码器背骨在捕捉长序列依赖性方面的有效性,并将它们与现有的最先进序列编码器进行比较。他们还比较了ViM2和ViQS与基于卷积的视觉模型、基于混合器的方法、基于Transformer的方法以及双注意力模型等在ImageNet-1K数据集上的性能。

在 ImageNet-1K 数据集上不同模型的准确率比较,包括 top-1 和 top-5 准确率以及参数数量和计算复杂度(FLOPs)

在图像分类任务中,研究者在sCIFAR和ImageNet-1K数据集上测试了MambaMixer和QSMixer的性能。实验结果显示,这些模型在像素级分类任务中能够有效捕捉长距离依赖性,并且在sCIFAR数据集上的表现优于Transformers和其他基线模型。

为了证明选择性通道混合的重要性,研究者在ImageNet-1K数据集上测试了S4、Mamba以及他们提出的选择性令牌混合器的性能。实验结果表明,使用选择性通道混合可以显著提高模型性能,因为它能够为每个令牌过滤不相关的通道。

有无选择性通道混合的不同模型在 ImageNet-1K 上的性能,突出了选择性通道混合对性能提升的贡献

消融研究中,研究者逐一移除了架构中的某些组件,以评估每个组件对整体性能的贡献。消融研究结果表明,准分离矩阵的实现和通道混合器对性能提升有显著贡献,缺乏通道混合会导致平均性能下降。

对 ViQS 和 ViM 模型进行消融研究,展示了不同组件对模型性能的影响,如参数数量、吞吐量和准确率

研究者评估了ViM2在不同分辨率图像上的性能,以测试模型对长距离依赖性的捕捉能力。实验结果表明,ViM2在处理高分辨率图像以及不同分辨率输入时表现出更好的鲁棒性。

不同分辨率输入图像对模型性能和效率的影响,显示了 ViM2 在捕获长距离依赖性方面相比于现有基线模型的鲁棒性

除了图像分类任务外,研究者还在ADE20K数据集上进行了语义分割任务的评估,并在COCO数据集上进行了目标检测任务的测试。ViM2和ViQS在这些下游任务上的表现进一步证明了它们的适用性和多样性。

在 ADE20K 数据集上使用 UperNet 进行语义分割任务时,不同模型的性能比较,包括平均交并比(mIoU)和参数数量

通过一系列实验,我们得出结论,MambaMixer和QSMixer在视觉任务中展现出了与现有模型相媲美甚至更优的性能,同时具有更少的计算资源消耗。这些结果强调了选择性地跨令牌和通道混合信息的重要性,并证明了所提出模型在多维数据建模中的潜力。

MambaMixer 和 QSMixer 展示了数据依赖 SSM 在序列建模中的潜力,它们通过递归和选择性地混合序列和模型维度上的信息,实现了硬件友好和高效的训练。ViM2 和 ViQS 模型的成功表明,MambaMixer 和 QSMixer 在多维数据建模中具有广泛的应用前景。

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

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

阿里云开启ssl证书过程记录 NGINX

🤞作者简介:大家好,我是思无邪,2024 毕业生,某厂 Go 开发工程师.。 🐂我的网站:https://www.yishanicode.top/ ,持续更新,希望对你有帮助。 🐞如果文章或网站…

golang跨平台GUI框架fyne介绍与使用详解,开放案例

golang跨平台GUI框架fyne介绍与使用详解 Fyne 是一个使用 Go 编写的易于使用的 UI 工具包和应用程序 API。 它旨在构建使用单一代码库在桌面和移动设备上运行的应用程序。 通过批量调用身份证实名和三网手机实名和银行卡核验等接口,完成fyne框架的基本使用介绍 主要…

Linux系统编程--进程间通信

目录 1. 介绍 1.1 进程间通信的目的 1.2 进程间通信的分类 2. 管道 2.1 什么是管道 2.2 匿名管道 2.2.1 接口 2.2.2 步骤--以父子进程通信为例 2.2.3 站在文件描述符角度-深度理解 2.2.4 管道代码 2.2.5 读写特征 2.2.6 管道特征 2.3 命名管道 2.3.1 接口 2.3.2…

【方案】基于5G智慧工业园区解决方案(PPT原件)

5G智慧工业园区整体解决方案旨在通过集成5G通信技术、物联网、大数据和云计算等先进技术,实现园区的智能化、高效化和绿色化。 该方案首先构建高速、稳定的5G网络,确保园区内设备、人员与物流的实时连接和高效沟通。其次,通过工业物联网技术&…

【算法】Merge Sort 合并排序

Merge Sort概述 分而治之算法 递归地将问题分解为多个子问题,直到它们变得简单易解 将解决方案组合起来,解决原有问题 O(n*log(n))运行时间 基于比较的算法的最佳运行时间 一般原则 合并排序: 1. 将数…

进程-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板

进程 进程的概念 何为进程? 进程是一个应用程序的执行实例,也就是系统中正在运行的应用程序,程序一旦运行就是进程 进程是一个动态过程,它是程序的一次运行过程,而非静态文件 同一个程序可以被运行多次,…

扎克伯格抨击闭源人工智能竞争对手试图“创造上帝”

Meta 首席执行官马克-扎克伯格(Mark Zuckerberg)在周四发表的一篇访谈中谈到了他对人工智能未来的看法,他深信"不会只有一种人工智能"。扎克伯格强调了开源的价值,即把人工智能工具交到许多人手中,他还不忘贬…

博创智能IPO终止:曾因对赌失败而赔偿,左手分红、右手募资补流

近日,上海证券交易所披露的信息显示,博创智能装备股份有限公司(下称“博创智能”)及其保荐人国金证券撤回上市申请文件。因此,上海证券交易所决定终止对其首次公开发行股票并在科创板上市的审核。 据贝多财经了解&…

从AICore到TensorCore:华为910B与NVIDIA A100全面分析

华为NPU 910B与NVIDIA GPU A100性能对比,从AICore到TensorCore,展现各自计算核心优势。 AI 2.0浪潮汹涌而来,若仍将其与区块链等量齐观,视作炒作泡沫,则将错失新时代的巨大机遇。现在,就是把握AI时代的关键…

OpenGL3.3_C++_Windows(22)

材质: 决定物体在渲染过程中最终视觉呈现的关键因素之一,它通过一系列光学(投光物)和物理参数(反光度,反照率、金属度,折射率……)准确模拟现实世界中的材料特性,从而增…

我重生了,学会了珂朵莉树

还玩线段树吗? 前言&注明 我好像一万年没更新了? 化学!!!!!!!!!!!!!!&#xff…

NSSCTF-Web题目18(反序列化)

目录 [NISACTF 2022]babyserialize 1、题目 2、知识点 3、思路 [SWPUCTF 2022 新生赛]ez_ez_unserialize 4、题目 5、知识点 6、思路 [NISACTF 2022]babyserialize 1、题目 2、知识点 反序列化、绕过过滤、命令执行 3、思路 <?php include "waf.php";…

【RAG】FoRAG:面向网络增强型长形式问答的事实性优化RAG

一、解决问题 在基于网络的长形式问答&#xff08;Web-enhanced Long-form Question Answering, LFQA&#xff09;任务中&#xff0c;现有RAG在生成答案时存在的问题&#xff1a; 事实性不足&#xff1a;研究表明&#xff0c;现有系统生成的答案中只有大约一半的陈述能够完全得…

填报高考志愿时,学校、专业和城市怎么选择呢?

我的观点是&#xff1a; 专业>城市>学校 专业是兴趣导向&#xff0c;符合自己的价值观&#xff0c;失去了这种驱动力的专业学习&#xff0c;会变得非常艰难的&#xff0c;而且没有竞争力&#xff0c;所以我的排序第一位是专业。 其次是城市&#xff0c;最好是一线城市&…

vue3.0(十五)内置组件Teleport和Suspense

文章目录 一、Teleport1.基本用法2.禁用Teleport3.多个 Teleport 共享目标4.搭配组件 二、 Suspense1.什么是Suspense2.异步依赖3.加载中状态4.事件5.错误处理6.和其他组件结合注意 一、Teleport <Teleport> 是一个内置组件&#xff0c;它可以将一个组件内部的一部分模板…

java+mysql通讯录管理

完整代码地址如果控制台打印出现乱码&#xff0c;进行如下设置

stm32-hal库(5)--usart串口通信三种模式(主从通信)(关于通信失败和串口不断发送数据问题的解决)

问题&#xff1a; 最近发现&#xff0c;stm32cubemx最新版本f1系列的hal库&#xff08;1.85版本&#xff09;生成的hal库&#xff0c;其中stm32f1xx_hal_uart.c的库文件中&#xff0c;其串口发送接收存在一些问题&#xff1a; 1.没有使用 __HAL_LOCK 和 __HAL_UNLOCK 宏&…

LinkedIn被封原因和解封方法

对于初识领英和对领英生态规则不熟悉的人来说&#xff0c;很容易造成领英账号被封号(被限制登录)的情况&#xff0c;那么如何才能避免和解决领英帐号被封号(被限制登录)的难题呢&#xff1f; 领英帐号被封号或被限制登录主要会有两类情况。 首先要搞清楚&#xff0c; Linkedi…

谷歌邮箱被停用,开发者账号也要废了?还能申诉回来吗?怎么申诉?

相信不少开发者都遭遇过开发者账号的邮箱被暂停的情况&#xff0c;有时候明明什么也没做&#xff0c;就被突然被停用了&#xff1f; 面对这种情况&#xff0c;开发者们最担心的莫过于这是否会波及到他们使用该邮箱注册的开发者账号&#xff1f;APP还会正常审核吗&#xff1f;毕…

接口自动化测试关联token的方法?

引言&#xff1a; 在接口自动化测试中&#xff0c;有时候我们需要关联token来进行身份验证或权限管理。本文将从零开始&#xff0c;介绍如何详细且规范地实现接口自动化测试中token的关联。 步骤一&#xff1a;准备工作 在开始之前&#xff0c;我们需要确保以下准备工作已完成…