专栏名称: 3D视觉工坊
1、OpenCV的技术传播; 2、3D点云与重建技术; 3、Vslam技术; 4、深度学习; 5、技术干货分享。
目录
相关文章推荐
51好读  ›  专栏  ›  3D视觉工坊

YOLOv12问世!

3D视觉工坊  · 公众号  ·  · 2025-02-20 07:00

正文

点击下方 卡片 ,关注 「3D视觉工坊」 公众号
选择 星标 ,干货第一时间送达

来源:3D视觉工坊

添加小助理:cv3d001,备注:方向+学校/公司+昵称,拉你入群。文末附3D视觉行业细分群。

扫描下方二维码,加入 「3D视觉从入门到精通」知识星球 ( 点开有惊喜 ) ,星球内凝聚了众多3D视觉实战问题,以及各个模块的学习资料: 近20门秘制视频课程 最新顶会论文 、计算机视觉书籍 优质3D视觉算法源码 等。想要入门3D视觉、做项目、搞科研,欢迎扫码加入!

什么?YOLO11都还没看完呢,YOLOv12就来了???

0. 论文信息

标题:YOLOv12: Attention-Centric Real-Time Object Detectors

作者:Yunjie Tian, Qixiang Ye, David Doermann

机构:University at Buffalo、University of Chinese Academy of Sciences

原文链接:https://arxiv.org/abs/2502.12524

代码链接:https://github.com/sunsmarterjie/yolov12

1. 导读

长期以来,增强YOLO框架的网络架构一直至关重要,但主要关注基于CNN的改进,尽管注意力机制在模型能力方面已被证明具有优势。这是因为基于注意力的模型无法与基于CNN的模型的速度相匹配。本文提出了一种以注意力为中心的YOLO框架,即YOLOv12,它在保持速度的同时利用了注意力机制的性能优势。YOLOv12在准确性方面超越了所有流行的实时对象检测器,同时具有竞争力的速度。例如,YOLOv12-N在T4 GPU上的推理延迟为1.64 ms,达到40.6%的mAP,比先进的YOLOv10-N/YOLOv11-N高出2.1%/1.2%的mAP,而速度相当。这一优势也延伸到其他模型规模。YOLOv12还超越了改进DETR的端到端实时检测器,如RT-DETR/RT-DETRv2:YOLOv12-S比RT-DETR-R18/RT-DETRv2-R18快42%,仅使用36%的计算和45%的参数。

2. 效果展示

我们开发了一个包含5种模型规模的新系列实时检测器:YOLOv12-N、S、M、L和X。我们按照YOLOv11的方法在标准目标检测基准上进行了广泛的实验,没有使用任何额外的技巧,结果表明,YOLOv12在这些规模上在延迟-准确性以及浮点运算数(FLOPs)-准确性的权衡方面相比之前流行的模型提供了显著的改进,如图1所示。例如,YOLOv12-N实现了40.6%的平均精度均值(mean Average Precision, mAP),比YOLOv10-N高出2.1% mAP,同时保持了更快的推理速度,并且比YOLOv11-N高出1.2% mAP,同时速度相当。这一优势在其他规模的模型中同样保持一致。与RT-DETR-R18/RT-DETRv2-R18相比,YOLOv12-S的mAP分别高出1.5%/0.1%,同时报告了42%/42%更快的延迟速度,仅需其36%/36%的计算量和45%/45%的参数。

3. 引言

实时目标检测因其低延迟特性而一直备受关注,这一特性为其提供了极大的实用性。其中,YOLO系列在延迟和准确性之间有效建立了最佳平衡,从而在该领域占据主导地位。尽管YOLO的改进主要集中在损失函数、标签分配等领域,但网络架构设计仍是一个关键的研究重点。 推荐课程: 彻底搞懂大模型数学基础剖析、原理与代码讲解

尽管以注意力为中心的视觉变换器(Vision Transformer, ViT)架构已被证明即使在小模型中也拥有更强的建模能力,但大多数架构设计仍主要聚焦于卷积神经网络(CNN)。这种情况的主要原因在于注意力机制的低效,这主要源自两个因素:一是注意力机制的二次计算复杂度,二是其低效的内存访问操作(后者是FlashAttention主要解决的问题)。因此,在相似的计算预算下,基于CNN的架构在性能上比基于注意力的架构高出约3倍,这极大地限制了注意力机制在高推理速度至关重要的YOLO系统中的应用。

