一举颠覆Transformer!最新Mamba结合方案刷新多个SOTA,单张GPU即可处理140k

本文主要是介绍一举颠覆Transformer!最新Mamba结合方案刷新多个SOTA,单张GPU即可处理140k,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

还记得前段时间爆火的Jamba吗?

Jamba是世界上第一个生产级的Mamba大模型,它将基于结构化状态空间模型 (SSM) 的 Mamba 模型与 transformer 架构相结合,取两种架构之长,达到模型质量和效率兼得的效果。

在吞吐量和效率等关键衡量指标上,Jamba处理128k长上下文时吞吐量是 Mixtral 8x7B的3倍;在成本上,Jamba一共支持256k上下文,单张A100 GPU即可处理140k。

这种十分炸裂的效果得益于其作者对Mamba和Transformer两种架构的创新性结合。受此启发,为了让Mamba也可以在其他方面达到两全其美的效果,研究者们开始探索Mamba与其他技术的结合,以期解决单一模型或方法难以克服的挑战。

目前已出现不少非常值得学习的研究成果,我从中挑选了12种Mamba结合方案,都是2024最新,可借鉴的方法和创新点我做了简单介绍,已开源的代码也都整理了,方便同学们学习。

论文原文以及开源代码需要的同学看文末

结合MoE

MoE-Mamba: Efficient Selective State Space Models with Mixture of Experts

方法:本文提出了将SSM与Mamba相结合的研究方向,以便将SSM的潜力扩展到更大规模,并与现有的最先进的语言模型竞争。 MoE-Mamba通过Mamba与Mixture of Experts层的结合,实现了SSM和MoE的效率提升,并在2.35倍的训练步骤中达到了与Mamba相同的性能。

创新点:

  • 将Mixture of Experts与State Space Models相结合,开辟了一个新的研究方向。这条道路将使得更大规模的语言模型更有效地扩展。

  • 作者发现了两种表现相似但基于不同架构的模型之间奇怪的度量不一致情况。作者假设这一差异可能暗示了Mamba和其他SSM的潜在失效模式。

结合多模态

Fusion-Mamba for Cross-modality Object Detection

方法:本文提出了一种名为Fusion-Mamba的方法,旨在在隐藏状态空间中融合特征,这可能为跨模态特征融合开辟了一种新的范例。受到Mamba的启发,作者采用具有线性复杂度的Mamba构建了隐藏状态空间,并通过门控机制进一步改进,实现更深入和复杂的融合。

创新点:

  • Fusion-Mamba方法:作者引入了一种名为Fusion-Mamba的新方法,该方法首次利用Mamba进行多模态特征融合。在Fusion-Mamba中,作者设计了两个模块:State Space Channel Swapping (SSCS)模块用于浅层特征融合,Dual State Space Fusion (DSSF)模块用于在隐藏状态空间中进行深层特征融合。

  • 2D选择性扫描(SS2D)机制:作者引入了一种名为2D选择性扫描机制,用于解决二维视觉数据和一维语言序列之间的不兼容性。SS2D机制通过将图像补丁沿四个不同方向进行扩展,生成四个独立的序列,并利用这些序列建立全局感受野。

结合SAR

Simba:Mamba augmented U-ShiftGCN for Skeletal Action Recognition in Videos

方法:论文提出了一种新的Skeleton Action Recognition (SAR)框架,将选择性状态空间模型Mamba与图数据相结合。通过在具有Shift-GCN骨干的新型编码器-解码器架构中利用Mamba,作者解决了SAR任务中有效建模长序列的挑战。与缺乏结构先验并且性能低于GCN方法的纯Transformer不同,该方法利用Mamba的力量来增强时间建模,同时保留空间信息。

创新点:

  • 首次将选择性状态空间模型Mamba集成到骨骼动作识别(SAR)和图数据领域中。通过在新颖的编码器-解码器架构中与Shift-GCN骨干网络结合使用Mamba,解决了SAR任务中有效建模长序列的挑战。

  • 模型Simba在三个基准SAR数据集(NTU RGB+D、NTU RGB+D120和Northwestern-UCLA)上取得了最先进的性能。

结合PM扩散

P-Mamba: Marrying Perona Malik Diffusion with Mamba for Efficient Pediatric Echocardiographic Left Ventricular Segmentation

方法:论文提出一种名为P-Mamba的模型,用于高效的儿科心脏超声检查左心室分割,该模型通过使用DWT-based PMD分支和Vision Mamba分支相结合的方法,在准确性和效率方面优于现有模型。

