MobileMamba:兼顾效率与精度的轻量级视觉Mamba主干网络

MobileMamba提出了一种兼顾效率与精度的轻量级视觉Mamba主干网络,并在图像分类和下游任务中验证了其有效性,推理速度远超现有基于Mamba的模型。

原文标题:CVPR 2025 | MobileMamba:轻量级多感受野视觉Mamba主干

原文作者:数据派THU

冷月清谈:

本文介绍了MobileMamba,一种旨在平衡效率与精度的轻量级视觉Mamba主干网络。传统轻量化模型受限于CNN的局部感受野或Transformer的计算复杂度。MobileMamba通过以下创新点克服了这些限制:

1. **三阶段网络结构**:在粗粒度层面上,MobileMamba采用三阶段网络结构,在准确率和速度之间取得平衡,显著提升推理速度。
2. **高效多感受野特征交互(MRFFI)模块**:在细粒度层面上,MRFFI模块包含长距离小波变换增强Mamba(WTE-Mamba)、高效多核深度可分离卷积(MK-DeConv)和去冗余恒等映射,融合多尺度多感受野信息,加强高频细节特征提取。
3. **训练和推理策略**:采用知识蒸馏和延长训练轮数等训练策略增强模型学习能力,并使用归一化层融合的测试策略提升推理速度。

实验结果表明,MobileMamba在ImageNet-1K分类任务上取得了优异的性能,并且在目标检测、实例分割和语义分割等下游任务中也展现出卓越的效率和精度。与现有Mamba模型相比,MobileMamba在速度上有了显著提升。

怜星夜思:

1、MobileMamba的MRFFI模块中,小波变换增强Mamba (WTE-Mamba) 的作用是什么?除了文章中提到的“提取全局特征的同时加强边缘细节等细粒度信息的提取能力”外,你认为小波变换还可以带来哪些优势?
2、文章提到MobileMamba采用了三阶段网络结构,并声称在准确率和速度之间取得了权衡。那么,如果将MobileMamba扩展到四阶段甚至更多阶段,可能会带来哪些潜在的优势和劣势?
3、MobileMamba在多个下游任务中都表现出色,尤其是在高分辨率输入的情况下。那么,你认为MobileMamba在高分辨率输入下表现优异的关键原因是什么?这种优势在哪些实际应用场景中具有重要意义?

原文内容

来源:人工智能前沿讲习
本文约3200字,建议阅读6分钟
本文提出了MobileMamba的框架良好的平衡了效率与效果。


论文链接:
https://arxiv.org/pdf/2411.15941
项目代码:
https://github.com/lewandofskee/MobileMamba
(所有代码/模型权重均已开源)


图1 顶部:不同结构下有效感受野ERF的可视化图像;


底部:最近基于CNN/Transformer/Mamba方法的效果 vs. FLOPs对比。


总结


过去轻量化模型研究主要集中在基于CNN和Transformer的设计。但是CNN的局部有效感受野在高分辨率输入时难以获得长距离依赖。而Transformer尽管有着全局建模能力但是其平方级计算复杂度限制了其在高分辨率下的轻量化应用。最近状态空间模型如Mamba由于其线性计算复杂度和出色的效果被广泛用在视觉领域。然而基于Mamba的轻量化模型虽然FLOPs低但是其实际的吞吐量极低。因此,作者提出了MobileMamba的框架良好的平衡了效率与效果,推理速度远超现有基于Mamba的模型。具体来说,首先作者在粗粒度上设计了三阶段网络显著提升推理速度。随后在细粒度上提出了高效多感受野特征交互 (MRFFI)模块包含长距离小波变换增强Mamba (WTE-Mamba)、高效多核深度可分离卷积 (MK-DeConv)和去冗余恒等映射三个部分。有利于在长距离建模的特征上融合多尺度多感受野信息并加强高频细节特征提取。最后使用两个训练和一个推理策略进一步提升模型的性能与效率。大量实验验证了MobileMamba超过现有方法最高可达83.6在Top-1准确率上。并且速度是LocalVim的21倍和EfficientVMamba的3.3倍。大量的下游任务实验也验证了方法在高分辨率输入情况下取得了效果与效率的最佳平衡。


图2:现有基于Mamba的轻量化模型效果 vs. 吞吐量。


具体内容


随着移动设备的普及,资源受限环境中对高效、快速且准确的视觉处理需求日益增长。开发轻量化模型,有助于显著降低计算和存储成本,还能提升推理速度,从而拓展技术的应用范围。现有被广泛研究的轻量化模型主要被分为基于CNN和Transformer的结构。基于CNN的MobileNet设计了深度可分离卷积大幅度减少了计算复杂度。GhostNet提出将原本将原本全通道1x1卷积替换为半数通道进行廉价计算,另半数通道直接恒等映射。这些方法给后续基于CNN的工作奠定了良好的基础。但是基于CNN方法的主要缺陷在于其局部感受野,如图1(i)所示,其ERF仅在中间区域而缺少远距离的相关性。并且在下游任务高分辨率输入下,基于CNN的方法仅能通过堆叠计算量来换取性能的少量提升。


