EfficientDetとYOLO11の比較#
最適なニューラルネットワークアーキテクチャの選定は、あらゆる成功するcomputer visionアプリケーションの基礎となります。この包括的なガイドでは、GoogleのEfficientDetとUltralytics YOLO11の深層技術的な比較を行い、それらのアーキテクチャの違い、パフォーマンス指標、および理想的なデプロイメントシナリオを分析します。
edge AIデバイスでのミリ秒単位のレイテンシーをターゲットにしている場合でも、クラウドベースの推論のためにスケーラブルな精度が必要な場合でも、これらのモデルのニュアンスを理解することは極めて重要です。
モデルの概要と技術的詳細#
各アーキテクチャの系譜と根底にある設計思想を理解することは、実際のobject detectionタスクにおけるパフォーマンスを文脈に沿って捉えるのに役立ちます。
EfficientDet#
Google Brainの研究者によって開発されたEfficientDetは、物体検出ネットワークのスケーリングに対する原則に基づいたアプローチと、新しいBiFPN (Bidirectional Feature Pyramid Network) を導入しました。
- 著者: Mingxing Tan, Ruoming Pang, and Quoc V. Le
- 組織: Google
- 日付: 2019-11-20
- Arxiv: https://arxiv.org/abs/1911.09070
- GitHub: https://github.com/google/automl/tree/master/efficientdet
- Docs: https://github.com/google/automl/tree/master/efficientdet#readme
YOLO11#
YOLO11はUltralyticsエコシステムの重要な進化であり、リアルタイムパフォーマンス、パラメータ効率、マルチタスク学習の限界を押し広げています。
- 著者: Glenn Jocher and Jing Qiu
- 組織: Ultralytics
- 日付: 2024-09-27
- GitHub: https://github.com/ultralytics/ultralytics
- Docs: https://docs.ultralytics.com/models/yolo11/
アーキテクチャの比較#
これら2つのモデル間のアーキテクチャの違いは、長年にわたる設計戦略の相違を浮き彫りにしています。
EfficientDetはEfficientNetバックボーンを活用し、トップダウンおよびボトムアップのマルチスケール特徴量融合を可能にするBiFPNを導入しています。すべてのバックボーン、特徴量ネットワーク、およびボックス/クラス予測ネットワークの解像度、深度、幅を同時に均一にスケーリングする複合スケーリング方式を採用しています。mean Average Precision (mAP)を最大化する上で非常に効果的ですが、BiFPNにおける複雑なルーティングは、推論時にメモリ帯域幅のボトルネックとなることがあります。
一方、YOLO11は最適化されたC3k2モジュールと高度なアンカーフリー検出ヘッドを利用しています。この合理化されたアプローチにより、特徴抽出中のオーバーヘッドが最小限に抑えられます。Ultralyticsは、古いアーキテクチャや重いtransformerモデルと比較して、トレーニングと推論の両方においてメモリ要件を大幅に削減し、GPUハードウェアの利用率を最大化するようにYOLO11を設計しました。
EfficientDetが厳密にオブジェクト検出器であるのに対し、YOLO11は極めて高い汎用性を誇ります。単一のYOLO11アーキテクチャで、Instance Segmentation、Image Classification、Pose Estimation、およびOriented Bounding Boxes (OBB)をネイティブにサポートしています。
パフォーマンスベンチマーク#
以下の表は、COCO dataset上のさまざまなスケールにおける両方のモデルファミリーのパフォーマンス対比を示しています。
| モデル | サイズ (ピクセル) | 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 |
| YOLO11n | 640 | 39.5 | 56.1 | 1.5 | 2.6 | 6.5 |
| YOLO11s | 640 | 47.0 | 90.0 | 2.5 | 9.4 | 21.5 |
| YOLO11m | 640 | 51.5 | 183.2 | 4.7 | 20.1 | 68.0 |
| YOLO11l | 640 | 53.4 | 238.6 | 6.2 | 25.3 | 86.9 |
| YOLO11x | 640 | 54.7 | 462.8 | 11.3 | 56.9 | 194.9 |
バランス分析: 強みと弱み#
GPUアクセラレーション: YOLO11はGPU環境において圧倒的な強さを誇ります。例えば、YOLO11mはTensorRTを利用したT4 GPU上で、4.7msという圧倒的な速度で51.5%のmAPを実現します。同等の精度を達成するために、EfficientDet-d5は67.86msかかり、14倍以上遅くなります。これは、リアルタイムアプリケーションにおけるUltralyticsモデルの優れたパフォーマンスバランスを浮き彫りにしています。
CPU環境: EfficientDetは、ONNXを使用した小型バリアント(d0やd1など)において、高度に最適化されたCPU推論速度を発揮します。しかし、d7のような大型バリアントでは、莫大なGPUレイテンシーのペナルティを伴わずに精度をスケールさせることが困難です。
トレーニング手法とエコシステム#
開発者のエクスペリエンスは、モデルの理論的な能力と同じくらい重要な場合があります。ここでUltralyticsエコシステムが真価を発揮します。
EfficientDetは、レガシーなTensorFlowエコシステムと複雑なAutoMLライブラリに強く依存しています。カスタムトレーニングパイプラインの設定には、急な学習曲線、複雑な依存関係の管理、アンカーやloss functionsの手動設定が伴います。
対照的に、Ultralyticsは比類のない使いやすさを提供します。よくメンテナンスされたPyTorchエコシステムに支えられており、YOLOモデルのトレーニングはわずか数行のコードで行えます。このフレームワークは、hyperparameter tuning、高度なデータ拡張、および最適な学習率のスケジューリングを自動的に管理します。
コード例: Ultralyticsを始める#
この堅牢で本番環境に対応したスニペットは、Python API内でのトレーニングと推論がいかにシンプルであるかを示しています。
from ultralytics import YOLO
# Load a pre-trained YOLO11 small model
model = YOLO("yolo11s.pt")
# Train the model on your custom dataset with automated hyperparameter tuning
train_results = model.train(data="coco8.yaml", epochs=50, imgsz=640, device=0)
# Perform fast inference on an image
results = model.predict("https://ultralytics.com/images/bus.jpg")
results[0].show()理想的なユースケース#
EfficientDetを使用すべき場合: EfficientDetは、TensorFlowパイプラインに深く組み込まれている研究環境や、d0のような初期のアーキテクチャで十分な性能を発揮できる特定のCPU負荷の高い制約下において、依然として有効な選択肢です。
YOLO11を使用すべき場合: YOLO11は、最新のエンタープライズデプロイメントにおいて決定的な選択肢です。その卓越した速度により、autonomous vehicles、リアルタイムスポーツ分析、およびスループットの高い製造業の欠陥検出に最適です。さらに、その低いメモリ使用量により、NVIDIA Jetsonのようなリソースが制限されたハードウェアへの柔軟なデプロイメントが可能になります。
今後の展望: YOLO26へのアップグレード#
YOLO11は非常に高性能ですが、新しいプロジェクトを開始する開発者は、実績のあるYOLOv8や新しくリリースされたYOLO26など、他のUltralyticsアーキテクチャも評価すべきです。2026年初頭にリリースされたYOLO26は、YOLO11の基盤を引き継ぎ、いくつかの画期的な革新を導入しています:
- エンドツーエンドのNMSフリー設計: YOLOv10のレガシーを基盤として、YOLO26は後処理中の非最大値抑制(NMS)を完全に排除し、レイテンシーの大幅な削減とデプロイメントパイプラインの簡素化を実現しています。
- MuSGDオプティマイザ: 標準のSGDとMuon(大規模言語モデルのトレーニングに触発されたもの)を組み合わせたハイブリッドオプティマイザで、トレーニングの安定性が劇的に向上しました。
- CPU推論が最大43%高速化: 特殊な最適化により、ディスクリートGPUを持たないエッジデバイス上でYOLO26は非常に強力に動作します。
- ProgLoss + STAL: 小物体検出を著しく改善する高度な損失関数で、航空画像やロボット工学において重要です。
RT-DETR などのトランスフォーマーベースの検出器を含む、ビジョンアーキテクチャのより幅広いエコシステムについて、包括的な Ultralytics Docs でご覧いただけます。