YOLOv9: Learning What You Want to Learn Using Programmable Gradient Information
概要
- YOLOv4 → YOLOR → YOLOv7派閥の最新YOLO論文
- 入力データがネットワークを伝播する際に失われる情報に対する解決策としてProgrammable Gradient Information (PGI)という概念と新しい軽量なアーキテクチャGeneralized Efficient Layer Aggregation Network(GELAN)を提案した。
- 大規模なデータセットを用いて事前学習したDETRよりもスクラッチで学習したYOLOv9の方がいい精度
- PGI
- NNのレイヤーを通る度に情報量はどんどん損失していく
- 情報損失が発生しない可逆関数を設計する
- 例えば、ResNetなどでは、のようにすることで、情報損失を防いでいる。他にも拡散モデルなど。
- 以下のような構造で情報損失を防ぐ
- Auxiliary Reversible Branch:RevColだと推論時間が20%増加してしまうため、訓練の時だけ使用し、推論の時はmain branchのみを利用する
- Multi-level Auxiliary Information:Deep Supervisionのように深いネットワーク特徴から直接学習してしまうと浅い解像度の情報を失ってしまうため、浅いネットワーク特徴と深いネットワーク特徴を結合する層を一つ挟む
- GELAN
- ELANはCNNのみを使っていたが、あらゆる計算ブロックを使用できる形に一般化した
- 実際の計算ブロックとしてはRepConvを使用