一、本文介绍
本文记录的是利用MLLA
模块优化RT-DETR
的目标检测网络模型。MLLA
模块具有独特优势。它不同于传统模块,能同时兼顾局部特征高效建模与长距离交互学习。常见模块要么在局部特征处理上有优势但长距离交互能力弱,要么反之,而MLLA
模块克服了此问题。它融合了Mamba模型和线性注意力机制的优势,通过独特的结构设计,能够在保持计算效率的同时,精准地建模局部特征并学习长距离交互信息。本文将其用于RT-DETR
的模型改进和二次创新,能够更加关注图像中的重要特征区域,抑制背景等无关信息的干扰,从而突出目标物体的关键特征。
专栏目录:RT-DETR改进目录一览 | 涉及卷积层、轻量化、注意力、损失函数、Backbone、SPPF、Neck、检测头等全方位改进
专栏地址:RT-DETR改进专栏——以发表论文的角度,快速准确的找到有效涨点的创新点!
二、MLLA模块介绍
Demystify Mamba in Vision: A Linear Attention Perspective
2.1 出发点
在探索Mamba
与线性注意力Transformer
关系时发现,Mamba
的特殊设计中遗忘门和块设计对性能提升贡献大。MLLA模块
旨在将这两个关键设计融入线性注意力,以提升其在视觉任务中的性能,同时保持并行计算和快速推理优势。
2.2 原理
2.2.1 选择性状态空间模型(Selective SSM)与线性注意力的关联
选择性SSM
公式(如$h{i}=\tilde{A}{i}\odot h{i - 1}+B{i}(\Delta{i}\odot x{i})$和$y{i}=C{i}h{i}+D\odot x{i}$)与单头线性注意力
公式(如$S{i}=1\odot S{i - 1}+K{i}^{\top}(1\odot V{i})$和$y{i}=Q{i}S{i}/Q{i}Z{i}+0\odot x{i}$)相似。如下图,能直观看到两者结构上的相似性,进而理解将选择性SSM视为线性注意力特殊变体的依据。- 其中$\Delta{i}$为输入门,$\tilde{A}{i}$为遗忘门,$D\odot x_{i}$是捷径,且
选择性SSM
无归一化且类似单头设计。
2.2.2 遗忘门的特性与作用
- 遗忘门$\tilde{A}_{i}$元素值在0到1之间,产生局部偏差且提供位置信息,下图b中遗忘门平均值在不同层的情况可辅助理解其在不同层的作用特性。
- 但遗忘门需循环计算,降低吞吐量,不适合非自回归视觉模型,不过可利用位置编码(如
APE
、LePE
、CPE
和RoPE
)替代。下表中对比使用遗忘门和不同位置编码时模型的性能,体现了位置编码替代遗忘门的可行性。
2.2.3 块设计的改进
Mamba块
设计结合H3
和Gated Attention
,集成多种操作,比传统Transformer块
设计更有效。MLLA
模块通过替换Transformer
块中的注意力子块为Mamba的块
设计,并用线性注意力替代选择性SSM,调整参数。
2.3 结构
MLLA模块
结构基于上述原理,包含输入/输出投影、$Q/K$投影、门控投影、线性注意力、深度卷积(DWConv)和多层感知机(MLP)等组件,下图中是MLLA模型
架构图,可清晰看到各组件在模块中的位置和连接关系。
数据先经投影,再通过线性注意力聚合信息,接着经深度卷积和门控机制处理,最后通过MLP非线性变换得到输出,以此往复。
2.4 优势
- 性能提升
- 在图像分类(ImageNet - 1K数据集)、目标检测(COCO数据集)和语义分割(ADE20K数据集)等任务中表现出色,超过多种视觉Mamba模型。
- 计算效率高
- 保持并行计算能力,推理速度快。与Mamba模型相比,MLLA模型推理速度显著提升。如MLLA模型比Mamba2D快4.5倍,比VMamba快1.5倍且准确性更好,处理高分辨率图像等任务更具优势。
论文:https://arxiv.org/pdf/2405.16605
源码: https://github.com/LeapLabTHU/MLLA
三、实现代码及RT-DETR修改步骤
模块完整介绍、个人总结、实现代码、模块改进、二次创新以及各模型添加步骤参考如下地址: