一、本文介绍
本文记录的是利用Focused Linear Attention聚焦线性注意力模块优化RT-DETR的目标检测网络模型。Focused Linear Attention module的作用在于同时解决了线性注意力的焦点能力不足和特征多样性受限的问题,克服了常见线性注意力方法存在性能下降或引入额外计算开销。本文将其加入到RT-DETR中,进一步发挥其性能。
专栏目录:RT-DETR改进目录一览 | 涉及卷积层、轻量化、注意力、损失函数、Backbone、SPPF、Neck、检测头等全方位改进
专栏地址:RT-DETR改进专栏——以发表论文的角度,快速准确的找到有效涨点的创新点!
二、聚焦线性注意力模块介绍
FLatten Transformer: Vision Transformer using Focused Linear Attention
2.1 设计出发点
- 解决线性注意力性能下降问题:当前线性注意力方法存在性能下降或引入额外计算开销的问题,从焦点能力和特征多样性两个角度分析并解决这些局限。
2.2 原理
2.2.1 焦点能力(Focus ability)原理
- Softmax注意力的优势:
Softmax注意力提供非线性加权机制,能聚焦重要特征,其注意力图分布在某些区域(如前景物体)很尖锐。 - 线性注意力的不足:线性注意力的注意力图分布相对平滑,缺乏聚焦能力。
- 提出的解决方案:提出
聚焦函数(Focused Function)$f_p$,通过调整查询(query)和键(key)特征的方向,使相似的查询 - 键对靠近,不同的远离。具体映射函数为$Sim(Q_i, K_j)=\phi_p(Q_i)\phi_p(K_j)^T$,其中$\phi_p(x)=f_p(ReLU(x)), f_p(x)=\frac{|x|}{|x^{ p}|}x^{ p}$。该函数仅调整特征方向,在适当假设下,能影响注意力分布,使相似和不相似的查询 - 键对有更显著差异,恢复类似Softmax的尖锐注意力分布。2.2.2 特征多样性(Feature diversity)原理
- 注意力矩阵秩的影响:注意力矩阵的秩影响特征多样性。在一些Transformer层中,如DeiT - Tiny,Softmax注意力的矩阵可满秩,能体现特征聚合的多样性;而线性注意力的秩受限于令牌数量N和通道维度d(通常$d<N$),导致许多行的注意力图同质化,聚合特征相似。
- 提出的解决方案:添加
深度可分离卷积(DWC)模块到注意力矩阵,输出为$O=\phi(Q)\phi(K)^T V + DWC(V)$。从矩阵秩角度看,$O = (\phi(Q)\phi(K)^T + M{DWC})V = M{eq}V$,$M_{DWC}$是对应DWC的稀疏矩阵,可能是满秩矩阵,从而增加等效注意力矩阵秩的上界,在几乎不增加计算开销的同时提高线性注意力性能。2.3 结构
基于上述分析,聚焦线性注意力模块(Focused Linear Attention module)结构如下:
$$O = Sim(Q, K)V=\phi_p(Q)\phi_p(K)^T V + DWC(V)$$2.4 优势
- 提出的解决方案:添加
- 计算复杂度低
- 与线性注意力一样,通过改变自注意力计算顺序,将复杂度从$O(N^2d)$降为$O(Nd^2)$,在常见Vision Transformer设计中,整体计算量实际减少。
- 与设计复杂核函数的先前线性注意力模块相比,提出的聚焦函数$f_p$仅采用简单操作,以最小计算开销实现近似。
- 表达能力强
- 从焦点能力和特征多样性角度分析,先前基于核的线性注意力设计不如Softmax注意力,但该模块通过聚焦函数$f_p$和深度可分离卷积,能比Softmax注意力实现更好性能。
- 适应性强
- 可适应更大的感受野和不同模型架构。基于Softmax注意力的现代Transformer模型因二次复杂度对令牌数量有限制,而该模块的线性复杂度使其能在保持计算量不变的情况下扩展感受野,还能作为插件模块应用于多种现代视觉Transformer架构。
论文:https://arxiv.org/pdf/2308.00442
源码: https://github.com/LeapLabTHU/FLatten-Transformer
三、实现代码及RT-DETR修改步骤
模块完整介绍、个人总结、实现代码、模块改进、二次创新以及各模型添加步骤参考如下地址: