Upgrade to Pro — share decks privately, control downloads, hide ads and more …

YOLOv10~v12

 YOLOv10~v12

DeNA/Go CV輪講の発表時の資料です。
YOLOv10~v12の改良点を調査し、まとめました。

TakatoYoshikawa

April 16, 2025
Tweet

More Decks by TakatoYoshikawa

Other Decks in Technology

Transcript

  1. AI 4 ❏ YOLOv10の改善 a. 推論時のNMS(Non-Maximum Suppression)による後処理を 不要にする学習方法 → End-to-endのObject

    Detectionへ b. 効率と精度を両立させるためのモデルアーキテクチャの改善 YOLOv10: Real-Time End-to-End Object Detection [Ao+, NeurIPS2024] 速度/精度、モデルサイズ/精度のトレードオフで 既存手法を上回る
  2. AI 5 ❏ NMSによる後処理 1. 信頼度がしきい値以下のBBoxを削除 2. 最も信頼度が高いBBoxと他のBBoxとのIoUを計算 3. IoUがしきい値以上のBBoxを削除

    ❏ NMSの課題点 ❏ End-to-endでないため、精度がしきい値 に依存する ❏ NMSにかかる時間分推論速度が低下する 0.8 0.9 0.7 https://arxiv.org/abs/2304.08069 YOLOv8でそれぞれのしきい値を変化させたときの 精度とNMSにかかる時間の変化 YOLOv10: Real-Time End-to-End Object Detection [Ao+, NeurIPS2024]
  3. AI 6 ❏ One-to-one Headを追加 ❏ Detection Transformerを参考に 各GTに対して複数のBBox とLossを計算

    (従来のYOLOと同様) 各GTに対して1つのBBox とLossを計算 YOLOv10: Real-Time End-to-End Object Detection [Ao+, NeurIPS2024]
  4. AI 7 ❏ Consistent dual assignment ❏ 学習時は両方のヘッドで最適化 ❏ 推論時はOne-to-one

    Headのみ使用 →NMS不要でEnd-to-endの推論が可能に! YOLOv10: Real-Time End-to-End Object Detection [Ao+, NeurIPS2024]
  5. AI 8 ❏ Consistent matching metric ❏ 各GTに対してどの予測BBoxを割り当てるか ❏ 以下の指標を元に割り当て

    ❏ One-to-manyはtop n個を割り当て ❏ α, βは分類と位置のタスクの重要度のバランス を取るハイパーパラメータ ❏ One-to-oneとOne-to-manyそれぞれで同じパラメータにすることで 両方のヘッドの最適な予測BBoxが同じになるように学習が進む GTの中にアンカーポイント があるかどうか0/1 分類スコア GTと予測BBox のIoU YOLOv10: Real-Time End-to-End Object Detection [Ao+, NeurIPS2024]
  6. AI 9 ❏ 効率化のためのモデルアーキテクチャ改善 ❏ クラス分類のConv→Depthwise conv + Pointwise convに変更

    ❏ 空間ダウンサンプリング時のConv→Pointwise conv + Depthwise convに変更 ❏ 各ステージの最後の畳み込みのランクが低いブロックを より効率的なCIBブロックに置き換える 各ステージ・スケールのランク CIBブロック YOLOv10: Real-Time End-to-End Object Detection [Ao+, NeurIPS2024]
  7. AI 13 ❏ アーキテクチャの変更 ❏ (おそらく)YOLOv8をベースに 以下の改良を加える ❏ C2fブロック→C3k2ブロックに ❏

    SPPFの後ろにCross Stage Partial with Spatial Attention (C2PSA) ブロックを追加 ❏ 幅広いタスクをサポート ❏ 物体検出、instance segmentation ❏ pose estimation ❏ 画像分類 ❏ Oriented Detection YOLOv11 https://github.com/ultralytics/ultralytics/issues/17102
  8. AI 16 ❏ アーキテクチャの変更 1. Area attention (A2) moduleの導入 2.

    Residual Efficient Layer Aggregation Networks(R-ELAN) の導入 3. アーキテクチャの調整 YOLOv12: Attention-Centric Real-Time Object Detectors [Yunjie+, arXiv2025]
  9. AI 17 ❏ Area Attention (A2) Module ❏ 特徴マップを(H/l, W)

    or(H, W/I)に分割してAttentionを計算 ❏ window分割の処理等が不要で、reshapeのみで動作するので高速 ❏ l=4で実装 YOLOv12: Attention-Centric Real-Time Object Detectors [Yunjie+, arXiv2025]
  10. AI 18 ❏ R-ELAN (Residual Efficient Layer Aggregation Networks) a.

    CSPNet ❏ DenseNetの利点を活かしつつ、勾配経路に着目し 最初に特徴マップを分岐(勾配経路を分岐)させることで、 大きいモデルでも安定した学習+計算効率UP b. ELAN ❏ ブロックの途中も分岐させて、短い勾配経路を増やすことで 層を増やしてもより安定した学習になり、精度向上 YOLOv12: Attention-Centric Real-Time Object Detectors [Yunjie+, arXiv2025]
  11. AI 19 ❏ R-ELAN (Residual Efficient Layer Aggregation Networks) c.

    C3K2(YOLOv11で使用) ❏ 1つの大きな畳み込みの代わりに、分岐させた2つの畳み込みを使うことで 計算効率を上げる d. R-ELAN ❏ ELANのConvをA2モジュールにすると収束しづらい(特に大きいモデル) ❏ 特徴マップの分岐はせずに、残差ショートカットを追加 →学習が安定+計算コストやパラメータも削減 YOLOv12: Attention-Centric Real-Time Object Detectors [Yunjie+, arXiv2025]
  12. AI 20 ❏ アーキテクチャの調整 ❏ backboneの最初の2ステージはYOLOv11と同様 ❏ 残りのC3k2→R-ELANに ❏ backboneの最後の3ブロックもR-ELAN

    ❏ Attention moduleの調整 ❏ Linear+LNの代わりにConv2d+BN ❏ Positional Encodingの代わりに7x7畳み込みで位置情報を補助 など YOLOv12: Attention-Centric Real-Time Object Detectors [Yunjie+, arXiv2025]
  13. AI 22 まとめ ❏ YOLOv10 ❏ NMSを不要にする学習方法でEnd-to-endに ❏ DETRに近い学習方法 ❏

    YOLOv11 ❏ アーキテクチャの調整 ❏ YOLOv12 ❏ Attention機構の導入 ❏ それに伴うR-ELANの導入