EfficientDet vs. DAMO-YOLO:技術的比較
急速に進化するコンピュータビジョンにおいて、適切な物体検出アーキテクチャを選択することは、アプリケーションの成功に不可欠である。この分野を形成してきた2つの注目すべきアーキテクチャは、Google Researchが開発したEfficientDetと、AlibabaのDAMO Academyが開発したDAMO-YOLOである。一方はパラメータ効率とスケーラビリティを重視し、もう一方は産業用ハードウェアでの低遅延推論を目標としている。
このガイドでは、この2つのモデルの詳細な技術的分析を行い、アーキテクチャ、パフォーマンス指標、理想的なユースケースを比較することで、開発者が十分な情報を得た上で決断できるようにします。
パフォーマンス分析:効率とレイテンシーの比較
以下のベンチマークは、EfficientDetとDAMO-YOLO明確なトレードオフを示しています。EfficientDetはパラメータ数とFLOP数が少ないことで有名で、理論的に効率的であるのに対し、YOLO -YOLOはGPU上での実世界の推論速度に最適化されています。
| モデル | サイズ (ピクセル) | mAP値 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 |
| DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
| DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
| DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
| DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
主なベンチマーク
上記のデータから、いくつかの重要な違いが浮かび上がってくる:
- GPU レイテンシの優位性:DAMO-YOLO 、GPU ハードウェア上で著しく高速な推論速度を示しています。例えば、DAMO-YOLOmは、T4GPU上で、わずか5.09msのレイテンシで49.2のmAP 達成しました。対照的に、同等のEfficientDet-d4(49.7mAP)には33.55msが必要で、これは6倍近く遅い。
- パラメータ効率:EfficientDetは、モデルの圧縮指標に優れています。EfficientDet-d0モデルは、わずか3.9Mパラメータと25.4B FLOPしか使用せず、ストレージに制約のあるデバイスに最適な軽量フットプリントを提供します。
- CPU 性能:EfficientDetは、CPU 性能に関する確立されたベンチマークを提供するため、非加速エッジデバイスにとっては予測可能な選択肢となる。しかし、その複雑な特徴融合レイヤーは、より単純なアーキテクチャと比較して、実世界のスループットが遅くなることがよくあります。
EfficientDet:スケーラブルで効率的
EfficientDetは、モデルの次元をスケールする原理的な方法を導入することで、物体検出に革命をもたらしました。EfficientNetのバックボーンをベースに構築され、理論計算コスト(FLOPs)を最小限に抑えながら高精度を達成することを目指しています。
エフィシェントデットの詳細
- 著者: Mingxing Tan、Ruoming Pang、Quoc V. Le
- 組織Google
- Date: 2019-11-20
- Arxiv:https://arxiv.org/abs/1911.09070
- GitHub:https://github.com/google/automl/tree/master/efficientdet
建築ハイライト
EfficientDetの中核となる技術革新は、2つの主要コンポーネントにある:
- BiFPN(双方向特徴ピラミッドネットワーク):異なるスケールからの特徴を合計する従来のFPNとは異なり、BiFPNは異なる入力特徴に学習可能な重みを導入し、情報がトップダウンとボトムアップの両方を繰り返し流れるようにする。これにより、特徴融合は改善されるが、計算の複雑さが増す。
- 複合スケール:EfficientDetは、バックボーン、BiFPN、クラス/ボックスネットワーク、入力解像度を共同でスケールアップする複合係数を提案します。これにより、1つの次元(深さや幅など)だけを恣意的にスケールさせるのではなく、ネットワークのすべての部分がバランスよく成長することを保証します。
長所と短所
EfficientDetの最大の強みは、理論的な効率性です。YOLOv3やRetinaNetのような従来の検出器よりもはるかに少ないパラメータで最先端の精度を達成します。しかし、深さ方向に分離可能な畳み込みとBiFPNの複雑なメモリアクセスパターンを多用するため、最新のGPUの利用率が低下し、FLOPsが低いにもかかわらずレイテンシが高くなる可能性があります。
配備に関する考慮事項
EfficientDetはFLOPsが低いが、"FLOPsが低い "ことが必ずしも "推論が速い "ということにはならない。GPUやTPUのようなハードウェアでは、メモリ帯域幅やカーネル起動のオーバーヘッドの方が問題になることが多い。EfficientDetの複雑なグラフ構造は、リアルタイムの推論シナリオではボトルネックになることがあります。
DAMO-YOLO:スピード重視のイノベーション
DAMO-YOLO 、産業用ハードウェアにおける高性能と低遅延のギャップを埋めるという特定の目標を持って設計された。最先端のニューラル・アーキテクチャ・サーチ(NAS)技術を取り入れ、検出タスクに最適な構造を見つける。
DAMO-YOLO 詳細:
- 著者: Xianzhe Xu、Yiqi Jiang、Weihua Chen、Yilun Huang、Yuan Zhang、Xiuyu Sun
- 組織アリババグループ
- Date: 2022-11-23
- Arxiv:https://arxiv.org/abs/2211.15444v2
- GitHub:https://github.com/tinyvision/DAMO-YOLO
建築ハイライト
YOLO -YOLOは、YOLO ファミリーにいくつかの「新技術」コンポーネントを導入する:
- MAE-NASバックボーン: It utilizes Neural Architecture Search (NAS) driven by Maximum Entropy to discover efficient backbones that handle varying input resolutions effectively.
- RepGFPN:これは標準的なGeneralized FPNを改良したもので、再パラメータ化を取り入れて融合ブロックを効率化し、ハードウェアの利用率を最大化する。
- ZeroHeadとAlignedOTA:「ZeroHead」デザインは、検出ヘッドの複雑さを大幅に軽減し、AlignedOTA(Optimal Transport Assignment)は、分類と回帰の間のずれを解決するために、トレーニング中にロバストなラベル割り当て戦略を提供します。
長所と短所
YOLO -YOLOは、生のスピードに優れている。TensorRTような)ハードウェアアクセラレーションに適した構造を優先することで、驚くべきスループットを達成する。しかし、複雑なNASが生成したアーキテクチャに依存しているため、手作業で作られたシンプルなアーキテクチャと比較して、カスタム研究目的の修正や微調整が難しくなる可能性がある。さらに、より主流のYOLO バージョンに見られるような、コミュニティによる幅広いサポートやマルチプラットフォームでの使いやすさにも欠けている。
Ultralytics YOLO11:ホリスティックな選択肢
EfficientDetはパラメータ効率を、DAMO-YOLO GPU スピードを提供する、 Ultralytics YOLO11は、開発者に優しいエコシステムに包まれながら、その両方の優れたバランスを提供します。エッジAIからクラウドYOLO11 、ほとんどの実用的なアプリケーションにとって、YOLO11は最適な選択です。
Ultralytics モデルを選ぶ理由
- 比類のない汎用性:オブジェクト検出が中心のEfficientDetやYOLO-YOLOとは異なり、Ultralytics YOLO11 、インスタンスのセグメンテーション、ポーズ推定、オリエンテッドバウンディングボックス(OBB)、画像分類など、幅広いコンピュータビジョンタスクをネイティブにサポートします。これにより、多様なプロジェクト要件に単一のフレームワークを使用することができます。
- パフォーマンス・バランス: YOLO11 、精度とレイテンシーのフロンティアの限界に挑戦している。YOLO11は、特殊なリアルタイム・モデルに匹敵する推論速度を維持しながら、より重いモデルの精度に匹敵するか、それを上回ることがよくあります。
- 使いやすさとエコシステム: Ultralytics APIはシンプルに設計されています。広範なドキュメントとコミュニティサポートにより、開発者はインストールからトレーニングまで数分で行うことができます。エコシステムには、データ注釈、実験追跡、ONNX、TensorRT、CoreML、TFLiteフォーマットへのワンクリックでのエクスポートのためのシームレスな統合が含まれています。
- トレーニング効率: Ultralytics モデルは、高速に収束するように最適化されています。高度なデータ増強ストラテジーと効率的なデータローダーを採用し、高性能モデルのトレーニングにかかる時間とコストを削減します。
- メモリ効率:Transformerベースのモデルや旧アーキテクチャと比較して、YOLO11 11はトレーニングに必要なCUDA メモリを大幅に削減し、コンシューマーグレードのGPUで利用できるようにしました。
コード例YOLO11使い始める
Ultralytics 使った最先端の検出の実装は簡単です。次のコード・スニペットは、事前にトレーニングされたYOLO11 モデルをロードし、画像上で推論を実行する方法を示しています:
from ultralytics import YOLO
# Load a pre-trained YOLO11n model
model = YOLO("yolo11n.pt")
# Run inference on a local image or URL
results = model.predict("https://ultralytics.com/images/bus.jpg")
# Display the results
results[0].show()
# Export the model to ONNX format for deployment
path = model.export(format="onnx")
シームレスな統合
Ultralytics モデルは、一般的なMLOpsツールと簡単に統合できます。ロギングにMLflowを使用している場合でも、ハイパーパラメータの最適化にRay Tuneを使用している場合でも、その機能はライブラリに直接組み込まれています。
結論
EfficientDetとDAMO-YOLO比較では、選択の大部分は特定のハードウェア制約に依存する。EfficientDetは、理論的な効率や、パラメータ数が主なボトルネックとなるシナリオでは、依然として有力な候補です。YOLO-YOLOは、レイテンシが最重要である最新のGPU上で実行される高スループット・アプリケーションでは、明らかに勝者です。
しかし、高性能、使いやすさ、マルチタスク機能という両方の長所を併せ持つソリューションが必要です。Ultralytics YOLO11は業界標準として際立っています。その堅牢なエコシステムと継続的な改良により、開発者は拡張可能なコンピュータ・ビジョン・ソリューションを構築するための最も信頼できるツールを手に入れることができます。
その他の比較
物体検出モデルの状況をさらに理解するために、以下の追加比較をご覧ください:
- YOLO11 vs. EfficientDet
- YOLOv8 vs. DAMO-YOLO
- RT-DETR vs. DAMO-YOLO
- YOLO11 vs. RT-DETR
- YOLOX 対 EfficientDet