コンテンツにスキップ

YOLOv6.0とEfficientDetの比較:物体検出における速度と精度のバランス

急速に進化するコンピュータビジョンにおいて、適切な物体検出アーキテクチャを選択することは、プロジェクトの成功に不可欠です。この比較では、YOLOv6.0と EfficientDetという、視覚認識という課題に異なる角度からアプローチする2つの著名なモデルについて掘り下げます。EfficientDetがパラメータ効率とスケーラビリティに重点を置いているのに対し、YOLOv6.0は推論レイテンシとリアルタイム速度が譲れない産業用アプリケーションに特化して設計されている。

パフォーマンス指標とテクニカル分析

これら2つのアーキテクチャの根本的な違いは、その設計思想にある。EfficientDetは、BiFPNとして知られる高度な特徴融合メカニズムに依存しており、精度は向上するが、GPUでの計算速度が犠牲になることが多い。逆に、YOLOv6.0はハードウェアを意識した設計を採用し、推論中の操作を効率化するために再パラメータ化を利用することで、FPS(フレーム/秒)を大幅に向上させています。

下の表は、このトレードオフを示している。EfficientDet-d7は高いmAP達成する一方で、その待ち時間はかなりのものである。対照的に、YOLOv6.0lは推論時間を大幅に短縮しながら同等の精度を実現しており、リアルタイム推論シナリオにはるかに適しています。

モデルサイズ
(ピクセル)
mAP
50-95
速度
CPU ONNX
(ms)
速度
T4 TensorRT10
(ms)
params
(M)
FLOPs
(B)
YOLOv6.0n64037.5-1.174.711.4
YOLOv6.0s64045.0-2.6618.545.3
YOLOv6.0m64050.0-5.2834.985.8
YOLOv6.0l64052.8-8.9559.6150.7
EfficientDet-d064034.610.23.923.92.54
EfficientDet-d164040.513.57.316.66.1
EfficientDet-d264043.017.710.928.111.0
EfficientDet-d364047.528.019.5912.024.9
EfficientDet-d464049.742.833.5520.755.2
EfficientDet-d564051.572.567.8633.7130.0
EfficientDet-d664052.692.889.2951.9226.0
EfficientDet-d764053.7122.0128.0751.9325.0

パフォーマンスの最適化

YOLOv6.0を産業用途に展開する場合、次のように組み合わせることができる。 TensorRTと組み合わせることで、大幅な速度向上が期待できます。YOLOv6 6は、アーキテクチャがシンプルなため、旧モデルに見られる複雑なフィーチャピラミッドネットワークと比較して、GPU ハードウェア命令に非常に効率的にマッピングすることができます。

YOLOv6.0:業界向け

YOLOv6.0は、学術研究と産業界の要求のギャップを埋めるために設計されたシングルステージ物体検出器です。品質検査のような作業に必要な精度を犠牲にすることなく、スピードを優先しています。

著者Chuyi Li, Lulu Li, Yifei Geng, Hongliang Jiang, Meng Cheng, Bo Zhang, Zaidan Ke, Xiaoming Xu, and Xiangxiang Chu
Organization:Meituan
Date:2023-01-13
Arxiv:YOLOv6 v3.0:A Full-Scale Reloading
GitHub:YOLOv6
Docs:YOLOv6 ドキュメント

アーキテクチャーと強み

YOLOv6.0の核心は、効率的なバックボーンと「RepOpt」設計である。再パラメータ化を利用することで、このモデルは学習時のマルチブランチ構造と推論時のシングルブランチ構造を切り離します。この結果、豊富な勾配を持つ学習が容易でありながら、実行速度が非常に速いモデルが実現しました。

  • 自己蒸留:この学習ストラテジーは自己蒸留を採用しており、モデルの予測自体が学習を導くソフトラベルとして機能し、余分なデータなしで精度を向上させる。
  • 量子化対応: モデルの量子化を考慮して設計されており、エッジ展開のためにINT8に変換する際の精度低下を最小限に抑えます。
  • 産業用:ミリ秒単位のレイテンシーが重要視される製造業やロボット工学のAIに最適。

YOLOv6.0の詳細はこちら

EfficientDet:スケーラブルな精度

EfficientDetは、物体検出に複合スケーリングの概念を導入することで、この分野に革命をもたらした。これは、ネットワークの深さ、幅、解像度を同時に最適化し、パラメータごとに優れた性能を実現する。

著者Mingxing Tan, Ruoming Pang, and Quoc V. Le
Organization:Google
Date:2019-11-20
Arxiv:EfficientDet:スケーラブルで効率的なオブジェクト検出
GitHub:google

アーキテクチャーと強み

