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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人工智能 > 目标检测 >内容正文

目标检测

论文阅读笔记 | 目标检测算法——PP-YOLOv2

發布時間:2024/1/1 目标检测 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 论文阅读笔记 | 目标检测算法——PP-YOLOv2 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

如有錯誤,懇請指出。


文章目錄

  • 1. Introduction
  • 2. Revisit PP-YOLO
    • 2.1 Pre-Processing
    • 2.2 Baseline Model
    • 2.3 Training Schedule
  • 3. Selection of Refinements
    • 3.1 Path Aggregation Network
    • 3.2 Mish Activation Function
    • 3.3 Larger Input Size
    • 3.4 IoU Aware Branch
  • 4. Other try
    • 4.1 Cosine Learning Rate Decay
    • 4.2 Backbone Parameter Freezing
    • 4.3 SiLU Activation Function
  • 5. Result

paper:PP-YOLOv2: A Practical Object Detector
code:https://github.com/PaddlePaddle/PaddleDetection

摘要:

在PP-YOLO的基礎上再進行了改進,提高精度的同時幾乎保持推斷時間不變。作者分析了一系列改進,并通過增量消融實驗來實證評估它們對最終模型性能的影響。最后PP-YOLOv2取得了更佳的性能(49.5%mAP)-速度(69FPS)均衡,并優于YOLOv4與YOLOv5。

PP-YOLO閱讀筆記:目標檢測算法——PP-YOLO

1. Introduction


在各種實際應用中,不僅計算資源有限,而且軟件支持不足,所以雙階段的目標檢測進行的非常緩慢。所以如何在保持推理速度的同時提高YOLOv3的有效性是實際應用中的一個關鍵問題。為了同時滿足這兩個問題,作者添加了一些改進,這些改進幾乎不會增加推斷時間,從而提高PP-YOLO的整體性能。

2. Revisit PP-YOLO


2.1 Pre-Processing

應用從Beta(α,β)Beta(α, β)Beta(α,β)分布中采樣的權重MixUp,其中α=1.5,β=1.5α=1.5, β=1.5α=1.5,β=1.5

然后RandomColorDistortion、RandomExpand、RandCrop、RandomFlip以0.5的概率依次應用。

然后對RGB通道進行歸一化處理。

最后,輸入大小從[320,352,384,416,448,480,512,544,576,608]均勻抽取。

2.2 Baseline Model

基準模型是PP-YOLO,其是YOLOv3的改進版本,首先使用ResNet50-vd對YOLOv3的backbone進行替換,隨后使用了10個技巧來提升性能。

具體查看:論文閱讀筆記 | 目標檢測算法——PP-YOLO

2.3 Training Schedule

在COCOtrain2017上,使用隨機梯度下降(SGD)對網絡進行訓練,使用分布在8個gpu上的96張圖像的小批量進行500K迭代。學習率在4K迭代時從0線性增加到0.005,在400K和450K迭代時分別除以10。重量衰減設為0.0005,動量設為0.9。采用梯度裁剪來穩定訓練過程。

3. Selection of Refinements


PP-YOLOv2大致結構如圖所示:

3.1 Path Aggregation Network

使用PAN代替FPN,多了一個自頂向下的信息匯集,之前多次提及,這里不再重復。

3.2 Mish Activation Function

Mish激活函數在YOLOv4、YOLOv5等多種實際的探測器中被證明是有效的。它們在骨干中采用mish激活功能。然而,作者更喜歡使用預先訓練的參數,因為有一個強大的模型,在ImageNet上達到82.4%的top-1精度。為了保持主干不變,我們將mish激活函數應用于檢測頸部而不是主干。

3.3 Larger Input Size

增加輸入尺寸會擴大對象的面積。因此,小范圍的目標信息將比以前更容易保存。因此,性能將得到提高。但是,較大的圖像輸入尺寸會占用更多的內存。要應用這個技巧,我們需要減少Batchsize。更具體地說,我們將Batchsize從每GPU 24張圖像減少到每GPU 12張圖像,并將最大輸入尺寸從608擴大到768。

輸入大小從[320、352、384、416、448、480、512、544、576、608、640、672、704、736、768]均勻繪制。

3.4 IoU Aware Branch

在PP-YOLO中,IoU aware loss采用的是軟權重格式(soft weight format),與初衷不一致。因此作者采用軟標簽格式(soft label format)。公式為:
loss=?t?log?(σ(p))?(1?t)?log?(1?σ(p))loss = -t*\log(σ(p))-(1-t)*\log(1-σ(p)) loss=?t?log(σ(p))?(1?t)?log(1?σ(p))
其中t表示錨點和它匹配的ground-truth邊界框之間的IoU,p是IoU感知分支的原始輸出。ps:僅僅正樣本的IoU損失進行了計算

IoU注意力的提出由來:

在YOLOv3中,將分類概率和目標得分相乘作為最終檢測置信度,其中這沒有考慮到定位精度。為了處理這個問題,論文中引入一個IoU預測分支。在訓練過程中,使用感知IoU損失來訓練這個分支。在推理階段,最后的分類置信度由分類概率、目標分數和IoU值乘積得到。最終的檢測置信度然后用作后續NMS的輸入。

4. Other try


作者其實還嘗試了其他的一些消融實驗,但是沒有效果,所以最后也沒有使用這些技巧,這里還是記錄一下比較好。

4.1 Cosine Learning Rate Decay

與線性步進學習率衰減不同,余弦學習率衰減是學習率的指數衰減。不過其對初始學習率、熱身步數、結束學習率等超參數敏感,所以沒有看見其對COCOtrain2017有一個積極影響。(但是對COCOminitrain產生了積極的作用)

4.2 Backbone Parameter Freezing

在對下游任務進行ImageNet預訓練參數的微調時,通常會在前兩個階段凍結參數。然后這里同樣是對COCOminitrain有效而對COCOtrain2017無效。

不一致現象的一個可能原因是兩個訓練集的大小不同,COCO minitrain2017是COCOtrain2017的五分之一。在小數據集上訓練的參數的泛化能力可能比預先訓練的參數差。

4.3 SiLU Activation Function

同樣的SiLU,對COCOminitrain有效而對COCOtrain2017無效。所以使用Mish而不是SiLU。

5. Result


  • 消融實驗,各個在PP-YOLOv2中各個技巧帶來的提升:
  • 與SOTA的對比:

總結:

本文介紹了PP-YOLO的一些更新,形成了一個高性能的對象檢測器PPYOLOv2。PP-YOLOv2比其他著名的探測器(如YOLOv4和YOLOv5)在速度和精度上取得了更好的平衡。在本文中,我們探索了一些技巧,并展示了如何將這些技巧結合到PPYOLO檢測器上,并演示了它們的有效性。

總結,其實PP-YOLO系列幾乎沒有任何創新的,但通過實驗結合技巧提升了檢測性能。

總結

以上是生活随笔為你收集整理的论文阅读笔记 | 目标检测算法——PP-YOLOv2的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。