日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

YOLO v4分析

發(fā)布時間:2023/11/28 生活经验 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 YOLO v4分析 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

YOLO v4分析

YOLO v4 的作者共有三位:Alexey Bochkovskiy、Chien-Yao Wang 和 Hong-Yuan Mark Liao。其中一作 Alexey Bochkovskiy 是位俄羅斯開發(fā)者,此前曾做出 YOLO 的 windows 版本。

那么,YOLOv4 性能如何呢?

在實際研究中,有很多特性可以提高卷積神經(jīng)網(wǎng)絡(CNN)的準確性。需要在大型數(shù)據(jù)集上對這些特征的組合進行實際測試,并需要對其結(jié)果進行理論上的證明。某些特性僅在某些模型上運行,并且僅在某些問題上運行,或者僅在小型數(shù)據(jù)集上運行;而某些特性(例如批歸一化和殘差連接)適用于大多數(shù)模型,任務和數(shù)據(jù)集。我們假設此類通用屬性包括加權(quán)殘差連接(WRC),跨階段部分連接(CSP),交叉小批量標準化(CmBN),自對抗訓練(SAT)和Mish激活。我們使用以下新功能:WRC,CSP, CmBN,SAT,Mish激活,馬賽克數(shù)據(jù)增強,CmBN,DropBlock正則化和CloU丟失,并結(jié)合其中一些特性來實現(xiàn)最新結(jié)果:在MSCOCO數(shù)據(jù)集以Tesla V10以65FPS的實時速度獲得43.5%AP(AP50為65.7%)。

在相關(guān)論文中,研究者對比了 YOLOv4 和當前最優(yōu)目標檢測器,發(fā)現(xiàn) YOLOv4 在取得與 EfficientDet 同等性能的情況下,速度是 EfficientDet 的二倍!此外,與 YOLOv3 相比,新版本的 AP 和 FPS 分別提高了 10% 和 12%。

接下來,我們看下 YOLO V4 的技術(shù)細節(jié)。

許多特征可以提高 CNN 的準確率,然而真正實行起來,還需要在大型數(shù)據(jù)集上對這些特征組合進行實際測試,并且對測試結(jié)果進行理論驗證。某些特征僅在某些模型上運行,并且僅限于特定的問題,或是只能在小型數(shù)據(jù)集上運行;而另外有些特征(如批歸一化和殘差連接)則適用于大多數(shù)模型、任務和數(shù)據(jù)集。

那么,如何利用這些特征組合呢?

YOLOv4 使用了以下特征組合,實現(xiàn)了新的 SOTA 結(jié)果:

·
加權(quán)殘差連接(WRC)

·
Cross-Stage-Partial-connection,CSP

·
Cross mini-Batch Normalization,CmBN

·
自對抗訓練(Self-adversarial-training,SAT)

·
Mish 激活(Mish-activation)

·
Mosaic 數(shù)據(jù)增強

·
DropBlock 正則化

·
CIoU 損失

據(jù)介紹,YOLOv4 在 MS COCO 數(shù)據(jù)集上獲得了 43.5% 的 AP 值 (65.7%
AP50),在 Tesla V100 上實現(xiàn)了 ~65 FPS 的實時速度。

該研究的主要貢獻如下:

  1. 建立了一個高效強大的目標檢測模型。它使得每個人都可以使用 1080Ti 或 2080Ti 的 GPU 來訓練一個快速準確的目標檢測器。

  2. 驗證了當前最優(yōu) Bag-of-Freebies 和 Bag-of-Specials 目標檢測方法在檢測器訓練過程中的影響。

  3. 修改了 SOTA 方法,使之更加高效,更適合單 GPU 訓練。這些方法包括 CBN、PAN、SAM 等。

YoloV4 如何實現(xiàn)這么好的效果?

YoloV4 的基本目標是提高生產(chǎn)系統(tǒng)中神經(jīng)網(wǎng)絡的運行速度,同時為并行計算做出優(yōu)化,而不是針對低計算量理論指標(BFLOP)進行優(yōu)化。YoloV4 的作者提出了兩種實時神經(jīng)網(wǎng)絡:

· 對于 GPU,研究者在卷積層中使用少量組(1-8 組):CSPResNeXt50 / CSPDarknet53;

· 對于 VPU,研究者使用了分組卷積(grouped-convolution),但避免使用
Squeeze-and-excitement(SE)塊。具體而言,它包括以下模型:EfficientNet-lite / MixNet / GhostNet / MobileNetV3。

在模型結(jié)構(gòu)選擇時,主要考慮了三個問題:為了檢測較小的物體,輸入圖片需要較高的分辨率,為了更大的感受野需要更多層的網(wǎng)絡,為了網(wǎng)絡的容量需要更多的參數(shù)。其中關(guān)于感受野作者分析了三種不同level的感受野:能看到整個目標的感受野,能看到整個圖像的感受野,大于整個圖像的感受野。作者選擇了CSPDarknet53作為主干網(wǎng)絡,SPP與modified-PAN作為Neck,沿用了yolov3的Head。

YOLOv4 包含以下三部分:

· 骨干網(wǎng)絡:CSPDarknet53

· Neck:SPP、PAN

· Head:YOLOv3

具體而言,YOLO v4 使用了:

bag-of-freebies:不會對測試過程的時間造成影響的方法。這里主要包括數(shù)據(jù)增強,dropout等正則化方法,對數(shù)據(jù)不平衡問題進行處理的方法(focal loss等),最后就是bbox回歸問題進行處理的方法(改變mse loss 為IOU loss等)。