ViT有着全局感受野和长距离建模能力,如图1(ii)所示。但是由于其平方级别的计算复杂度,计算开销比CNN更大。一些工作尝试从减少分辨率或者减少通道数上来改减少所带来的计算复杂度的增长取得了出色的效果。但是基于纯ViT的结构缺少了归纳偏置,因此越来越多的研究者将CNN与Transformer结合得到混合结构得到更好的效果并获得局部和全局的感受野如图1(iii)所示。但是尤其在下游任务高分辨率输入下,基于ViT的方法仍然受到平方级别计算复杂度的问题。


最近,基于状态空间模型由于其出色的捕捉长距离依赖关系并且线性的计算复杂度引起了广泛关注。大量的研究者将其应用于视觉领域在效果和效率上取得了出色的效果。基于Mamba的轻量化模型LocalMamba提出了将图像划分为窗口并在窗口内局部扫描的方式减少计算复杂度。EfficientVMamba设计了高效2D扫描方式降低了计算复杂度。但是他们都仅仅公布了FLOPs,而FLOPs低并不能代表推理速度快。经实验发现如图2所示,现有的基于Mamba结构的推理速度较慢并且效果较差。


因此,作者提出了MobileMamba,并分别从粗粒度、细粒度和训练测试策略三个方面来设计高效轻量化网络。首先,在3.1节作者讨论了四阶段和三阶段在准确率、速度、FLOPs上的权衡。在同等吞吐量下,三阶段网络会取得更高的准确率。同样的效果下三阶段网络有着更高的吞吐量。因此作者选择三阶段网络作为MobileMamba的粗粒度设计框架。在细粒度模块设计方面在3.2节,作者提出了高效多感受野特征交互 (MRFFI)模块。具体来说,将输入特征根据通道维度划分三个部分。第一部分将通过小波变换增强的Mamba模块提取全局特征的同时加强边缘细节等细粒度信息的提取能力。第二部分通过高效多核深度可分离卷积操作获取多尺度感受野的感知能力。最后部分通过去冗余恒等映射,减少高维空间下通道冗余的问题,并减少计算复杂度提高运算速度。最终经过MRFFI得到的特征融合了全局和多尺度局部的多感受野信息,并且加强了边缘细节的高频信息提取能力。最后,在3.3节作者通过两个训练阶段策略知识蒸馏和延长训练轮数增强模型的学习能力,提升模型效果;以及一个归一化层融合的测试阶段策略提升模型的推理速度。


如图1(iv)所示,MobileMamba有着全局感受野的同时,高效多核深度可分离卷积操作有助于提取相邻信息。图1底部与SoTA方法的对比可知,MobileMamba从200M到4G FLOPs的模型在使用训练策略后分别达到76.9,78.9,80.7,82.2,83.3,83.6的Top-1在ImageNet-1K上的效果均超过现有基于CNN、ViT和Mamba的方法。与同为Mamba的方法相比如图2所示,MobileMamba比LocalVim在Top-1上提升0.7倍的同时速度快21倍。比EfficientVMamba提升2.0的同时速度快3.3倍。显著优于现有基于Mamba的轻量化模型设计。同时,在下游任务目标检测、实力分割、语义分割上大量实验上也验证了方法的有效性。在Mask RCNN上比EMO提升1.3在mAP并且吞吐量提升56%。在RetinaNet上比EfficientVMamba提升+2.1在mAP并且吞吐量提升4.3倍。在SSDLite通过提高分辨率达到24.0/29.5的mAP。在DeepLabv3, Se-mantic FPN, and PSPNet上有着较少的FLOPs分别最高达到37.4/42.7/36.9的mIoU。在高分辨率输入的下游任务与基于CNN的MobileNetv2和ViT的MobileViTv2相比分别提升7.2和0.4,并且FLOPs仅有其8.5%和11.2%。  


总的来说,作者贡献如下:

  • 作者提出了一个轻量级的三阶段MobileMamba框架,该框架在性能和效率之间实现了良好的平衡。MobileMamba的有效性和效率已经在分类任务以及三个高分辨率输入的下游任务中得到了验证。

  • 作者设计了一个高效的多感受野特征交互(MRFFI)模块,以通过更大的有效感受野增强多尺度感知能力,并改进细粒度高频边缘信息的提取。

  • MobileMamba通过在不同FLOPs大小的模型上采用训练和测试策略,显著提升了性能和效率。


图2 MobileMamba结构概述。(a) 粗粒度结构设计: 三阶段MobileMamba总体框架。(b) 16 ×16 下采样PatchEmbed. (c) MobileMamba Block结构。(d) 细粒度结构设计: 所提出的高效多感受野特征交互模块 (MRFFI)。


更多实验结果如下:  