EfficientDetはEfficientNetのバックボーンに依存し、双方向特徴ピラミッドネットワーク(BiFPN)を導入しています。この複雑なネック構造により、簡単かつ高速なマルチスケール特徴フュージョンが可能になります。

  • BiFPN:従来のFPNとは異なり、BiFPNはトップダウンとボトムアップの両方で情報を流すことができ、異なる入力特徴に重みを適用してその重要性を強調する。
  • 複合スケーリング:単純な係数$phi$により、利用可能なリソースに応じてモデルをスケールアップ(d0からd7まで)することができ、予測可能な精度-計算曲線を提供する。
  • パラメータ効率:より小さいバリエーション(d0-d2)は、ディスクサイズとFLOPの点で非常に軽量であり、ストレージに制約のある環境で有用である。

建築の複雑さ

BiFPNは精度の面では非常に効果的ですが、その不規則なメモリアクセスパターンは、YOLO アーキテクチャで使用される高密度で規則的な畳み込みブロックと比較して、GPU上で遅くなる可能性があります。このため、EfficientDetでは、パラメータ数が少ないにもかかわらず、推論レイテンシが高くなるベンチマークがよく見られます。

EfficientDetの詳細について。

実際のユースケース

これらのモデルの選択は、多くの場合、配備環境の特定の制約に依存する。

YOLOv6.0の理想的なシナリオ

  • 高速製造:全アイテムをtrack するために高いFPSが要求される、高速で移動するコンベアベルト上の欠陥を検出。
  • 自律的ナビゲーション:ビデオフィードをリアルタイムで処理することで、ロボットによるダイナミックな環境のナビゲーションを可能にする。
  • エッジ・コンピューティング:スループットのためにGPU リソースを最大化する必要があるNVIDIA Jetsonのようなデバイスに展開する。

EfficientDetの理想的なシナリオ

  • 医療分析:X線の腫瘍検出など、処理時間が精度よりも重要でない静的な高解像度画像の分析。
  • リモートセンシング: 衛星画像をオフラインで処理し、環境変化や都市開発を特定する。
  • 低ストレージIoT:EfficientDet-d0のように)小さなモデルファイルサイズを必要とする、ストレージ容量が極端に制限されたデバイス。

Ultralyticsの利点:YOLO11を選ぶ理由

YOLOv6.0とEfficientDetは有能なモデルだが Ultralytics YOLO11は、コンピューター・ビジョン技術の最先端を象徴しています。YOLO11 、前世代のYOLO 最高の特性を洗練させ、シームレスでユーザーフレンドリーなエコシステムに統合しています。

YOLO11主な利点

  1. 使いやすさ: Ultralytics 開発者の使いやすさを最優先しています。Pythonic APIにより、EfficientDetでしばしば必要とされる複雑な設定ファイルとは異なり、わずか数行のコードでモデルのトレーニング、検証、デプロイが可能です。
  2. 汎用性:主に物体検出モデルであるYOLOv6 EfficientDetとは異なり、YOLO11 インスタンスのセグメンテーションポーズ推定オリエンテッドバウンディングボックス(OBB)、分類など、複数のタスクをネイティブにサポートしている。
  3. パフォーマンス・バランス: YOLO11 、速度と精度の間で最先端のトレードオフを実現している。COCO データセットでは、低レイテンシを維持しながら、旧アーキテクチャを常に上回っています。
  4. 整備されたエコシステム: Ultralytics モデルは、活発なコミュニティと頻繁なアップデートに支えられています。広範なドキュメント、チュートリアル、クラウドトレーニングやデータセット管理のためのUltralytics HUBのようなツールとのシームレスな統合にアクセスできます。
  5. トレーニング効率: YOLO11 、トレーニング時のリソース効率が高くなるように設計されており、複雑な変換器ベースのモデルや旧来のアーキテクチャよりも高速に収束し、GPU メモリも少なくて済みます。
from ultralytics import YOLO

# Load the YOLO11 model (recommended over older versions)
model = YOLO("yolo11n.pt")

# Perform inference on an image
results = model("https://ultralytics.com/images/bus.jpg")

# Display results
results[0].show()

YOLO11の詳細について。

その他のモデルを見る

コンピュータビジョンパイプラインのオプションを評価している場合は、Ultralytics カタログの他のモデルの調査を検討してください。その YOLOv8は広範なタスクに堅牢な性能を提供し、トランスフォーマーベースの RT-DETRは、グローバルなコンテキスト認識を必要とするシナリオのための代替手段を提供します。モバイルに特化したアプリケーション YOLOv10も調査する価値がある。これらをEfficientDetと比較することで、特定のハードウェアと精度の要件に合わせて選択を微調整することができます。


コメント