bag-of-specials:在網(wǎng)絡中插入模塊使得網(wǎng)絡的測試過程的時間輕微增加的方法。這里主要包括上面講到的各種用于提取并組合特征的Neck,在網(wǎng)絡中加入attention module(注意力模塊),以及一些類似NMS(非最大值抑制)的后處理方法。

· 用于骨干網(wǎng)絡的 Bag of Freebies(BoF):CutMix 和 Mosaic
數(shù)據(jù)增強、DropBlock 正則化和類標簽平滑;

· 用于骨干網(wǎng)絡的 Bag of Specials(BoS):Mish 激活、CSP 和多輸入加權(quán)殘差連接(MiWRC);

· 用于檢測器的 Bag of Freebies(BoF):CIoU-loss、CmBN、DropBlock 正則化、Mosaic 數(shù)據(jù)增強、自對抗訓練、消除網(wǎng)格敏感性(Eliminate grid sensitivity)、針對一個真值使用多個錨、余弦退火調(diào)度器、優(yōu)化超參數(shù)和隨機訓練形狀;

· 用于檢測器的 Bag of Specials(BoS):Mish 激活、SPP 塊、SAM 塊、PAN 路徑聚合塊和
DIoU-NMS。

架構(gòu)選擇

該研究的目標是找出輸入網(wǎng)絡分辨率、卷積層數(shù)量、參數(shù)量(濾波器大小濾波器通道/組)和層輸入數(shù)量(濾波器)四者之間的最優(yōu)平衡。

次要目標則是挑選能夠增加感受野的額外塊(additional block),以及針對不同級別的檢測器從不同骨干層中挑選最佳的參數(shù)聚合方法,如 FPN、PAN、ASFF 和 BiFPN 網(wǎng)絡。

研究者在 CSPDarknet53 上添加了 SPP 塊,因為它能夠極大地增加感受野,分離出最顯著的上下文特征,并且?guī)缀鯖]有降低網(wǎng)絡運行速度。他們針對不同級別的檢測器從不同骨干層中挑選 PANet 作為參數(shù)聚合方法,而放棄了 YOLOv3 中使用的 FPN 網(wǎng)絡。

最后,研究者選擇了 CSPDarknet53 骨干網(wǎng)絡、SPP
額外模塊、PANet 路徑聚合 neck 和 YOLOv3(基于錨的)head 作為
YOLOv4 的整體架構(gòu)。

BoF 和 BoS 的選擇

為了提升目標監(jiān)測的訓練效果,CNN 使用了以下方法:

·
激活函數(shù):ReLU、 leaky-ReLU、parametric-ReLU、ReLU6、SELU、Swish、Mish;

·
邊界框回歸損失(Bounding box regression loss):MSE、IoU、GIoU、CIoU、DIoU;

·
數(shù)據(jù)增強:CutOut、MixUp、CutMix;

·
正則化方法:DropOut,、DropPath、Spatial DropOut、DropBlock;

·
通過均值和方差的歸一化網(wǎng)絡激活函數(shù):批歸一化(BN)、跨 GPU 批歸一化 (CGBN 或 SyncBN)、濾波器響應歸一化(FRN)、交叉迭代批歸一化(CBN);

·
跳躍連接方式:殘差連接、加權(quán)殘差連接、多輸入加權(quán)殘差連接、Cross stage 局部連接(CSP)。

在訓練激活函數(shù)時,因為 PReLU 和 SELU 更難訓練,ReLU6 是專為量化網(wǎng)絡設計的,所以從候選列表里刪除了這幾個函數(shù)。

額外改進

為了使檢測器更適合在單個 GPU 上進行訓練,研究者還做出了以下額外的設計與改進:

·
提出新型數(shù)據(jù)增強方法 Mosaic 和自對抗訓練(SAT);

·
在應用遺傳算法時選擇最優(yōu)超參數(shù);

·
修改現(xiàn)有方法,使新方法實現(xiàn)高效訓練和檢測——modified SAM、modified PAN 和 Cross mini-Batch
Normalization (CmBN)。

新型數(shù)據(jù)增強方法 Mosaic 混合了 4 張訓練圖像,而 CutMix 只混合了兩張輸入圖像,具體如下圖 3 所示:

圖 3:Mosaic 表示的一種新型數(shù)據(jù)增強方法。

自對抗訓練(SAT)也是一種新的數(shù)據(jù)增強方法,它包括兩個階段。第一個階段中,神經(jīng)網(wǎng)絡更改原始圖像;第二階段中,訓練神經(jīng)網(wǎng)絡以正常方式在修改后的圖像上執(zhí)行目標檢測任務。

CmBN 是 CBN 的改進版,它僅收集單個批次內(nèi)
mini-batch 之間的統(tǒng)計數(shù)據(jù)。

圖 4:CmBN 圖示。

研究者還將 SAM 從空間注意力機制(spatial-wise
attention)修改為點注意力機制(point-wise attention),并將 PAN 中的捷徑連接替換為級聯(lián),如下圖 5、6 所示:

圖 5:Modified SAM。

圖 6:Modified PAN。

實驗結(jié)果

YOLO v4 與其他 SOTA 目標檢測器的對比結(jié)果如下圖 7 所示。從圖上可以看出,YOLOv4 位于帕累托最優(yōu)曲線上,并在速度和準確性上都優(yōu)于最快和最精準的檢測器。

圖 7:不同目標檢測器的速度和準確性對比結(jié)果。

總結(jié)

以上是生活随笔為你收集整理的YOLO v4分析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。