没想到会有人看..
文末附上论文和代码的网页链接
- 现有视觉学习骨干:
- 卷积神经网络CNN:为了提高CNN的灵活性和效率,人们提出了更复杂的算子。从Transformers中汲取灵感,将长程依赖性和动态权重纳入其架构设计
- 视觉转换器ViTs:基于vanilla Transformer架构,比起CNN有更强的学习力。然而自注意力在大空间分辨率下有着大量的计算开销。为了减轻ViT对超大数据集的依赖,引入了一种师生蒸馏策略
- 新的状态空间模型(SSM):线性复杂度长序列建模方法,即输入数据的规模并不会明显影响模型性能。现有结构化 SSM 模型主要侧重于将 SSM 应用于长距离和顺序数据(如文本和语音),但对 SSM 在具有二维结构的视觉数据中的应用探索有限。
- Mamba核心算法:并行化选择性扫描操作,本质上是为处理一维顺序数据而设计
- VMamba 集成了基于 SSM 的模块的视觉主干,是一个在线性时间复杂度下工作的视觉骨干。
- VMamba核心:
- 二维选择性扫描(SS2D):为空间域遍历量身定制的四向扫描机制,与自注意力(a)相比,确保每个图像补丁仅通过沿相应扫描路径计算的压缩隐藏状态获得上下文知识(b),从而将计算复杂度从二次降低到线性
- VSS模块
- VMamba分为三种规模
- VMamba-Tiny 下图(a)
- 首先通过 stem 模块划分成多个块得到 H/4 × W/4 的 2D 特征图
- 多个网络阶段创建不同分辨率的分层表示。除第一个外,每一个都包含:
- 下采样
- VSS 图(b)为在Mamba中的对应物;图(c)为替换S6模块(仅仅适用于NLP任务)制定的;本文使用 图(d)消除红圈的乘法分支,新增两个残差模块
- VMamba-Small
- VMamba-Base
- VMamba-Tiny 下图(a)
- VMamba三种规模的阶段设置
- SS2D包括三个步骤
- 交叉扫描:将输入补丁沿四个不同的遍历路径展开为序列
- 使用 S6 块的选择性扫描:处理每个补丁序列
- 使用 S6 块的交叉合并:重塑和合并结果序列以形成输出映射
总结
优势:VMamba 的线性时间复杂度使其对于具有高分辨率输入的下游任务具有优势
局限:验证了无监督预训练在大规模数据集上的功效。然而现有的预训练方法与 VMamba 的兼容性,以及专门针对此类模型定制的预训练技术的识别,仍未得到探索。