DAMO-YOLO vs. RTDETRv2:技術比較
適切な物体検出モデルの選択は、精度、速度、計算コストのバランスを取る重要な決定です。この比較では、Alibaba Groupの高速検出器であるDAMO-YOLOと、Baiduの高精度リアルタイムトランスフォーマーモデルであるRTDETRv2という、2つの強力なアーキテクチャを掘り下げます。アーキテクチャの違い、パフォーマンスベンチマーク、理想的なユースケースを検証し、コンピュータビジョンプロジェクトに最適なモデルを選択できるよう支援します。
DAMO-YOLO:高速かつ高精度な検出
DAMO-YOLOは、Alibaba Groupが開発した物体検出モデルであり、速度と精度の優れたバランスを実現するように設計されています。YOLOスタイルの検出器の性能を向上させるために、いくつかの新しい技術を組み込んでいます。
- 著者: Xianzhe Xu、Yiqi Jiang、Weihua Chen、Yilun Huang、Yuan Zhang、Xiuyu Sun
- 組織: Alibaba Group
- Date: 2022-11-23
- Arxiv: https://arxiv.org/abs/2211.15444v2
- GitHub: https://github.com/tinyvision/DAMO-YOLO
- Docs: https://github.com/tinyvision/DAMO-YOLO/blob/master/README.md
アーキテクチャと主な機能
DAMO-YOLOは、いくつかの重要な革新により、従来のワンステージ物体検出器のパラダイムを基に構築されています。
- NAS搭載バックボーン: Neural Architecture Search (NAS)を利用して、最適化されたバックボーンネットワークを生成します。これにより、モデルは特定のハードウェアおよびパフォーマンス目標に合わせて調整された、非常に効率的なアーキテクチャを見つけることができます。
- Efficient RepGFPN Neck: このモデルは、特徴融合のためにGeneralized Feature Pyramid Network(GFPN)の効率的なバージョンを採用しています。このネック構造は、計算量を抑えながら、異なるスケールの特徴を効果的に結合します。
- ZeroHead: 主要なイノベーションはZeroHeadであり、分類ヘッドと回帰ヘッドをデカップリングして、計算オーバーヘッドを削減し、パフォーマンスを向上させます。この設計上の選択により、精度を犠牲にすることなく、ヘッドアーキテクチャが簡素化されます。
- AlignedOTA ラベル割り当て: DAMO-YOLOは、トレーニング中に予測にラベルを割り当てるためにAlignedOTA(Optimal Transport Assignment)を使用します。この高度な戦略により、各正解オブジェクトに最適なアンカーポイントが選択され、トレーニングの収束が向上し、精度が高まります。
長所と短所
長所:
- 卓越した推論速度: DAMO-YOLOモデル、特に小型のバリアントは、GPUハードウェア上で非常に低いレイテンシを提供し、リアルタイム推論に最適です。
- 高い効率性: このモデルは、比較的少ないパラメータ数とFLOPsで、速度と精度の優れたバランスを実現しています。
- スケーラブルなアーキテクチャ: 複数のサイズ(Tiny、Small、Medium、Large)で利用可能であり、開発者は特定のリソース制約に適したモデルを選択できます。
弱点:
- 精度の限界: 高速ですが、ピーク精度は、小さく遮られたオブジェクトが多い困難なシナリオでは、より複雑なTransformerベースのモデルの精度に匹敵しない場合があります。
- エコシステムとユーザビリティ: DAMO-YOLOのエコシステムは、より主流のフレームワークと比較して開発が進んでいないため、統合とデプロイにより多くの労力がかかる可能性があります。
RTDETRv2:高精度リアルタイム検出Transformer
RTDETRv2(Real-Time Detection Transformer v2)は、Baiduが開発した最先端の物体検出モデルであり、Transformerの能力を活用して、リアルタイム性能を維持しながら高い精度を実現します。オリジナルのRT-DETRを進化させたものであり、「bag-of-freebies」を取り入れて機能をさらに向上させています。
- 著者: Wenyu Lv、Yian Zhao、Qinyao Chang、Kui Huang、Guanzhong Wang、Yi Liu
- 組織: Baidu
- 日付: 2023-04-17 (オリジナルのRT-DETR), 2024-07-24 (RTDETRv2の改善)
- Arxiv: https://arxiv.org/abs/2304.08069 (オリジナル), https://arxiv.org/abs/2407.17140 (v2)
- GitHub: https://github.com/lyuwenyu/RT-DETR/tree/main/rtdetrv2_pytorch
- ドキュメント: https://github.com/lyuwenyu/RT-DETR/tree/main/rtdetrv2_pytorch#readme
アーキテクチャと主な機能
RTDETRv2は、物体検出を直接的な集合予測問題として再構築するDETR (DEtection TRansformer) フレームワークに基づいています。
- ハイブリッドCNN-Transformer設計: 従来のCNNバックボーン(ResNetなど)を使用して初期特徴マップを抽出し、その後、Transformerエンコーダー・デコーダーに入力します。
- グローバルコンテキストモデリング: Transformerのセルフアテンション機構により、モデルは画像内の異なる部分間のグローバルな関係性を捉えることができます。これにより、複雑で雑然としたシーンでのオブジェクト検出に非常に優れています。
- エンドツーエンドの検出: 他のDETRベースのモデルと同様に、RTDETRv2はエンドツーエンドであり、Non-Maximum Suppression (NMS)のような手作業で設計されたコンポーネントの必要性を排除し、検出パイプラインを簡素化します。
- Anchor-Free Approach: このモデルはアンカーフリーであり、アンカーボックスの設計と調整に伴う複雑さを回避します。
長所と短所
長所:
- 最先端の精度: RTDETRv2は非常に高いmAPスコアを達成し、特に密な物体分布のシナリオにおいて、他のリアルタイム検出器を上回ることがよくあります。
- 複雑なシーンでのロバスト性: グローバルな注意メカニズムにより、重複するオブジェクトの区別や、より広範なシーンコンテキストの理解に非常に効果的です。
- パイプラインの簡素化: エンドツーエンドのNMSフリー設計により、ポストプロセッシング段階がよりクリーンでわかりやすくなります。
弱点:
- より高い計算コスト: Transformerベースのアーキテクチャは、通常、純粋なCNNモデルと比較して、パラメータ、FLOP、およびメモリ使用量の点でより多くのリソースを必要とします。
- 推論が遅い: リアルタイムでの使用に最適化されていますが、その推論速度は、最速のYOLOベースのモデルよりも一般的に遅いです。
- 学習の複雑さ: Transformerの学習は、CNNよりもリソースを消費しやすく、学習スケジュールが長くなり、より多くのメモリを必要とする場合があります。
性能とトレーニングの比較
パフォーマンスベンチマーク
COCO val データセットにおける DAMO-YOLO と RTDETRv2 バリアントの詳細なパフォーマンス比較を以下に示します。
モデル | サイズ (ピクセル) |
mAPval 50-95 |
速度 CPU ONNX (ms) |
速度 T4 TensorRT (ms) |
params (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
DAMO-YOLO-t | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
DAMO-YOLO-s | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
DAMO-YOLO-m | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
DAMO-YOLO-l | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
RTDETRv2-s | 640 | 48.1 | - | 5.03 | 20.0 | 60.0 |
RTDETRv2-m | 640 | 51.9 | - | 7.51 | 36.0 | 100.0 |
RTDETRv2-l | 640 | 53.4 | - | 9.76 | 42.0 | 136.0 |
RTDETRv2-x | 640 | 54.3 | - | 15.03 | 76.0 | 259.0 |
表から、いくつかの結論を導き出すことができます。
- 精度: RTDETRv2は、同等のモデルサイズ全体で一貫してより高いmAPを達成しており、最大のバリアントは54.3 mAPという優れた数値を達成しています。
- 速度: DAMO-YOLOは推論速度において明確な利点があり、その小型モデルはT4 GPU上の最小のRTDETRv2モデルよりも2倍以上高速です。
- 効率性: DAMO-YOLOモデルは、パラメータとFLOPsの点でより効率的です。例えば、DAMO-YOLO-mは28.2Mのパラメータで49.2 mAPを達成しますが、RTDETRv2-sは同様の48.1 mAPに到達するために20.0Mのパラメータを必要としますが、より低速です。
理想的なユースケース
-
DAMO-YOLOは、以下のような速度が最も重要なアプリケーションに最適です。
- リアルタイムビデオ監視: セキュリティアラームシステムなどのアプリケーション向けに、高フレームレートのビデオフィードを処理します。
- エッジAI展開:NVIDIA JetsonやRaspberry Piのようなリソース制約のあるデバイスでの実行。
- ロボティクス: 迅速な意思決定を必要とするロボットのための迅速な知覚を可能にし、ロボティクスにおけるAIの役割で議論されている。
-
RTDETRv2は、精度が最優先されるシナリオで優れた性能を発揮します。
- 自動運転: 複雑な都市環境において、歩行者、車両、障害物を確実に検出します。
- 高度なセキュリティ: 精度が重要な混雑した公共スペースで脅威を特定します。
- 小売分析: 棚に並んだ多数の商品や店舗内の顧客を高精度でカウントおよび追跡します。
Ultralytics の強み:YOLOv8 と YOLO11
DAMO-YOLOとRTDETRv2はいずれも強力なモデルですが、Ultralytics YOLOのエコシステムは、YOLOv8や最新のUltralytics YOLO11のようなモデルを特徴としており、開発者や研究者にとって、多くの場合、全体的に優れたパッケージを提供する魅力的な代替手段となります。
Ultralyticsモデルを使用する主な利点は次のとおりです。
- 使いやすさ: 合理化されたPython API、豊富なドキュメント、および簡単なCLIの使用法により、トレーニング、検証、およびデプロイメントが非常に簡単になります。
- 優れたメンテナンス体制: Ultralyticsは、活発な開発、GitHubを介した強力なコミュニティサポート、頻繁なアップデート、そしてエンドツーエンドのMLOpsのためのUltralytics HUBとのシームレスな統合を提供します。
- パフォーマンスのバランス:Ultralyticsのモデルは、速度と精度の間で優れたトレードオフを実現するために高度に最適化されており、エッジデバイスからクラウドサーバーまで、幅広いアプリケーションに適しています。
- メモリ効率: Ultralytics YOLOモデルはメモリ効率が高くなるように設計されており、通常、リソースを大量に消費することで知られるRTDETRv2のようなTransformerベースのモデルと比較して、トレーニングおよび推論に必要なCUDAメモリが少なくなります。
- 多様性: YOLOv8やYOLO11のようなモデルは、物体検出、インスタンスセグメンテーション、画像分類、ポーズ推定、傾斜バウンディングボックス(OBB)をネイティブにサポートするマルチタスクフレームワークであり、DAMO-YOLOやRTDETRv2にはない統一されたソリューションを提供します。
- 学習効率: 高速な学習時間、効率的な収束、COCOのような一般的なデータセットですぐに利用できる事前学習済みの重みを活用できます。
結論
DAMO-YOLOとRTDETRv2はどちらも、速度と精度の限界をそれぞれ押し広げる優れた物体検出モデルです。DAMO-YOLOは、GPUハードウェアで可能な限り低いレイテンシを必要とするアプリケーションに最適です。対照的に、RTDETRv2は、特に複雑な視覚環境において、最高の精度を達成することが不可欠な場合に推奨されるモデルです。
しかし、ほとんどの開発者や研究者にとって、YOLO11 のような Ultralytics モデルが最も実用的で効果的なソリューションとなります。速度と精度の優れたバランス、比類のない使いやすさ、マルチタスクに対応できる汎用性を提供し、堅牢で活発にメンテナンスされているエコシステムによってサポートされています。この組み合わせにより、Ultralytics YOLO モデルは、高性能な実世界のコンピュータビジョンアプリケーションを構築するための推奨される選択肢となっています。
その他のモデルを見る
DAMO-YOLOおよびRTDETRv2に関心のあるユーザーは、以下の比較も参考になるかもしれません。
- YOLOv8 vs. DAMO-YOLO
- YOLO11 vs. DAMO-YOLO
- YOLOv8 vs RT-DETR
- YOLO11 vs. RT-DETR
- EfficientDet vs. DAMO-YOLO
- YOLOX 対 DAMO-YOLO
- YOLOv7 vs. RT-DETR