YOLO11とEfficientDetの比較#
コンピュータービジョンプロジェクトで適切なニューラルネットワークを選ぶには、利用可能なアーキテクチャを理解する必要があります。このガイドでは、Ultralytics YOLO11とGoogle EfficientDetを比較し、アーキテクチャの違い、性能指標、学習効率、最適なデプロイシナリオを取り上げ、機械学習ワークロードに適したモデルの選択を支援します。
モデルの背景と仕様#
どちらのモデルも深層学習における物体検出研究を発展させてきましたが、設計思想やAI開発における時代背景は異なります。
YOLO11の詳細#
- 著者: Glenn Jocher、Jing Qiu
- 組織: Ultralytics
- 日付: 2024-09-27
- GitHub: https://github.com/ultralytics/ultralytics
- ドキュメント: https://docs.ultralytics.com/models/yolo11
EfficientDetの詳細#
- 著者: Mingxing Tan、Ruoming Pang、Quoc V. Le
- 組織: Google
- 日付: 2019-11-20
- arXiv: https://arxiv.org/abs/1911.09070
- GitHub: https://github.com/google/automl/tree/master/efficientdet
- ドキュメント: https://github.com/google/automl/tree/master/efficientdet#readme
モデル自体と同じくらい、周辺のエコシステムも重要です。Ultralyticsエコシステムは、充実したドキュメント、活発なコミュニティサポート、ONNXやTensorRTなどの形式へのワンラインエクスポートを提供します。
アーキテクチャの革新#
EfficientDet:BiFPNと複合スケーリング#
2019年後半に登場したEfficientDetは、計算コストを最小限に抑えながら精度を最大化することを目指しました。主に2つの仕組みによってこれを実現しています。1つ目は、バックボーンにEfficientNetファミリーを採用し、複合スケーリングによって深さ、幅、解像度を同時に拡張することです。2つ目は、双方向特徴ピラミッドネットワーク(BiFPN)を導入し、マルチスケールの特徴融合を容易かつ高速に行えるようにしたことです。
当時としては効率的でしたが、EfficientDetのTensorFlowベースのAutoML実装は柔軟性に欠けることがあります。研究者は、現代的でモジュール化されたPyTorchベースのフレームワークと比べて、モデルのプルーニングやカスタム変更が難しいと感じることがよくあります。
YOLO11:強化された特徴抽出と汎用性#
YOLO11は前世代モデルを発展させ、C3k2ブロックとC2PSA空間アテンションを、高速なSpatial Pyramid Pooling(SPPF)モジュールと組み合わせています。これらの変更により特徴抽出が改善し、YOLO11が視覚情報の細部を捉えやすくなっています。
YOLO11の大きな利点は汎用性です。EfficientDetが物体検出専用モデルであるのに対し、YOLO11はインスタンスセグメンテーション、画像分類、姿勢推定、回転境界ボックス(OBB)をネイティブにサポートしています。YOLO11は学習時と推論時のメモリ要件も低く、リソースに制約のあるエッジAIハードウェアでは、旧モデルや大型のビジョントランスフォーマーより有利です。
性能とベンチマーク#
平均適合率(mAP)で測定する精度と推論速度のバランスが、実環境へのデプロイを左右することがよくあります。以下の表に、COCOデータセットにおける両モデルファミリーの性能を示します。
| モデル | サイズ (ピクセル) | mAPval50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | パラメーター (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLO11n | 640 | 39.5 | 56.1 | 1.5 | 2.6 | 6.5 |
| YOLO11s | 640 | 47.0 | 90.0 | 2.5 | 9.4 | 21.6 |
| YOLO11m | 640 | 51.5 | 183.2 | 4.7 | 20.1 | 68.1 |
| YOLO11l | 640 | 53.4 | 238.6 | 6.2 | 25.3 | 87.2 |
| YOLO11x | 640 | 54.7 | 462.8 | 11.3 | 56.9 | 195.3 |
| EfficientDet-d0 | 512 | 34.6 | - | 3.92 | 3.9 | 2.54 |
| EfficientDet-d1 | 640 | 40.5 | - | 7.31 | 6.6 | 6.1 |
| EfficientDet-d2 | 768 | 43.0 | - | 10.92 | 8.1 | 11.0 |
| EfficientDet-d3 | 896 | 47.5 | - | 19.59 | 12.0 | 24.9 |
| EfficientDet-d4 | 1024 | 49.7 | - | 33.55 | 20.7 | 55.2 |
| EfficientDet-d5 | 1280 | 51.5 | - | 67.86 | 33.7 | 130.0 |
| EfficientDet-d6 | 1280 | 52.6 | - | 89.29 | 51.9 | 226.0 |
| EfficientDet-d7 | 1536 | 53.7 | - | 128.07 | 51.9 | 325.0 |
YOLO11は同程度の精度でGPU上の処理が大幅に高速です。YOLO11sはTensorRTを使用したT4で、EfficientDet-d3(47.0対47.5 mAP)にほぼ匹敵する精度を2.5 msで達成します。EfficientDet-d3の実行時間は19.59 msです。また、YOLO11xは最高精度(54.7 mAP)を11.3 msで達成し、EfficientDet-d7は53.7 mAPで128.07 msです。EfficientDet-d0のFLOPsは最少の2.54Bです。
トレーニング効率とエコシステム#
Ultralyticsモデルは使いやすさを重視して設計されています。EfficientDetモデルの学習には複雑なTensorFlowグラフ設定や依存関係の管理が必要になることがよくありますが、YOLO11は現代的なPyTorchを基盤としています。
この適切に保守されたエコシステムにより、開発者はパッケージをインストールし、事前トレーニング済みモデルを読み込み、わずか数行のコードで独自のデータセットのトレーニングを開始できます。
Pythonコードの例#
Ultralytics APIのシンプルさを示す、すぐに実行できるサンプルを以下に示します。このスクリプトは、事前トレーニング済みのYOLO11モデルをダウンロードしてトレーニングし、簡単な予測を実行します。
from ultralytics import YOLO
# 事前トレーニング済みのYOLO11 nanoモデルを初期化します
model = YOLO("yolo11n.pt")
# 統合されたPyTorchエンジンを使用してモデルを効率的にトレーニングします
# トレーニング効率が高く、従来のモデルよりも必要なVRAMが少なくて済みます
results = model.train(data="coco8.yaml", epochs=10, imgsz=640, device="cpu")
# サンプル画像でリアルタイム推論を実行します
prediction = model.predict("https://ultralytics.com/images/bus.jpg")
# 出力されたバウンディングボックスを表示します
prediction[0].show()将来を見据えて:YOLO26の優位性#
新規プロジェクトを始めるチームは、2026年1月にリリースされたUltralytics YOLO26をご検討ください。デプロイを簡素化し、エッジでの性能を向上させています。
YOLO26の主な革新点は次のとおりです。
- エンドツーエンドのNMSフリー設計: オプションのone-to-oneヘッド(
nms=False)はNon-Maximum Suppression(NMS)の後処理を省略し、高速なロボティクスや自動運転に必要な、安定した低レイテンシをYOLO26にもたらします。 - CPU推論が最大43%高速: 専用GPUを使用しない環境では、YOLO26nはCPUでYOLO11nより最大43%高速に動作します。
- MuSGDオプティマイザー: Moonshot AIのKimi K2に着想を得た、SGDとMuonのハイブリッドです。大規模言語モデル(LLM)の学習で培われた安定性をコンピュータービジョンにもたらし、収束を速めます。
- ProgLoss + STAL: Progressive LossとSmall-Target-Aware Label Assignment(STAL)により、小さな物体の認識性能が向上します。これは衛星画像解析やドローン映像で課題となることがよくあります。
- DFLの除去: Distribution Focal Lossを取り除くことで、エッジデバイスへのモデルのエクスポートが簡素化されます。
ユースケースと推奨事項#
YOLO11とEfficientDetのどちらを選ぶかは、プロジェクト固有の要件、デプロイ制約、エコシステムに関する好みによって異なります。
YOLO11を選ぶ場合#
YOLO11は、次のような用途に適しています。
- 本番環境でのエッジデプロイメント: 信頼性と継続的なメンテナンスが最優先となる、Raspberry PiやNVIDIA Jetsonなどのデバイス上での商用アプリケーション。
- マルチタスクのビジョンアプリケーション: 検出、セグメンテーション、姿勢推定、OBBを単一の統合フレームワーク内で必要とするプロジェクト。
- 迅速なプロトタイピングとデプロイ: Ultralytics Python APIを使い、データ収集から本番環境への導入までを迅速に進める必要があるチーム。
EfficientDetを選ぶタイミング#
EfficientDetは次のような用途に推奨されます。
- Google CloudとTPUパイプライン: EfficientDetのリファレンス実装がTPUでの学習をサポートする、Google Cloud TPUインフラストラクチャ上のTensorFlowベースシステム。
- 複合スケーリングの研究: ネットワークの深さ、幅、解像度をバランスよくスケーリングする効果の研究に焦点を当てた学術的なベンチマーク。
- LiteRTによるモバイルデプロイ: Androidまたは組み込みLinuxデバイス向けに、LiteRT(旧称TensorFlow Lite)形式へのエクスポートが特に必要なプロジェクト。
Ultralytics (YOLO26)を選ぶ場合#
ほとんどの新規プロジェクトでは、Ultralytics YOLO26が性能と開発者体験の最適な組み合わせを提供します。
- NMSを使用しないエッジデプロイ: 非最大抑制の後処理を複雑化させずに、安定した低レイテンシー推論を必要とするアプリケーション。
- CPUのみの環境: 専用GPUアクセラレーションのないデバイスでは、YOLO26nのCPU推論がYOLO11nより最大43%高速であることが大きな強みになります。
- 小物体検出: ドローンによる航空画像やIoTセンサー分析など、ProgLossとSTALによって小物体の精度が向上する難易度の高いシナリオに適しています。
結論#
EfficientDetは、物体検出における複合スケーリングの有効性を実証した先駆的なアーキテクチャです。より新しいモデルは機能が豊富で、統合しやすく、GPU上でより高速に動作します。
マルチタスク対応、高速なGPU推論、シンプルなAPIを備えるYOLO11は、現代的なビジョンパイプラインに適した選択肢です。特にエッジ優先のデプロイなど、新規プロジェクトではYOLO26がオプションのNMSフリー推論と高い精度を提供します。
コメント
質問したり、結果を共有したり、ほかの人をサポートしたりできます。