EfficientDet vs YOLOv10: オブジェクト検出モデルの進化を分析
急速に進化するコンピュータビジョン分野において、適切な物体検出アーキテクチャの選択は、精度、レイテンシ、計算効率のバランスを取る上で極めて重要である。この包括的な技術ガイドでは、Google のEfficientDetと Google 大学のYOLOv10という、非常に影響力のある2つのモデルを比較する。 YOLOv10を比較する。両モデルとも物体検出において大きな飛躍をもたらしたが、アーキテクチャ設計とモデル最適化へのアプローチは大きく異なる。
これらのコアアーキテクチャを検証し、 COCO標準データセットにおける性能ベンチマークをレビューするとともに、現代的な機械学習パイプラインへの統合方法について議論します。特にUltralytics 強調します。
効率的検出:複合スケーリングの先駆者
2019年末に導入されたEfficientDetは、ネットワークの次元を拡張する原理に基づいたアプローチを導入することで、スケーラブルで高精度な物体検出の新たな基準を確立した。
主要な革新とアーキテクチャ
- 著者: Mingxing Tan、Ruoming Pang、Quoc V. Le
- 組織:Google Brain
- 日付: 2019-11-20
- Arxiv:https://arxiv.org/abs/1911.09070
- GitHub:EfficientDet リポジトリ
EfficientDetはEfficientNetバックボーン上に構築されており、新しい双方向特徴ピラミッドネットワーク(BiFPN)を活用しています。その重要性を区別せずに特徴を合計する従来の特徴ピラミッドネットワーク(FPN)とは異なり、BiFPNは学習可能な重みを使用してマルチスケール特徴を融合します。これにより、ネットワークはどの解像度の特徴が最終予測に最も貢献するかを効果的に学習できます。さらに、EfficientDetは、バックボーン、特徴ネットワーク、およびボックス/クラス予測ネットワークの解像度、深さ、幅を同時に均一にスケーリングする複合スケーリング手法を使用しています。
EfficientDetは、古いTensorFlow と深く統合されたレガシーシステムにとっては依然として堅実な選択肢ですが、トレーニング中にかなりのメモリ要件を伴い、現代的な動的フレームワークと比較すると煩雑になり得る古いエコシステムに依存しています。
YOLOv10:NMS革新者
2024年半ばに発表YOLOv10 、後処理における非最大抑制(NMS)の必要性を排除することでリアルタイム物体検出のパラダイムをYOLOv10 変革し、推論遅延を大幅に削減した。
主要な革新とアーキテクチャ
- 著者: Ao Wang, Hui Chen, Lihao Liu, et al.
- 組織:清華大学
- 日付: 2024-05-23
- Arxiv:https://arxiv.org/abs/2405.14458
- GitHub:YOLOv10 リポジトリ
YOLOv10 、NMSトレーニングに向けた一貫した二重割り当て戦略YOLOv10 。トレーニング中に1対多および1対1のラベル割り当てを併用することで、ネットワークは重複をNMS 依存せず、一意に一致するバウンディングボックスを生成することを学習する。この効率性と精度を追求した包括的なモデル設計は計算上の冗長性を削減し、エッジコンピューティングや低遅延動画ストリーミングアプリケーションに最適な候補となる。Ultralytics にシームレスに統合され、開発者は極めて直Python を利用できます。
NMSインパクト
NMSステップを削除することで、YOLOv10は、シーン内でいくつのオブジェクトがdetectされても一貫した推論速度を保証し、混雑したコンピュータービジョンアプリケーションで頻繁に見られるレイテンシースパイクを排除します。
性能比較:精度、速度、効率
実環境でのモデル展開時には、開発者は平均精度(mAP)とパラメータ数・演算量(FLOPs)のバランスを考慮する必要がある。下表は両モデルの拡張バリエーションにおけるこれらの指標を詳細に示す。
| モデル | サイズ (ピクセル) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | params (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 |
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
注:YOLOv10nの変種は、初期のEfficientDetの反復と比較して、パラメータ数が大幅に少なく(230万)、TensorRT 飛躍的に向上(1.56ms)しているため、実稼働環境におけるリアルタイム推論に非常に適している。
モデルUltralytics を選ぶ理由とは?
両モデルとも歴史的・構造的に重要ではあるものの、現代のパイプラインに統合するのは困難を伴う場合があります。ここでUltralytics が真価を発揮します。統合されたエコシステムを提供することで、Ultralytics データアノテーションからデプロイメントに至るまでの全ライフサイクルをUltralytics 。
- 使いやすさ: Ultralytics Pythonパッケージは、モデルトレーニング、検証、およびエクスポートのための単一のインターフェースを提供し、何百行ものボイラープレートコードを簡潔なコマンドに置き換えます。
- エコシステムと汎用性: EfficientDetがdetectに特化しているのに対し、Ultralytics YOLOモデルは、インスタンスsegmentation、姿勢推定、Oriented Bounding Boxes (obb)、および分類に自然に拡張されます。
- 訓練効率: オートバッチングや分散訓練といった最先端技術を活用することで、Ultralyticsモデルは、重いトランスフォーマーや古いマルチブランチTFアーキテクチャと比較して、より高速に訓練され、CUDAメモリの消費量が大幅に少なくなります。
コード例:YOLOv10のトレーニング
UltralyticsでYOLOv10をデプロイするのは非常に簡単です。以下のコードスニペットは、Python API内でYOLOv10ネットワークを初期化、トレーニング、および評価する方法を示しています。
from ultralytics import YOLO
# Load a pre-trained YOLOv10 model (nano variant for edge speed)
model = YOLO("yolov10n.pt")
# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=50, imgsz=640, batch=16)
# Evaluate the model on the validation set
metrics = model.val()
# Export the model to ONNX for production deployment
model.export(format="onnx")
ユースケースと推奨事項
EfficientDetとYOLOv10の選択は、特定のプロジェクト要件、デプロイ制約、およびエコシステム設定に依存します。
EfficientDetを選択するタイミング
EfficientDetは、以下の用途に強力な選択肢です。
- Google CloudおよびTPUパイプライン: EfficientDetがネイティブ最適化されているGoogle Cloud Vision APIまたはTPUインフラストラクチャと深く統合されたシステム。
- 複合スケーリング研究:バランスの取れたネットワークの深さ、幅、解像度のスケーリング効果を研究することに焦点を当てた学術的なベンチマーク。
- TFLiteを介したモバイルデプロイメント: Androidまたは組み込みLinuxデバイス向けにTensorFlow Liteのエクスポートを特に必要とするプロジェクト。
YOLOv10を選択すべき時
YOLOv10 以下に推奨YOLOv10 :
- NMSフリーのリアルタイムdetect: Non-Maximum Suppressionなしのエンドツーエンドのdetectから恩恵を受け、デプロイの複雑さを軽減するアプリケーション。
- 速度と精度のバランスの取れたトレードオフ: さまざまなモデルスケールにおいて、推論速度と検出精度の強力なバランスを必要とするプロジェクト。
- 一貫したレイテンシが求められるアプリケーション: ロボット工学や自律システムなど、予測可能な推論時間が重要となるデプロイメントシナリオ。
Ultralytics YOLO26)を選択すべきタイミング
ほとんどの新規プロジェクトにおいて、Ultralytics YOLO26は、パフォーマンスと開発者エクスペリエンスの最高の組み合わせを提供します。
- NMSフリーのエッジデプロイメント: Non-Maximum Suppressionの後処理の複雑さなしに、一貫した低レイテンシ推論を必要とするアプリケーション。
- CPUのみの環境: 専用のGPUアクセラレーションを持たないデバイスにおいて、YOLO26の最大43%高速なCPU推論が決定的な優位性をもたらします。
- 小物体detect: 航空ドローン画像やIoTセンサー分析のような困難なシナリオにおいて、ProgLossとSTALが微小なオブジェクトのAPを大幅に向上させます。
未来はここにある:Ultralytics の登場
YOLOv10 画期的なNMS YOLOv10 一方で、技術は進化を遂げてきた。2026年1月にUltralytics 、ビジョンAIにおける決定的な最先端技術である。これは従来のアーキテクチャの優れた側面——例えば YOLO11 のマルチタスク能力や RT-DETR の安定性といった従来のアーキテクチャの優れた点を統合し、単一で高度に最適化された強力なシステムへと進化させました。
YOLO26の優位性
新規プロジェクトを開始される場合は、YOLO26へのアップグレードを強くお勧めします。Ultralytics を通じて、比類のない柔軟性と使いやすさを提供します。
YOLO26における主要なブレイクスルー:
- エンドツーエンドのNMSフリー設計: YOLOv10で築かれた基盤に基づいて、YOLO26はネイティブにエンドツーエンドであり、デプロイロジックを最小限に簡素化します。
- 最大43%高速なCPU推論: Distribution Focal Loss (DFL) の除去により、YOLO26は計算オーバーヘッドを劇的に削減し、エッジAIデバイスの揺るぎない王者となります。
- MuSGDオプティマイザ: YOLO26は、大規模言語モデル(LLM)トレーニングの革新を取り入れています。SGDの安定性とMuonの速度を融合させることで、先行モデルよりも高速かつ信頼性の高い収束を実現します。
- ProgLoss + STAL: 優れた損失定式化は、EfficientDetが従来苦戦していた分野である小オブジェクト detect における長年の課題を効果的に解決します。
結論:ユースケースへのモデル適合
これらのネットワークの選択は、最終的にはデプロイの制約によって決まります。
- EfficientDetは、複合スケーリングに関して学術的な関心を集め続けており、モデルの重みサイズ(ディスク上)がランタイム速度よりも重要視される、既存のTensorFlowシステムを維持している研究者にとって適しています。
- YOLOv10は、その先駆的なNMSフリーアーキテクチャにより、高速なマルチオブジェクトtrackや交通監視など、超低レイテンシを要求するアプリケーションに驚異的な性能を発揮します。
- しかし、YOLO26は、最新のコンピュータビジョンプロジェクトにとって究極の推奨であり、堅牢なUltralyticsエコシステムに支えられ、精度、最小限のメモリフットプリント、マルチタスクの多様性において最高のパフォーマンスバランスを提供します。