RTDETRv2 vs YOLOv6-3.0#
コンピュータービジョンの分野は絶えず進化しており、物体検出における多様なアーキテクチャの選択肢を開発者に提供しています。相反するアプローチを代表する2つの主要なモデルが、最先端のビジョントランスフォーマーであるRTDETRv2と、産業用途向けに最適化された高性能な畳み込みニューラルネットワーク(CNN)であるYOLOv6-3.0です。
この包括的な技術比較では、それぞれのアーキテクチャ、パフォーマンス指標、最適なデプロイシナリオを詳しく検証します。また、より広範なUltralyticsエコシステムが、どのように優れた開発者体験を提供するかを確認し、次世代のUltralytics YOLO26の機能にも目を向けます。
RTDETRv2:ビジョントランスフォーマーのアプローチ#
Baiduの研究者によって開発されたRTDETRv2は、初代RT-DETRの基盤を発展させたものであり、トランスフォーマーベースの物体検出における大きな飛躍を表しています。
- 著者: Wenyu Lv、Yian Zhao、Qinyao Chang、Kui Huang、Guanzhong Wang、Yi Liu
- 組織: Baidu
- 日付: 2024-07-24
- Arxiv: 2407.17140
- GitHub: lyuwenyu/RT-DETR
- ドキュメント: RTDETRv2 GitHub README
アーキテクチャの主な特徴#
RTDETRv2は、CNN特徴抽出器と高性能なトランスフォーマーデコーダーを組み合わせたハイブリッドアーキテクチャを採用しています。このモデルの最も特徴的な点は、ネイティブでNMSを必要としない設計です。後処理で非最大抑制(NMS)を排除することで、モデルはバウンディングボックスを直接予測し、デプロイを簡素化するとともに推論レイテンシーを安定させます。
RTDETRv2に組み込まれた「Bag-of-Freebies」により、複雑なシーンや重なり合うオブジェクトへの対応能力が向上します。これは、グローバルアテンションメカニズムが局所的な畳み込みよりも空間的関係を本質的によく理解するためです。
トランスフォーマーは複雑なシーンの理解に優れていますが、一般にCNNと比べてトレーニング時に大幅に多くのCUDAメモリを必要とします。そのため、一般的なコンシューマー向けGPUではバッチサイズが制限され、トレーニング全体の時間が増加する可能性があります。
YOLOv6-3.0:産業スループットの最大化#
MeituanのVision AI Departmentから生まれたYOLOv6-3.0は、GPUスループットが最重要となる産業パイプライン向けの次世代検出器として明確に設計されました。
- 著者: Chuyi Li、Lulu Li、Yifei Geng、Hongliang Jiang、Meng Cheng、Bo Zhang、Zaidan Ke、Xiaoming Xu、Xiangxiang Chu
- 組織: Meituan
- 日付: 2023-01-13
- Arxiv: 2301.05586
- GitHub: meituan/YOLOv6
アーキテクチャの重点#
YOLOv6-3.0は、NVIDIA GPUなどのハードウェアアクセラレーターにおけるメモリアクセスコストを最小化するよう綿密に設計されたEfficientRepバックボーンに依存しています。ネックアーキテクチャには、異なるスケール間の特徴融合を改善する双方向連結(BiC)モジュールが搭載されています。
トレーニング中は、アンカーベースのパラダイムの利点を活用しながら、より高速な実行のためにアンカーフリーの推論モードを維持するアンカー支援トレーニング(AAT)戦略を採用します。T4やA100などのサーバーグレードGPUでは非常に優れたスループットを達成しますが、専用設計のアーキテクチャにより、CPUのみのエッジデバイスにデプロイした場合はレイテンシーが最適でない可能性があります。
性能比較#
本番環境向けにモデルを評価する際は、精度(mAP)と推論速度、計算コスト(FLOPs)のバランスを取ることが重要です。以下の表は、これらのモデルを比較した結果を示しています。
| モデル | サイズ (ピクセル) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | パラメーター数 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| YOLOv6-3.0n | 640 | 37.5 | - | 1.17 | 4.7 | 11.4 |
| YOLOv6-3.0s | 640 | 45.0 | - | 2.66 | 18.5 | 45.3 |
| YOLOv6-3.0m | 640 | 50.0 | - | 5.28 | 34.9 | 85.8 |
| YOLOv6-3.0l | 640 | 52.8 | - | 8.95 | 59.6 | 150.7 |
YOLOv6-3.0はTensorRT上の処理速度で圧倒的な優位性を示す一方、RTDETRv2は特に大規模なモデルバリアントでより高いmAPスコアを獲得し、より優れたスケーリングを実現します。ただし、どちらのモデルも、現代の統合フレームワークに見られる幅広い汎用性を備えていません。YOLOv6-3.0は主に検出に特化しており、インスタンスセグメンテーションやポーズ推定などのタスクを標準ではネイティブサポートしていません。
ユースケースと推奨事項#
RT-DETRとYOLOv6のどちらを選ぶかは、具体的なプロジェクト要件、デプロイの制約、エコシステムの好みによって決まります。
RT-DETRを選択するケース#
RT-DETRが適しているケース:
- Transformerベースの検出研究: NMSを使用しないエンドツーエンド物体検出のために、アテンションメカニズムやTransformerアーキテクチャを研究するプロジェクト。
- 柔軟なレイテンシーを許容できる高精度シナリオ: 検出精度を最優先し、やや高い推論レイテンシーを許容できるアプリケーション。
- 大きな物体の検出: 主に中型から大型の物体が存在し、Transformerのグローバルアテンションメカニズムが本質的な優位性を発揮するシーン。
YOLOv6を選択する場合#
YOLOv6は次の用途に推奨されます:
- 産業用ハードウェアを考慮したデプロイ: モデルのハードウェアを考慮した設計と効率的な再パラメータ化により、特定の対象ハードウェア上で最適化された性能が得られるシナリオ。
- 高速なシングルステージ検出: 管理された環境でのリアルタイム動画処理において、GPU上での生の推論速度を優先するアプリケーション。
- Meituanエコシステムとの統合: すでにMeituanの技術スタックとデプロイインフラストラクチャを利用しているチーム。
Ultralytics (YOLO26)を選ぶタイミング#
ほとんどの新規プロジェクトでは、Ultralytics YOLO26が性能と開発者エクスペリエンスの最適な組み合わせを提供します。
- NMSフリーのエッジデプロイ: Non-Maximum Suppressionの後処理を複雑にすることなく、一貫した低レイテンシー推論が必要なアプリケーション。
- CPUのみの環境: 専用GPUアクセラレーションを持たないデバイスで、YOLO26の最大43%高速なCPU推論が決定的な優位性となる場合。
- 小さな物体の検出: aerial drone imageryやIoTセンサー分析など、ProgLossとSTALによって微小物体の精度が大幅に向上する難しいシナリオ。
Ultralyticsの優位性#
適切なモデルを選ぶ際に重要なのは、生のベンチマーク数値だけではありません。開発者体験、デプロイの柔軟性、エコシステムのサポートも同様に重要です。Ultralyticsプラットフォームに統合されたモデルを利用することで、ユーザーは静的な研究リポジトリに対して大きなメリットを得られます。
- 使いやすさ:
ultralyticsPythonパッケージはシームレスなAPIを提供します。モデルのトレーニング、検証、エクスポートをわずか数行のコードで実行できます。 - 充実したメンテナンス: 独立した学術リポジトリとは異なり、Ultralytics Platformは継続的に更新されています。ONNX、OpenVINO、CoreMLなどのツール向けに、堅牢な統合機能を備えています。
- トレーニング効率: Ultralyticsモデルは通常、RTDETRv2のようなトランスフォーマーアーキテクチャと比べてトレーニング時のVRAM消費量が大幅に少ないため、コンシューマー向けハードウェアでより大きなバッチサイズを使用できます。
- 汎用性: YOLOv6-3.0の特化したスコープとは異なり、Ultralyticsモデルはマルチタスクであり、単一の統合フレームワーク内で画像分類、指向性バウンディングボックス(OBB)、およびセグメンテーションをネイティブにサポートします。
Ultralytics CLIを使用すれば、エッジデプロイ用のトレーニング済みモデルのエクスポートは、yolo export model=yolo11n.pt format=tensorrtを実行するだけで簡単に行えます。
YOLO26の登場:究極のソリューション#
RTDETRv2とYOLOv6-3.0にはそれぞれ固有の利点がありますが、この分野は急速に進化しています。新しいコンピュータービジョンプロジェクトを開始するチームには、Ultralyticsが2026年1月にリリースした**YOLO26**を強くおすすめします。
YOLO26は、産業用CNNと最新のトランスフォーマーの強みを融合し、それぞれの弱点を解消しています。
- エンドツーエンドのNMSフリー設計: YOLOv10で初めて導入された画期的な手法を採用し、YOLO26はNMSの後処理をネイティブに排除します。これにより、RTDETRv2と同様に安定した予測可能なデプロイを実現しながら、オーバーヘッドを大幅に削減します。
- MuSGDオプティマイザー: Moonshot AIのKimi K2などの高度なLLMトレーニング手法に着想を得たこのハイブリッドオプティマイザーは、安定したトレーニングとより高速な収束を実現し、従来のビジョントランスフォーマーで知られる不安定性を克服します。
- エッジ向けに最適化: 従来世代と比べてCPU推論が最大43%高速であり、Distribution Focal Loss(DFL)を戦略的に削除しているため、YOLO26はGPUアクセラレーションを利用できないモバイルデバイスやIoTデバイスに最適です。
- ProgLoss + STAL: これらの高度な損失関数により、小さなオブジェクトの認識が大幅に向上します。これはCNNにおける歴史的な課題であり、YOLO26を航空画像やロボティクスに最適なモデルにしています。
学習例#
直感的に使えるUltralytics APIにより、最先端モデルをシームレスにトレーニングできます。以下は、COCO8データセットでYOLO26 Nanoモデルをトレーニングする実行可能な例です。
from ultralytics import YOLO
# Load the newly released YOLO26 Nano model
model = YOLO("yolo26n.pt")
# Train the model on the COCO8 dataset for 50 epochs
# The Ultralytics engine handles data caching and augmentation automatically
train_results = model.train(data="coco8.yaml", epochs=50, imgsz=640)
# Validate the model's performance
metrics = model.val()
print(f"Validation mAP50-95: {metrics.box.map}")
# Export the trained model to ONNX format for production
model.export(format="onnx")まとめ#
RTDETRv2とYOLOv6-3.0を比較する場合、判断は主に使用するハードウェアとレイテンシーの制約によって決まります。RTDETRv2は、複雑に重なり合うオブジェクトへの対応が重要となる研究環境やサーバーサイド処理で優れています。YOLOv6-3.0は、高性能なNVIDIA GPUを備えた高スループットの製造ラインにおいて、依然として有力な選択肢です。
しかし、トランスフォーマーのNMSフリーという優れた特性と、CNNの圧倒的な速度および少ないメモリフットプリントの両方を求める開発者にとって、YOLO26は他に類を見ない選択肢です。Ultralyticsエコシステムの包括的なドキュメントと活発なコミュニティに支えられ、YOLO26はコンピュータービジョンAIプロジェクトの堅牢性、スケーラビリティ、将来性を確保します。