本文旨在解决这些挑战,并进一步构建一个以注意力为中心的YOLO框架,即YOLOv12。我们引入了三项关键改进。首先,我们提出了一种简单而高效的区域注意力模块(Area Attention, A2),该模块在保持大感受野的同时,以非常简单的方式降低了注意力的计算复杂度,从而提升了速度。其次,我们引入了残差高效层聚合网络(Residual Efficient Layer Aggregation Networks, R-ELAN),以解决注意力引入的优化挑战(主要是大规模模型中的挑战)。R-ELAN在原始ELAN[57]的基础上进行了两项改进:(i)采用缩放技术的块级残差设计,以及(ii)重新设计的特征聚合方法。第三,我们对基本的注意力机制进行了一些架构上的改进,以使其适应YOLO系统。我们对传统的以注意力为中心的架构进行了升级,包括:引入FlashAttention以解决注意力的内存访问问题,移除如位置编码等设计以使模型更快、更简洁,将多层感知器(MLP)的比率从4调整到1.2,以平衡注意力和前馈网络之间的计算量从而获得更好的性能,减少堆叠块的深度以促进优化,以及尽可能利用卷积算子以提高其计算效率。

4. 主要贡献

YOLOv12的贡献有两方面:

1)它建立了一个以注意力为中心、简单而高效的YOLO框架,通过方法创新和架构改进,打破了CNN模型在YOLO系列中的主导地位。2

)在不依赖预训练等额外技术的情况下,YOLOv12以快速的推理速度和更高的检测精度实现了最先进的结果,证明了其潜力。

5. 方法

降低基本注意力计算成本的一种简单方法是使用线性注意力机制,它将基本注意力的复杂度从二次降低到线性。对于维度为(n, h, d)的视觉特征f,其中n是标记的数量,h是头的数量,d是头的大小,线性注意力将复杂度从2n²hd降低到2nhd²,由于n > d,从而降低了计算成本。然而,线性注意力存在全局依赖退化、不稳定性和分布敏感性的问题。此外,由于低秩瓶颈,当应用于输入分辨率为640 × 640的YOLO时,它仅提供有限的速度优势。

另一种有效降低复杂度的方法是局部注意力机制(例如,Shift window、criss-cross attention和axial attention),如图2所示,它将全局注意力转化为局部注意力,从而降低了计算成本。然而,将特征图划分为窗口可能会引入开销或减小感受野,从而影响速度和准确性。在本研究中,我们提出了简单而高效的区域注意力模块。如图2所示,分辨率为(H, W)的特征图被划分为l个大小为(H/l, W)或(H, W/l)的段。这消除了显式的窗口划分,仅需要简单的重塑操作,从而实现更快的速度。我们经验性地将l的默认值设置为4,将感受野减小到原来的1/4,但仍保持较大的感受野。采用这种方法,注意力机制的计算成本从2n²hd降低到1/2n²hd。我们证明,尽管存在n²的复杂度,但当n固定为640时(如果输入分辨率增加,则n会增加),这仍然足够高效,可以满足YOLO系统的实时要求。有趣的是,我们发现这种修改对性能的影响微乎其微,但显著提高了速度。

高效层聚合网络(ELAN)旨在改进特征聚合。如图3(b)所示,ELAN将过渡层(1×1卷积)的输出拆分,对其中一个拆分部分通过多个模块进行处理,然后将所有输出连接起来,并应用另一个过渡层(1×1卷积)以对齐维度。然而,如[57]所分析,这种架构可能会引入不稳定性。我们认为,这种设计会导致梯度阻塞,并且缺乏从输入到输出的残差连接。此外,我们围绕注意力机制构建网络,这带来了额外的优化挑战。经验上,即使使用Adam或AdamW优化器,L和X规模的模型要么无法收敛,要么保持不稳定。

为解决这一问题,我们提出了残差高效层聚合网络(R-ELAN),如图3(d)所示。相比之下,我们在整个块中从输入到输出引入了一个具有缩放因子(默认为0.01)的残差捷径。这种设计与层缩放相似,后者是为了构建深度视觉变换器而引入的。然而,对每个区域注意力应用层缩放并不会克服优化挑战,反而会在延迟上引入减速。这表明,收敛问题不仅仅是由引入注意力机制导致的,而是ELAN架构本身的问题,这验证了我们R-ELAN设计背后的合理性。

我们还设计了一种新的聚合方法,如图3(d)所示。原始ELAN层首先通过过渡层处理模块的输入,然后将其拆分为两部分。其中一部分由后续块进一步处理,最后两部分连接在一起以产生输出。相比之下,我们的设计应用了一个过渡层来调整通道维度,并生成一个单一的特征图。然后,该特征图通过后续块进行处理,接着进行连接,形成一个瓶颈结构。这种方法不仅保留了原始特征融合能力,还降低了计算成本和参数/内存使用量。

6. 实验结果







请到「今天看啥」查看全文