图片本文目的在于学术交流,并不代表本公众号赞同其观点或对其内容真实性负责,版权归原作者所有,如有侵权请告知删除。


编辑:于腾凯

校对:梁锦程



关于我们

数据派THU作为数据科学类公众号,背靠清华大学大数据研究中心,分享前沿数据科学与大数据技术创新研究动态、持续传播数据科学知识,努力建设数据人才聚集平台、打造中国大数据最强集团军。




新浪微博:@数据派THU

微信视频号:数据派THU

今日头条:数据派THU

更多阶段的网络结构可能会带来更强的特征表达能力,毕竟网络深度增加了。但同时,计算量和参数量也会增加,速度肯定会下降。而且,更深的网络也更容易出现梯度消失或梯度爆炸的问题,训练起来可能更困难。个人感觉,三阶段是一个比较好的折衷方案。

其实我觉得阶段数就像是搭积木。阶段少,搭出来的东西可能比较简单,但速度快。阶段多了,能搭出更复杂的形状,表达能力更强,但速度就慢了。MobileMamba的三阶段可能就是找到了一个平衡点,既能表达足够的信息,速度也不会太慢。

我感觉小波变换在这里的作用有点像给Mamba加了个“放大镜”和“望远镜”。原生的Mamba可能更多关注全局,但是细节方面会有些欠缺。小波变换相当于把细节给放大了,让Mamba也能看到。当然,这只是我的一个比喻,实际肯定更复杂。

从理论上讲,增加网络阶段数可以提高模型对图像特征的抽象能力,从而提升模型的准确率。然而,随着网络深度的增加,模型会面临以下挑战:

* 梯度消失/爆炸:更深的网络结构更容易出现梯度消失或梯度爆炸问题,导致模型难以训练。
* 过拟合:增加网络深度可能会导致模型过拟合训练数据,降低模型的泛化能力。
* 计算复杂度:更深的网络结构会导致计算复杂度呈指数级增长,增加模型的推理时间。

因此,在实际应用中,需要根据具体的任务和数据集,权衡网络深度和模型性能之间的关系。MobileMamba选择三阶段网络结构,可能是在准确率、速度和模型复杂度之间找到一个较好的平衡点。

我觉得关键在于Mamba架构本身对长序列的处理能力。高分辨率输入意味着更多的像素点,也就是更长的序列。传统的CNN在高分辨率下感受野有限,而Transformer计算复杂度太高。Mamba的线性复杂度正好解决了这个问题。这种优势在高清监控、遥感图像分析等领域很有用,这些场景都需要处理大量的像素信息。

小波变换在图像处理领域应用广泛,其优势不仅在于提取边缘细节,更在于其稀疏表示的能力。通过小波变换,可以将图像信号分解为不同频带的子带,其中大部分能量集中在少数几个子带中,从而实现信号的稀疏表示。这种稀疏性有助于降低计算复杂度,并提高模型的泛化能力。此外,小波变换还具有良好的时频局部化特性,能够同时在时域和频域上对信号进行分析,这对于捕捉图像中的瞬态特征和纹理信息非常有用。在WTE-Mamba中,小波变换的引入可以有效地提取图像的全局特征和局部细节,从而提高模型的性能。

高分辨率图像处理一直是个难题,MobileMamba能搞定,说明它在细节处理方面肯定有一套。想象一下,如果用在文物修复上,就能更清晰地看到文物的细节,帮助修复师更好地还原文物的原貌。或者用在游戏开发上,就能做出更逼真的场景。

WTE-Mamba挺有意思的,不仅仅是提取边缘细节。我觉得小波变换的关键在于它的多尺度分析能力。图像中的不同频率成分对应着不同的结构信息,小波变换可以把这些成分分解开来,让Mamba更好地处理不同尺度的特征。可能对噪声的鲁棒性也会更好,因为噪声通常集中在高频部分,小波变换某种程度上可以把噪声和信号分离。

MobileMamba在高分辨率输入下表现优异,我认为主要归功于以下几个方面:

* Mamba架构:Mamba架构具有线性计算复杂度,能够有效地处理长序列数据,在高分辨率输入下避免了计算瓶颈。
* MRFFI模块:MRFFI模块通过多感受野特征交互,增强了模型对图像细节信息的感知能力,这对于高分辨率图像的处理至关重要。
* 训练策略:MobileMamba采用了知识蒸馏和延长训练轮数等训练策略,提高了模型的泛化能力,使其能够更好地适应高分辨率输入。

这种优势在许多实际应用场景中具有重要意义,例如:

* 医学影像分析:高分辨率医学影像包含丰富的细节信息,MobileMamba可以帮助医生更准确地诊断疾病。
* 自动驾驶:自动驾驶系统需要处理高分辨率的图像数据,MobileMamba可以提高车辆对周围环境的感知能力。
* 智能安防:智能安防系统需要处理高分辨率的监控视频,MobileMamba可以提高视频分析的准确率。