创新点:

  • P-Mamba模型:在儿科心脏超声图像中,引入了一种名为P-Mamba的创新架构,用于儿科心脏左心室的分割。该模型采用了Vision Mamba层来提高计算和内存效率,并能够捕捉全局依赖关系。同时,在基于DWT的PMD编码器分支中,引入了基于DWT的Perona-Malik扩散(PMD)块来抑制噪声,同时保留左心室的局部形态特征。

  • 数据集:该研究使用了从Lucile Packard Children's Hospital Stanford(2014-2021)收集的1,958名儿科患者的4,467个心脏超声图像数据集,其中包括7,643个灰度2D视频剪辑和17,600个标记图像。

关注下方《学姐带你玩AI》🚀🚀🚀

回复“Mamba结合”获取全部论文+代码

码字不易,欢迎大家点赞评论收藏

这篇关于一举颠覆Transformer!最新Mamba结合方案刷新多个SOTA,单张GPU即可处理140k的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/926735

相关文章

Maven中引入 springboot 相关依赖的方式(最新推荐)

《Maven中引入springboot相关依赖的方式(最新推荐)》:本文主要介绍Maven中引入springboot相关依赖的方式(最新推荐),本文给大家介绍的非常详细,对大家的学习或工作具有... 目录Maven中引入 springboot 相关依赖的方式1. 不使用版本管理(不推荐)2、使用版本管理(推

Java 中的 @SneakyThrows 注解使用方法(简化异常处理的利与弊)

《Java中的@SneakyThrows注解使用方法(简化异常处理的利与弊)》为了简化异常处理,Lombok提供了一个强大的注解@SneakyThrows,本文将详细介绍@SneakyThro... 目录1. @SneakyThrows 简介 1.1 什么是 Lombok?2. @SneakyThrows

在 Spring Boot 中实现异常处理最佳实践

《在SpringBoot中实现异常处理最佳实践》本文介绍如何在SpringBoot中实现异常处理,涵盖核心概念、实现方法、与先前查询的集成、性能分析、常见问题和最佳实践,感兴趣的朋友一起看看吧... 目录一、Spring Boot 异常处理的背景与核心概念1.1 为什么需要异常处理?1.2 Spring B

判断PyTorch是GPU版还是CPU版的方法小结

《判断PyTorch是GPU版还是CPU版的方法小结》PyTorch作为当前最流行的深度学习框架之一,支持在CPU和GPU(NVIDIACUDA)上运行,所以对于深度学习开发者来说,正确识别PyTor... 目录前言为什么需要区分GPU和CPU版本?性能差异硬件要求如何检查PyTorch版本?方法1:使用命

python处理带有时区的日期和时间数据

《python处理带有时区的日期和时间数据》这篇文章主要为大家详细介绍了如何在Python中使用pytz库处理时区信息,包括获取当前UTC时间,转换为特定时区等,有需要的小伙伴可以参考一下... 目录时区基本信息python datetime使用timezonepandas处理时区数据知识延展时区基本信息

Python Transformers库(NLP处理库)案例代码讲解

《PythonTransformers库(NLP处理库)案例代码讲解》本文介绍transformers库的全面讲解,包含基础知识、高级用法、案例代码及学习路径,内容经过组织,适合不同阶段的学习者,对... 目录一、基础知识1. Transformers 库简介2. 安装与环境配置3. 快速上手示例二、核心模

一文详解Java异常处理你都了解哪些知识

《一文详解Java异常处理你都了解哪些知识》:本文主要介绍Java异常处理的相关资料,包括异常的分类、捕获和处理异常的语法、常见的异常类型以及自定义异常的实现,文中通过代码介绍的非常详细,需要的朋... 目录前言一、什么是异常二、异常的分类2.1 受检异常2.2 非受检异常三、异常处理的语法3.1 try-

Python使用getopt处理命令行参数示例解析(最佳实践)

《Python使用getopt处理命令行参数示例解析(最佳实践)》getopt模块是Python标准库中一个简单但强大的命令行参数处理工具,它特别适合那些需要快速实现基本命令行参数解析的场景,或者需要... 目录为什么需要处理命令行参数?getopt模块基础实际应用示例与其他参数处理方式的比较常见问http

Java Response返回值的最佳处理方案

《JavaResponse返回值的最佳处理方案》在开发Web应用程序时,我们经常需要通过HTTP请求从服务器获取响应数据,这些数据可以是JSON、XML、甚至是文件,本篇文章将详细解析Java中处理... 目录摘要概述核心问题:关键技术点:源码解析示例 1:使用HttpURLConnection获取Resp

Java中Switch Case多个条件处理方法举例

《Java中SwitchCase多个条件处理方法举例》Java中switch语句用于根据变量值执行不同代码块,适用于多个条件的处理,:本文主要介绍Java中SwitchCase多个条件处理的相... 目录前言基本语法处理多个条件示例1:合并相同代码的多个case示例2:通过字符串合并多个case进阶用法使用