オムライスの備忘録

数学・統計学・機械学習・プログラミングに関することを記す

【深層学習】YOLO v4 #アルゴリズム編 #00

yhayato1320.hatenablog.com

Index

YOLO v4 とは

物体検出のアルゴリズムのひとつ.

yhayato1320.hatenablog.com

CNN の精度向上に利用されるテクニックを導入して、YOLO を改善した.

  • Weighted-Residual Connections (WRC)
  • Cross-Stage-Partial-connections (CSP)
  • Cross mini-Batch Normalization (CmBN)
  • Self-Adversarial-Training (SAT)
  • Mish Activation Function
  • DropBlock Regularization
  • CIoU Loss

この論文の注目ポイント

  1. 効率的なネットワークアーキテクチャを採用することで、
    一般的な GPU で高速な学習を行うことができる.

  2. Bag of Freebies および Bag of Specials の影響を検証.

  3. CBN 、PAN 、Spatial Attention Module (SAM) などの最先端の方法を調整し、
    より効率的で、シングルGPUの学習に適したものにする.

Bag of Freebies / Bag of Specials

  • Bag of Freebies : 推論コストを上げずに、精度を上げようと試みる

    • DropBlock Regularization
    • CIoU Loss

  • Bag of Specials : 僅かな推論コストを許容することで、精度を上げようと試みる

    • Spatial Attention Module / SAM
    • Mish Activation Function

Bag of Freebies

通常、我々は、物体検出はリアルタイムではなく、オフラインで学習できる.

この利点を利用して、推論のコスト(処理時間)を増やすことなく、
レーニング方法を改善する.

レーニング戦略・トレーニングコストを増やすだけで、
推論時の精度をあげる戦略をBag of Freebiesと呼ぶ.

物体検出の精度を向上させようと考えると、ネットワークアーキテクチャ
高解像で・深く・複雑にする方法が考えられる.

しかし、その方法では、推論時のコストが大きくなってしまう.
Bag of Freebies では、トレーニング戦略を改良することで、
推論時の精度を上げると考える.


yhayato1320.hatenablog.com

Bag of Specials

僅かな推論コストを許容することで、精度を上げようする考え.

  • Convolution の改善
  • Attention の導入
  • 特徴量の扱い方の改善
  • 活性化関数の改善
  • 後処理

yhayato1320.hatenablog.com

ネットワークアーキテクチャ


この論文の基本方針として、計算量 (FLOPS) の最小化ではなく、
あくまで本番システムにて、ニューラルネットワークが高速・並列に
動作・計算するように最適化すること.

そこで、以下の実行環境にてネットワークアーキテクチャを比較する.

  • GPU

    • CSP ResNeXt-50
    • CSP Darknet-53
  • VPU

    • EfficientNet-lite
    • MixNet
    • GhostNet
    • MobileNetV3

Backbone

入力の解像度、畳み込み層の数、パラメータ数、出力の大きさの
4つの間で、バランスが良いネットワークアーキテクチャを見つけたい.

以下のアーキテクチャから比較して、CSP Darknet-53を採択.



CSP Darknet-53

Neck

Spatial Pyramid Pooling / SPP を CSP Darknet-53 に導入する.

yhayato1320.hatenablog.com

Spatial Pyramid Pooling / SPP



YOLO v3 で利用していた Feature Pyramid Network / FPN の代わりに
Path Aggregation Network / PAN を利用する.

yhayato1320.hatenablog.com

Path Aggregation Network / PAN

YOLO v3 と同様 Anchor Base / Dense Prediction を採用する.

アーキテクチャまとめ

部分 法名
Backbone CSP Darknet-53
Neck Spatial Pyramid Pooling / SPP
Neck Path Aggregation Network / PAN
Head Ancker Base / Dense Prediction

改善・工夫

Data Augmentation

Mosaic

Self-Adversarial Training / SAT

Nomalization

  • BN
  • CBN
  • CmBN

yhayato1320.hatenablog.com

Spatial Attention Module / SAM の改善

画像に適用される Attention.
ネットワークアーキテクチャ に利用される.

Path Aggregation Network / PAN の改善

ネットワークアーキテクチャのNeckで利用される PAN の改善.

参考

  • YOLOv4: Optimal Speed and Accuracy of Object Detection
    • [2020]
    • Abstract
    • 1 Introduction
    • 2 Related work
      • 2.2 Bag of freebies
      • 2.3 Bag of specials
    • 3 Methodology
      • 3.1 Selection of architecture
      • 3.3 Additional improvements
      • 3.4 YOLOv4
    • arxiv.org

Web サイト