EfficientDet対RTDETRv2:物体検出アーキテクチャの詳細比較
コンピュータビジョンプロジェクトに最適なアーキテクチャを選択するには、多様なニューラルネットワークの状況を把握する必要があります。本ガイドでは、2つの異なるアプローチについて詳細な技術比較を行います。1つはスケーラビリティに優れた畳み込みニューラルネットワーク(CNN)ファミリーであるEfficientDet、もう1つは最先端のリアルタイムTransformerモデルであるRTDETRv2です。両者の構造的な違い、トレーニング手法、および様々なハードウェア環境におけるデプロイの適合性を評価します。
レガシーな効率性と現代のTransformerの能力との間のトレードオフを理解することで、開発者は情報に基づいた意思決定が可能になります。さらに、新しいUltralytics YOLO26のような現代的な代替モデルが、どのようにそのギャップを埋め、比類のない速度、精度、使いやすさを提供するかについても解説します。
EfficientDetの理解
EfficientDetは、モデルスケーリングに対する原則に基づいたアプローチを導入することで、物体検出に革命をもたらしました。
- 著者: Mingxing Tan, Ruoming Pang, and Quoc V. Le
- 組織: Google
- 日付: 2019年11月20日
- Arxiv: https://arxiv.org/abs/1911.09070
- GitHub: Google AutoML Repository
- Docs: EfficientDet Documentation
アーキテクチャと中核となるコンセプト
EfficientDetは、その中心となるバックボーンにEfficientNetを使用し、Bi-directional Feature Pyramid Network (BiFPN)を導入しています。BiFPNは、学習可能な重みを適用して異なる入力特徴の重要度を学習することで、効率的かつ高速なマルチスケール特徴融合を可能にします。これは、バックボーン、特徴ネットワーク、ボックス/クラス予測ネットワークのすべての解像度、深さ、幅を同時に均一にスケーリングする複合スケーリング手法と組み合わされています。
強みと限界
EfficientDetの最大の強みは、パラメータの効率性にあります。リリース当時、EfficientDet-D0のようなモデルは、それまでのYOLOバージョンと比較して、より少ないパラメータとFLOPsでより高い精度を達成しました。これにより、計算リソースに厳しい制限がある環境において非常に魅力的な選択肢となりました。
しかし、EfficientDetは重なり合うバウンディングボックスをフィルタリングするために後処理で標準的な非最大値抑制(NMS)に依存しており、これがリアルタイムパイプラインにおいて遅延のボトルネックとなる可能性があります。さらに、トレーニングプロセスは十分に文書化されていますが、最新のツールに見られる高度に最適化された開発者エクスペリエンスと比較すると、EfficientDetの微調整は煩雑になることがあります。
EfficientDetはスケーラブルなネットワークへの道を切り開きましたが、これらのモデルを最新のNPUにデプロイするには多くの場合、手動での広範な最適化が必要です。より効率的なデプロイのために、新しいUltralyticsモデルでは1クリックのエクスポート機能を提供しています。
RTDETRv2の探求
RTDETRv2はTransformerベースのアーキテクチャの進化形であり、従来のアンカーベースのCNNからパラダイムをシフトさせています。
- 著者: Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang, Yi Liu
- 組織: Baidu
- 日付: 2024-07-24
- Arxiv: https://arxiv.org/abs/2407.17140
- GitHub: RT-DETR Repository
- Docs: RTDETRv2 Documentation
Transformerの進歩
RTDETRv2は、Real-Time Detection Transformer (RT-DETR)のベースラインに基づいています。グローバルなアテンションメカニズムを活用することで、標準的な畳み込みの局所的な制約なしに、複雑なシーンのコンテキストを理解することが可能です。最も重要なアーキテクチャ上の利点は、ネイティブなNMSフリー設計です。入力画像から直接オブジェクトを予測することで、推論パイプラインを簡素化し、NMS後処理に必要なヒューリスティックな調整を回避しています。
長所と短所
RTDETRv2は、重なり合うオブジェクトが従来のCNNを混乱させるような高密度環境で優れた性能を発揮します。また、COCOのような複雑なベンチマークデータセットにおいても非常に高い精度を誇ります。
精度が高い一方で、Transformerモデルは本質的にかなりのメモリを消費します。トレーニング効率は著しく低く、CNNと比較して収束までに大幅に多くのエポックとより高いCUDAメモリフットプリントを必要とします。そのため、RTDETRv2は、クラウド予算に制限がある開発者や迅速なプロトタイピングを必要とする場合には、あまり理想的とは言えません。
RTDETRv2のようなTransformerモデルのトレーニングには、通常ハイエンドのGPUが必要です。メモリ不足(OOM)エラーが発生する場合は、トレーニング中にUltralytics YOLOシリーズのようなメモリ要件の低いモデルの使用を検討してください。
パフォーマンスベンチマーク比較
生のパフォーマンス指標を理解することは、モデル選択において不可欠です。以下の表は、様々なサイズにおけるEfficientDetとRTDETRv2の比較を示しています。
| モデル | サイズ (ピクセル) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | パラメータ (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| EfficientDet-d0 | 640 | 34.6 | 10.2 | 3.92 | 3.9 | 2.54 |
| EfficientDet-d1 | 640 | 40.5 | 13.5 | 7.31 | 6.6 | 6.1 |
| EfficientDet-d2 | 640 | 43.0 | 17.7 | 10.92 | 8.1 | 11.0 |
| EfficientDet-d3 | 640 | 47.5 | 28.0 | 19.59 | 12.0 | 24.9 |
| EfficientDet-d4 | 640 | 49.7 | 42.8 | 33.55 | 20.7 | 55.2 |
| EfficientDet-d5 | 640 | 51.5 | 72.5 | 67.86 | 33.7 | 130.0 |
| EfficientDet-d6 | 640 | 52.6 | 92.8 | 89.29 | 51.9 | 226.0 |
| EfficientDet-d7 | 640 | 53.7 | 122.0 | 128.07 | 51.9 | 325.0 |
| RTDETRv2-s | 640 | 48.1 | - | 5.03 | 20 | 60 |
| RTDETRv2-m | 640 | 51.9 | - | 7.51 | 36 | 100 |
| RTDETRv2-l | 640 | 53.4 | - | 9.76 | 42 | 136 |
| RTDETRv2-x | 640 | 54.3 | - | 15.03 | 76 | 259 |
ユースケースと推奨事項
EfficientDetとRT-DETRのどちらを選択するかは、プロジェクト固有の要件、デプロイの制約、エコシステムの好みによって異なります。
EfficientDetを選択すべき場合
EfficientDetは以下の場合に強力な選択肢となります:
- Google CloudおよびTPUパイプライン: Google Cloud Vision APIやTPUインフラストラクチャと深く統合されたシステムで、EfficientDetがネイティブ最適化されている環境。
- Compound Scalingの研究: ネットワークの深さ、幅、解像度のバランスの取れたスケーリングが与える影響を研究することに焦点を当てた学術的なベンチマーク。
- TFLiteによるモバイルデプロイ: Androidまたは組み込みLinuxデバイス向けにTensorFlow Liteへのエクスポートを特に必要とするプロジェクト。
RT-DETRを選ぶべき場面
RT-DETRは次の場合に推奨されます:
- Transformerベースの検出研究: NMSなしでのエンドツーエンドの物体検出に向けて、アテンションメカニズムとTransformerアーキテクチャを研究するプロジェクト。
- レイテンシを柔軟に調整できる高精度シナリオ: 検出精度が最優先であり、わずかに高い推論レイテンシが許容されるアプリケーション。
- 大型物体の検出: 主に中型から大型の物体が含まれるシーン。Transformerのグローバルアテンションメカニズムが自然な利点をもたらします。
Ultralytics (YOLO26) を選択すべき場合
ほとんどの新規プロジェクトにおいて、Ultralytics YOLO26はパフォーマンスと開発者体験の最高の組み合わせを提供します:
- NMSフリーのエッジデプロイ: Non-Maximum Suppressionの後処理の複雑さを伴わずに、一貫した低レイテンシの推論が求められるアプリケーション。
- CPUのみの環境: 専用のGPUアクセラレーションがないデバイスにおいて、YOLO26の最大43%高速なCPU推論が決定的な利点となります。
- 小物体の検出: 航空ドローンの映像 やIoTセンサーの分析など、ProgLossとSTALが小物体の精度を大幅に高めることができる困難なシナリオ。
Ultralyticsの利点:YOLO26の紹介
EfficientDetとRTDETRv2はコンピュータビジョンの歴史において確固たる地位を築きましたが、現代の生産環境では、速度、精度、そして優れた開発者体験の完璧なバランスが求められています。最近リリースされたUltralytics YOLO26は、これら異なるアーキテクチャの長所を統合したものです。
YOLO26は、Ultralyticsが提供する合理化されたエコシステムと、革新的な内部メカニズムを組み合わせることで際立った存在となっています。
なぜ競合モデルではなくYOLO26を選ぶのか?
- エンドツーエンドのNMSフリー設計: RTDETRv2のようなTransformerから着想を得て、YOLO26はネイティブなエンドツーエンド設計を採用しています。これによりNMS後処理が排除され、純粋なTransformerに見られる膨大なパラメータによる肥大化なしに、より高速でシンプルなデプロイパイプラインを実現します。
- MuSGDオプティマイザー: 大規模言語モデルのトレーニング革新(Moonshot AIのKimi K2など)に触発され、YOLO26はSGDとMuonのハイブリッドを採用しています。これにより、RTDETRv2で必要とされる長期のスケジュールと比較して、比類のないトレーニング安定性と大幅に高速な収束率が実現します。
- エッジ向け最適化: 最大で43%高速なCPU推論を誇るYOLO26は、エッジAIのために設計されています。モバイル端末やスマートカメラのような制限のあるハードウェア上で、重量級のTransformerモデルを容易に凌駕します。
- DFLの除去: Distribution Focal Loss(分布焦点損失)の削除によりモデルグラフが簡素化され、TensorRTおよびONNXへのシームレスなエクスポートが可能になります。
- ProgLoss + STAL: これらの高度な損失関数は、小さなオブジェクトの認識において顕著な改善をもたらし、航空画像やロボット工学における一般的なボトルネックを解決します。
- 汎用性: 主に検出に焦点を当てたRTDETRv2とは異なり、YOLO26はインスタンスセグメンテーション、姿勢推定、画像分類、そして指向性バウンディングボックス (OBB)をネイティブにサポートしており、姿勢推定用のRLEやOBB用の特殊な角度損失など、タスク固有の改善も含まれています。
Ultralytics Platformを活用することで、データセットの管理、YOLO26やYOLO11のようなモデルのクラウドトレーニング、柔軟なAPI経由でのシームレスなデプロイが可能になります。
Ultralyticsによるコードの簡潔さ
適切に管理されたUltralytics Python APIにより、モデルのトレーニングと推論は非常に簡単になります。開発者は、最小限のボイラープレートコードで容易にモデルのベンチマークを行ったり、トレーニングスクリプトを開始したりできます。
from ultralytics import YOLO
# Load the state-of-the-art YOLO26 model
model = YOLO("yolo26n.pt")
# Train the model on your custom dataset
results = model.train(data="coco8.yaml", epochs=50, imgsz=640)
# Run inference on a test image
predictions = model.predict("image.jpg")レガシーインフラを管理する方にとって、高く評価されているUltralytics YOLOv8は、Ultralyticsエコシステムの長期的な信頼性を示す安定した強力な選択肢であり続けます。複雑なリアルタイム追跡アルゴリズムを実行する場合でも、単純な欠陥検出を行う場合でも、YOLO26へのアップグレードは、システムの将来性、高精度、そしてメモリ効率を保証します。