EfficientDet vs YOLOv5#
最適なニューラルネットワークアーキテクチャの選択は、あらゆるコンピュータービジョンプロジェクトにおける重要なステップです。推論レイテンシ、パラメーター効率、検出精度のバランスによって、モデルが実環境でどの程度性能を発揮できるかが決まります。本技術ガイドでは、特に影響力の大きい2つの物体検出フレームワーク、GoogleのEfficientDetとUltralytics YOLOv5を詳細に分析します。
アーキテクチャの革新、トレーニング手法、デプロイ機能を比較することで、開発者は、クラウドサーバー全体へのスケーリングから、リソースが制限されたエッジデバイスでの実行まで、特定のデプロイ環境に適した判断を下せます。
EfficientDet:BiFPNによるスケーラブルなアーキテクチャ#
Google Researchによって発表されたEfficientDetは、従来の最先端モデルより少ないパラメーターで高精度を実現するため、バックボーンと特徴ネットワークの両方を体系的にスケーリングするよう設計されています。
モデルの詳細#
- 著者: Mingxing Tan、Ruoming Pang、Quoc V. Le
- 組織: Google Research
- 日付: 2019年11月20日
- Arxiv: EfficientDet:スケーラブルで効率的な物体検出
- GitHub: google/automl/efficientdet
アーキテクチャのイノベーション#
EfficientDetは、分類モデルであるEfficientNetをバックボーンとして活用し、ネットワークの幅、深さ、解像度を一様にスケーリングする複合スケーリング手法を使用します。物体検出への最も注目すべき貢献は、双方向特徴ピラミッドネットワーク(BiFPN)の導入です。特徴を単純にトップダウンで集約する標準的な特徴ピラミッドネットワークとは異なり、BiFPNは複雑な双方向のスケール間接続を可能にし、異なる入力特徴の重要度を決定する学習可能な重みを導入します。
EfficientDetは高精度である一方、TensorFlowエコシステムと特定のAutoMLライブラリに大きく依存しています。この依存関係により、カスタムの軽量なデプロイパイプラインや、動的計算グラフを優先する環境への統合が煩雑になる場合があります。
Ultralytics YOLOv5:リアルタイムAIの普及#
EfficientDetの発表直後にリリースされたUltralytics YOLOv5は、非常に利用しやすい、YOLOアーキテクチャのネイティブPyTorch実装を提供し、業界に革新をもたらしました。開発者エクスペリエンス、トレーニング効率、リアルタイムデプロイの柔軟性において、新たな標準を確立しました。
モデルの詳細#
- 著者: Glenn Jocher
- 組織: Ultralytics
- 日付: 2020年6月26日
- GitHub: ultralytics/yolov5
- ドキュメント: YOLOv5 Documentation
アーキテクチャのイノベーション#
YOLOv5は、前世代モデルを大幅に改良し、CSPDarknet(クロスステージ部分)バックボーンを採用して、全体のパラメーター数を削減しながら勾配フローを大幅に向上させています。さらにYOLOv5は、自動学習アンカーボックスを組み込んでいます。これは、特定のカスタムトレーニングデータに基づいて最適なバウンディングボックス事前分布を自動計算し、手動でのハイパーパラメーター調整を不要にします。
YOLOv5はMosaicデータ拡張も積極的に活用し、異なる4枚の画像を1つのトレーニングタイルに合成します。これにより、小さな物体を検出するモデルの能力が大幅に向上し、コンテキスト理解の汎化性能も高まるため、さまざまな環境で高い堅牢性を発揮します。
パフォーマンスとベンチマーク#
COCOデータセットのような標準ベンチマークでモデルを評価することは、精度と速度のトレードオフを理解するうえで重要です。以下の表は、標準化された条件下で、さまざまなサイズのEfficientDetとYOLOv5がどのような性能を発揮するかを示しています。
| モデル | サイズ (ピクセル) | 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 |
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
トレードオフの分析#
EfficientDet-d7は最大mAP 53.7という印象的な性能までスケーリングできますが、YOLOアーキテクチャと比較すると、GPUハードウェア上での推論レイテンシが大きいという課題があります。一方、YOLOv5はハードウェアアクセラレーションに優れています。YOLOv5nは、NVIDIA TensorRTを使用してT4 GPU上で驚異的な1.12 msの推論時間を達成し、自動運転や高速製造ラインなどのリアルタイムアプリケーションにおいて大幅に優れた性能を発揮します。
さらに、YOLOv5モデルは、複雑な複合スケーリングネットワークや大規模なTransformerモデルと比較して、トレーニング中に必要とするCUDAメモリが大幅に少なくなっています。この軽量なメモリ使用量により、最先端AIを利用できる層が広がり、研究者は一般的なコンシューマーハードウェア上で堅牢なモデルをトレーニングできます。
エッジデバイス上でYOLOv5モデルの1秒あたりフレーム数(FPS)を最大化するには、PyTorchの重みをNVIDIA GPU向けのTensorRT、またはIntel CPU向けのOpenVINOにエクスポートします。この手順により、推論速度が2倍になることもあります。
トレーニングエコシステムと開発者エクスペリエンス#
Ultralyticsエコシステムの真の利点は、合理化されたユーザーエクスペリエンスにあります。EfficientDetではTensorFlow物体検出APIに関する深い知識が必要ですが、YOLOv5は一貫性のあるシンプルなPython APIを提供します。
十分にメンテナンスされているUltralyticsエコシステムにより、開発者は頻繁なアップデート、活発なコミュニティサポート、Weights & BiasesやClearMLなどの実験トラッキングツールとのシームレスな統合を利用できます。
コード例:YOLOv5を始める#
事前トレーニング済みYOLOv5モデルで推論を実行するには、PyTorch Hubを介して数行のコードを実行するだけです:
from ultralytics import YOLO
# Load the highly efficient YOLOv5s model
model = YOLO("yolov5su.pt")
# Run inference on an image
results = model("https://ultralytics.com/images/zidane.jpg")
# Display the detected bounding boxes
results[0].show()汎用性と実環境での用途#
EfficientDetは厳密には物体検出フレームワークであるため、複雑なビジョンパイプラインでの用途が限られます。一方、YOLOv5は複数のコンピュータービジョンタスクをサポートするように進化しています。モデルの最新リリースでは、高精度なインスタンスセグメンテーションと画像分類をサポートしており、開発者は機械学習スタックを統合できます。
理想的なユースケース#
- EfficientDet: レイテンシよりも最大精度が優先され、サーバーグレードのTPUまたは大容量GPUを利用できる、オフライン処理、学術研究、クラウドベースの分析に最適です。
- YOLOv5: エッジAIデプロイにおける決定的な選択肢です。低レイテンシ、小さなパラメーター規模、高精度を組み合わせているため、ドローン分析、リアルタイム小売自動化、CoreMLまたはTFLiteを介したモバイルアプリケーションに最適です。
次世代:YOLO26へのアップグレード#
YOLOv5は依然として堅牢で広くデプロイされているモデルですが、AI分野は急速に進化しています。新しいプロジェクトを開始するチームや、現代的な性能の頂点を目指すチームに向けて、Ultralyticsは2026年1月にリリースされたYOLO26を導入しました。
YOLO26は速度と精度のパレートフロンティアを再定義し、デプロイを容易にし、推論を高速化する画期的なアーキテクチャの変更を導入しています。
YOLO26の主な進化#
- エンドツーエンドのNMSフリーデザイン: YOLO26は、Non-Maximum Suppressionの後処理をネイティブに排除します。これにより、デプロイロジックが大幅に簡素化され、レイテンシのばらつきが低減します。これは、YOLOv10の初期実験から洗練された画期的なアプローチです。
- CPU推論が最大43%高速化: 専用GPUを搭載せずに動作するエッジコンピューティングおよび低消費電力IoTデバイス向けに特化して設計されています。
- MuSGDオプティマイザー: 大規模言語モデルのトレーニング手法(Moonshot AIのKimi K2など)に着想を得た、SGDとMuonのハイブリッドです。LLMの革新をコンピュータービジョンにもたらし、より速い収束と非常に安定したトレーニングダイナミクスを実現します。
- ProgLoss + STAL: これらの高度な損失関数により、小物体認識が大幅に向上します。これは航空画像やロボティクスにおいて重要です。
- DFLの削除: Distribution Focal Lossを取り除くことでモデルヘッドが大幅に簡素化され、レガシーまたは非常に制約の多いエッジハードウェアへのエクスポート時の互換性が向上します。
マルチタスクパイプラインをデプロイするチーム向けに、YOLO26は、セグメンテーション用のマルチスケールprotoや、指向性バウンディングボックス(OBB)用の専用角度損失など、タスク固有の改良も導入しています。エコシステム内のその他の最新の選択肢を確認するには、YOLO11やYOLOv8アーキテクチャも参照してください。
まとめ#
EfficientDetとYOLOv5のどちらを選ぶかは、デプロイ対象に大きく左右されます。EfficientDetは、クラウド中心の推論に適した数学的に洗練されたスケーリング手法を提供します。しかし、YOLOv5は、優れた開発者エクスペリエンス、非常に高速なPyTorchトレーニングループ、高度に最適化されたエッジデプロイ機能を備えているため、現実世界のリアルタイムアプリケーションの大半で推奨される選択肢です。Ultralyticsが提供する包括的なツールを活用することで、チームは市場投入までの時間を短縮し、応答性の高いAIシステムを構築できます。