EfficientDetとRTDETRv2#
コンピュータービジョンプロジェクトに最適なアーキテクチャを選ぶには、多様なニューラルネットワークを理解する必要があります。このガイドでは、スケーラビリティに優れた畳み込みニューラルネットワーク (CNN)ファミリーのEfficientDetと、最先端のリアルタイムTransformerモデルであるRTDETRv2という、異なる2つのアプローチを詳しく技術比較します。構造上の違い、トレーニング手法、さまざまなハードウェア環境へのデプロイ適性を評価します。
従来の効率性と最新のTransformer機能のトレードオフを理解すれば、開発者は適切な判断を下せます。さらに、新しいUltralytics YOLO26などの最新の代替モデルがどのように両者の隔たりを埋め、比類のない速度、精度、使いやすさを実現するかを紹介します。
EfficientDetを理解する#
EfficientDetは、モデルスケーリングへの体系的なアプローチを導入し、物体検出に変革をもたらしました。
- 著者: Mingxing Tan、Ruoming Pang、Quoc V. Le
- 組織: Google
- 日付: 2019年11月20日
- Arxiv: https://arxiv.org/abs/1911.09070
- GitHub: Google AutoMLリポジトリ
- ドキュメント: EfficientDetドキュメント
アーキテクチャと基本概念#
EfficientDetは、EfficientNetをバックボーンとして利用し、双方向特徴ピラミッドネットワーク (BiFPN)を導入しています。BiFPNは学習可能な重みを適用して各入力特徴の重要度を学習することで、簡単かつ高速なマルチスケール特徴融合を可能にします。さらに、バックボーン、特徴ネットワーク、ボックス/クラス予測ネットワークの解像度、深さ、幅をすべて同時に均一に拡大する複合スケーリング手法を組み合わせています。
長所と制約#
EfficientDetの最大の強みは、パラメーター効率です。リリース当時、EfficientDet-D0などのモデルは、従来のYOLOバージョンと比べて少ないパラメーター数とFLOPsで高い精度を達成しました。そのため、計算リソースに厳しい制約がある環境で非常に魅力的な選択肢となりました。
ただし、EfficientDetは後処理で標準的な非最大値抑制 (NMS)を使用して重複するバウンディングボックスを除外するため、リアルタイムパイプラインのレイテンシのボトルネックになる可能性があります。また、トレーニングプロセスのドキュメントは充実していますが、最新ツールの高度に最適化された開発者体験と比べると、EfficientDetのファインチューニングは煩雑な場合があります。
EfficientDetはスケーラブルなネットワークへの道を開きましたが、最新のNPUにこれらのモデルをデプロイするには、大規模な手動最適化が必要になることがよくあります。デプロイを効率化するには、より新しいUltralyticsモデルのワンクリックエクスポート機能が役立ちます。
RTDETRv2を探る#
RTDETRv2はTransformerベースのアーキテクチャを進化させ、従来のアンカーベースCNNからパラダイムを転換します。
- 著者: Wenyu Lv、Yian Zhao、Qinyao Chang、Kui Huang、Guanzhong Wang、Yi Liu
- 組織: Baidu
- 日付: 2024-07-24
- Arxiv: https://arxiv.org/abs/2407.17140
- GitHub: RT-DETRリポジトリ
- ドキュメント: RTDETRv2のドキュメント
Transformerの進化#
RTDETRv2は、リアルタイム物体検出Transformer (RT-DETR)のベースラインを基盤としています。グローバルアテンション機構を活用し、標準的な畳み込みの局所的な制約を受けずに、複雑なシーンの文脈をモデルが理解できるようにします。アーキテクチャ上の最大の利点は、ネイティブなNMSフリー設計です。入力画像からオブジェクトを直接予測することで推論パイプラインを簡素化し、NMS後処理で必要となるヒューリスティックな調整を回避します。
強みと弱み#
RTDETRv2は、物体の重なりによって従来のCNNが混乱する高密度環境で優れた性能を発揮します。COCOなどのデータセットを使用した複雑なベンチマークで高い精度を示します。
精度が高い一方で、Transformerモデルは本質的に多くのメモリを必要とします。トレーニング効率は特に低く、CNNと比べて収束までにかなり多くのエポックが必要で、CUDAメモリの使用量も大幅に増加します。そのため、クラウド予算に制約がある開発者や迅速なプロトタイピングを必要とする開発者には、RTDETRv2はあまり適していません。
RTDETRv2のようなTransformerモデルのトレーニングには、通常ハイエンドGPUが必要です。Out-Of-Memory (OOM)エラーが発生した場合は、Ultralytics YOLOシリーズのように、トレーニング時のメモリ要件が低いモデルの使用をご検討ください。
パフォーマンスベンチマークの比較#
生のパフォーマンス指標を理解することは、モデルの選定に不可欠です。以下の表では、さまざまなサイズのEfficientDetとRTDETRv2を比較します。
| モデル | サイズ (ピクセル) | 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 |
| RTDETRv2-s | 640 | 48.1 | - | 5.03 | 20 | 60 |
| RTDETRv2-m | 640 | 51.9 | - | 7.51 | 36 | 100 |
| RTDETRv2-l | 640 | 53.4 | - | 9.76 | 42 | 136 |
| RTDETRv2-x | 640 | 54.3 | - | 15.03 | 76 | 259 |
ユースケースと推奨事項#
EfficientDetとRT-DETRのどちらを選ぶかは、プロジェクトの要件、デプロイの制約、エコシステムの好みによって異なります。
EfficientDetを選ぶタイミング#
EfficientDetが適しているのは、次のような場合です。
- Google CloudとTPUパイプライン: EfficientDetがネイティブに最適化されている、Google Cloud Vision APIやTPUインフラと緊密に統合されたシステム。
- 複合スケーリングの研究: ネットワークの深さ、幅、解像度をバランスよくスケーリングする効果の研究に焦点を当てた学術的なベンチマーク。
- LiteRTによるモバイルデプロイ: Androidまたは組み込みLinuxデバイス向けに、LiteRT(旧称TensorFlow Lite)形式へのエクスポートが特に必要なプロジェクト。
RT-DETRを選ぶケース#
RT-DETRは、次の用途に推奨されます。
- Transformerベースの検出研究: NMSを使わないエンドツーエンドの物体検出に向けて、注意機構やTransformerアーキテクチャを検討するプロジェクト。
- レイテンシに柔軟性がある高精度シナリオ: 検出精度を最優先し、推論レイテンシがやや高くても許容できるアプリケーション。
- 大きなオブジェクトの検出: 主に中型から大型のオブジェクトが存在し、Transformerのグローバル注意機構が本質的な優位性をもたらすシーン。
Ultralytics (YOLO26)を選ぶ場合#
多くの新規プロジェクトにおいて、Ultralytics YOLO26はパフォーマンスと開発者体験を最適なバランスで提供します。
- NMSを使用しないエッジデプロイ: 非最大抑制の後処理を複雑化させずに、安定した低レイテンシー推論を必要とするアプリケーション。
- CPUのみの環境: 専用のGPUアクセラレーションを備えていないデバイスで、YOLO26の最大43%高速なCPU推論が大きな優位性を発揮します。
- 小物体検出: ドローンによる航空画像やIoTセンサーの分析など、ProgLossとSTALによって小さな物体の精度が大幅に向上する難しいシナリオ。
Ultralyticsの強み:YOLO26の紹介#
EfficientDetとRTDETRv2はコンピュータービジョンの歴史に確かな足跡を残しましたが、最新の本番環境には速度、精度、優れた開発者体験の完璧なバランスが求められます。最近リリースされたUltralytics YOLO26は、これらの異なるアーキテクチャの優れた要素を統合しています。
YOLO26は、Ultralyticsが誇る合理化されたエコシステムと画期的な内部機構を組み合わせている点が特徴です。
競合モデルよりYOLO26を選ぶ理由#
- エンドツーエンドのNMSフリー設計: RTDETRv2などのTransformerに着想を得たYOLO26は、オプションのエンドツーエンドヘッド (
nms=False)を提供し、NMS後処理を不要にします。純粋なTransformerのようにパラメーターが大幅に増えることなく、より高速でシンプルなデプロイパイプラインを実現します。 - MuSGDオプティマイザー: 大規模言語モデルのトレーニングにおける革新(Moonshot AIのKimi K2など)に着想を得たYOLO26は、SGDとMuonを組み合わせたハイブリッド方式を採用しています。RTDETRv2で必要となる長いトレーニングスケジュールと比べて、これまでにないトレーニングの安定性と大幅に速い収束を実現します。
- エッジ向けに最適化: CPU推論が最大43%高速なYOLO26は、エッジAI向けに構築されています。携帯電話やスマートカメラなどの制約のあるハードウェアでも、負荷の大きいTransformerモデルを容易に上回ります。
- DFLの削除: Distribution Focal Lossを削除することでモデルグラフが簡素化され、TensorRTとONNXへのシームレスなエクスポートが可能になります。
- ProgLoss + STAL: これらの高度な損失関数により、小さな物体の認識性能が大幅に向上し、航空画像やロボティクスでよく見られるボトルネックを解消します。
- 汎用性: 主に検出に焦点を当てたRTDETRv2とは異なり、YOLO26はインスタンスセグメンテーション、画像分類、姿勢推定、方向付きバウンディングボックス(OBB)をネイティブにサポートし、姿勢推定向けのRLEやOBB向けの専用角度損失など、タスク固有の改善も備えています。
Ultralytics Platformを活用すれば、データセットを管理し、YOLO26やYOLO11などのモデルをクラウドでトレーニングし、柔軟なAPIを通じてシームレスにデプロイできます。
Ultralyticsによるシンプルなコード#
保守の行き届いたUltralytics Python APIを使えば、モデルのトレーニングと推論を簡単に行えます。開発者は、最小限の定型コードでモデルのベンチマークを実行したり、トレーニングスクリプトを起動したりできます。
from ultralytics import YOLO
# 最先端のYOLO26モデルを読み込みます
model = YOLO("yolo26n.pt")
# カスタムデータセットでモデルをトレーニングします
results = model.train(data="coco8.yaml", epochs=50, imgsz=640)
# テスト画像に対して推論を実行します
predictions = model.predict("image.jpg")レガシーインフラストラクチャを管理している場合、高い評価を得ているUltralytics YOLOv8は、安定性と高い性能を兼ね備えた選択肢として引き続き利用でき、Ultralyticsエコシステムの長期的な信頼性を示しています。複雑なリアルタイムトラッキングアルゴリズムを実行する場合でも、シンプルな欠陥検出を行う場合でも、YOLO26にアップグレードすれば、システムを将来にわたって使える状態に保ちながら、高精度かつメモリ効率の高い処理を実現できます。