前言:Hello大家好,我是小哥談。長期以來,改進YOLO框架的網絡架構一直至關重要,但盡管注意力機制在建模能力方面已被證明具有優越性,相關改進仍主要集中在基于卷積神經網絡(CNN)的方法上。這是因為基于注意力機制的模型無法達到基于CNN模型的速度。本文提出了一個以注意力機制為核心的YOLO框架即YOLOv12,它在利用注意力機制性能優勢的同時,能達到之前基于CNN模型的速度。實驗證明,YOLOv12在準確性上超越了所有流行的實時目標檢測器,同時速度也具有競爭力。🌈
? ? ?目錄
🚀1.論文簡介
🚀2.具體改進
🍀🍀2.1?區域注意力(Area Attention, A2)
🍀🍀2.2?殘差高效層聚合網絡(R-ELAN)
🍀🍀2.3?適配 YOLO 的注意力機制優化
🚀3.論文總結
🚀1.論文簡介
前言:
實時目標檢測因其低延遲特性一直備受關注,具有很高的實用性。其中,YOLO系列有效地在延遲和準確性之間取得了最佳平衡,從而在該領域占據主導地位。盡管YOLO的改進主要集中在損失函數、標簽分配等方面,但網絡架構設計仍然是關鍵的研究重點。盡管以注意力機制為核心的視覺變換器(ViT)架構已被證明即使在小模型中也具有更強的建模能力,但大多數架構設計仍主要集中在卷積神經網絡(CNN)上。
YOLOv12 是 YOLO 系列中首個打破傳統基于卷積神經網絡(CNN)方法的模型,它通過將注意力機制直接集成到目標檢測過程中實現了這一突破。本文深入研究了 YOLOv12 的架構、創新模塊、技術細節以及它在實際應用中的性能表現。該模型配備了區域注意力(Area Attention)方法、殘差高效層聚合網絡(Residual Efficient Layer Aggregation Networks,R-ELAN)和快速注意力(FlashAttention)等先進技術,既實現了高檢測精度(平均精度均值,mAP),又具備實時推理速度,為工業應用、自動駕駛、安防等眾多領域帶來了革命性的提升。
背景與動機:
-
傳統 CNN 模型的局限性
盡管傳統的卷積神經網絡(CNN)在目標檢測中表現良好,但它們的建模能力不如基于 Transformer 的注意力機制強大。 -
注意力機制的效率瓶頸
注意力機制雖然具備強大的建模能力,但由于其計算復雜度較高(通常是?),難以滿足實時目標檢測的需求。 -
YOLO 系列模型的改進空間
雖然 YOLO 系列模型在速度和精度之間取得了良好的平衡,但在結合注意力機制方面仍有不足。
目標:
將注意力機制高效地集成到 YOLO 框架中,從而在保持實時推理速度的同時顯著提升檢測精度。
本文創新點:
本篇論文圍繞實時目標檢測,在網絡架構設計上引入創新,克服了傳統注意力機制在實時應用中的速度瓶頸,提升了檢測性能。
- 構建注意力中心框架:突破傳統 YOLO 依賴 CNN 架構的局限,以注意力機制為核心設計 YOLOv12 框架,發揮注意力機制強大的建模能力,打破 CNN 模型在 YOLO 系列中的主導地位。
- 高效的區域注意力模塊:提出簡單有效的區域注意力模塊(A2),通過簡單的特征圖劃分方式,在減少注意力計算復雜度的同時,保持較大的感受野,顯著提升計算速度,且對性能影響較小。
- 殘差高效層聚合網絡:引入 R-ELAN 解決注意力機制帶來的優化挑戰。通過塊級殘差設計和重新設計的特征聚合方法,增強特征聚合能力,降低模型計算成本和參數 / 內存使用,保證大模型穩定訓練。
- 優化基礎注意力機制:對基礎注意力機制進行多項改進,如調整 MLP 比例、采用卷積算子、去除位置編碼并引入大的可分離卷積感知位置信息等,使模型更適配 YOLO 系統的實時性要求,提升綜合性能。
論文題目:《YOLOv12: Attention-Centric Real-Time Object Detectors》
論文地址:??[2502.12524] YOLOv12: Attention-Centric Real-Time Object Detectors
代碼地址:??https://github.com/sunsmarterjie/yolov12
🚀2.具體改進
YOLOv12 主要從以下 3 個方面進行改進:
🍀🍀2.1?區域注意力(Area Attention, A2)
問題:
-
傳統的全局自注意力計算復雜度為 O(n2),對大規模輸入(如 640×640 圖像)計算量過大,推理速度較慢。
-
現有的局部注意力方法(如窗口注意力、軸向注意力等)通常引入額外計算開銷或降低感受野。
解決方案:
-
劃分特征圖:將輸入特征圖均勻劃分為 4 個區域(默認),避免復雜的窗口劃分策略,簡化計算。
-
局部計算注意力:對每個區域內部獨立計算注意力,計算復雜度從 O(n2) 降至 O(n2/2),減少 50% 計算量,同時保持較大的感受野。
優勢:
-
計算量降低,相比全局注意力更快。
-
推理速度提高,能滿足 YOLO 框架的實時需求。
-
感受野仍然較大,相比窗口注意力(如 Swin Transformer),仍能有效捕捉全局信息。
🍀🍀2.2?殘差高效層聚合網絡(R-ELAN)
問題:
-
傳統 ELAN(Efficient Layer Aggregation Network)結構中,多分支特征聚合容易導致梯度阻塞(Gradient Blocking),使大模型難以優化。
-
YOLO 結構本身主要依賴 CNN,而注意力機制的加入會引入新的優化挑戰。
解決方案:
-
引入殘差連接:在 ELAN 結構基礎上,增加殘差連接,提升梯度流動,減少梯度阻塞,提高大規模模型(L, X 規模)的穩定性。
-
縮放因子(Scaling Factor):
-
采用一個小的縮放因子(0.01),確保殘差分支不會影響整體優化,同時改善梯度流動。
-
適用于 L 級別及以上的 YOLOv12,防止大模型訓練不穩定或無法收斂。
-
優勢:
-
提高大模型穩定性:L、X 級別模型優化更穩定,梯度流動順暢。
-
減少計算開銷:在不增加計算量的前提下,提高訓練穩定性和推理精度。
🍀🍀2.3?適配 YOLO 的注意力機制優化
在 YOLO 框架中直接引入注意力機制會導致推理速度下降,因此 YOLOv12 對注意力機制進行了多項優化:
(1)引入 FlashAttention
問題:
-
傳統自注意力計算涉及大量 GPU 內存訪問,導致速度下降。
-
YOLO 需要高效的推理速度,但注意力機制通常較慢。
解決方案:
-
采用 FlashAttention(適用于 Turing, Ampere, Ada Lovelace, Hopper 架構的 GPU,如 T4, A5000)。
-
優化 GPU 內存訪問,減少高帶寬 GPU 內存(HBM)的讀寫需求,提高計算效率。
優勢:
-
速度相比普通注意力機制提升 約 20%-30%。
-
降低內存占用,使 YOLOv12 適用于實時推理場景。
(2)去除位置編碼(Positional Encoding)
問題:
-
絕對位置編碼(APE)和相對位置編碼(RPE)會增加計算復雜度,同時帶來額外的參數量。
-
YOLO 框架主要依賴 CNN 進行特征提取,已有的卷積感受野本身具有一定的位置信息。
解決方案:
-
直接去除位置編碼,改用 7×7 大核卷積(Position Perceiver)增強位置信息。
-
不影響模型精度,同時減少額外計算。
優勢:
-
計算量降低,減少額外參數。
-
速度更快,適應實時檢測任務。
(3) 調整 MLP 結構
問題:
-
傳統 Transformer 結構中,MLP 比例為 4:1,即前饋網絡比注意力計算量大 4 倍。
-
這種配置對 YOLO 結構而言不夠高效,容易浪費計算資源。
解決方案:
-
調整 MLP 比例:
-
N, S, M 規模:MLP 比例設為 2
-
L, X 規模:MLP 比例設為 1.2
-
-
使注意力機制的計算量與前饋網絡計算量更加均衡。
優勢:
-
計算資源分配更合理,提升推理速度。
-
減少冗余計算,提升 YOLO 結構適應性。
🚀3.論文總結
本研究介紹了YOLOv12,它成功地將傳統上被認為不符合實時要求的以注意力為中心的設計引入到YOLO框架中,實現了最先進的延遲 - 精度權衡。為了實現高效推理,我們提出了一種新穎的網絡,該網絡利用區域注意力機制降低計算復雜度,并采用殘差高效層聚合網絡(R - ELAN)增強特征聚合。此外,我們對原始注意力機制的關鍵組件進行了改進,使其更好地符合YOLO的實時約束條件,同時保持高速性能。因此,YOLOv12通過有效結合區域注意力、R - ELAN和架構優化,實現了最先進的性能,在準確性和效率方面都有顯著提升。全面的消融實驗進一步驗證了這些創新的有效性。本研究挑戰了基于卷積神經網絡(CNN)設計在YOLO系統中的主導地位,并推動了注意力機制在實時目標檢測中的集成,為構建更高效、更強大的YOLO系統鋪平了道路。