YOLOv8 vs RTDETRv2#
コンピュータービジョンの分野は絶えず進化しており、新しいアーキテクチャによってリアルタイム物体検出の可能性が広がっています。特に注目を集めているモデルとして、Ultralytics YOLOv8とBaiduのRTDETRv2があります。このガイドでは、両モデルのアーキテクチャ、性能指標、理想的なデプロイシナリオを取り上げ、包括的な技術比較を行います。
YOLOv8の概要#
Ultralytics YOLOv8は、YOLO(You Only Look Once)モデルファミリーにおける重要なマイルストーンです。長年にわたる基礎研究を基盤とし、幅広いタスクで優れた速度、精度、使いやすさを実現します。
主な特徴:
- 著者: Glenn Jocher、Ayush Chaurasia、Jing Qiu
- 組織: Ultralytics
- 日付: 2023年1月10日
- GitHub: Ultralyticsリポジトリ
- ドキュメント: YOLOv8のドキュメント
アーキテクチャと強み#
YOLOv8は、特徴抽出とバウンディングボックス回帰の両方を最適化する、効率化されたアーキテクチャを採用しています。アンカーフリーの検出器であるため、予測ヘッドが簡素化され、トレーニング中に調整が必要なハイパーパラメーターの数が減少します。このアーキテクチャは、推論速度と平均適合率(mAP)の優れた性能バランスを実現し、エッジデバイスとクラウドサーバーの両方で実環境にデプロイするのに適しています。
さらに、YOLOv8はTransformerベースのアーキテクチャと比べて、トレーニング時のメモリ要件が大幅に少なくなります。そのため、開発者はメモリ不足エラーを起こすことなく、一般的なコンシューマー向けGPUでモデルをトレーニングできます。
汎用性#
YOLOv8の特徴的な強みの1つは、ネイティブな汎用性です。バウンディングボックスだけに特化したモデルが多い中、YOLOv8は物体検出、インスタンスセグメンテーション、画像分類、姿勢推定、Oriented Bounding Box(OBB)検出をすぐに利用できる形でサポートします。
RTDETRv2の概要#
RTDETRv2(Real-Time Detection Transformer version 2)は、初代RT-DETRを基盤とし、Vision Transformerの強力なアテンション機構をリアルタイム物体検出アプリケーションに取り入れることを目指しています。
主な特徴:
- 著者: Wenyu Lv、Yian Zhao、Qinyao Chang、Kui Huang、Guanzhong Wang、Yi Liu
- 組織: Baidu
- 日付: 2024-07-24
- Arxiv: 2407.17140
- GitHub: RT-DETRリポジトリ
- ドキュメント: RTDETRv2のREADME
アーキテクチャと強み#
RTDETRv2は、畳み込みニューラルネットワーク(CNN)バックボーンとTransformerのエンコーダー・デコーダー構造を組み合わせたハイブリッドアーキテクチャを採用しています。これにより、自己アテンション機構を通じて、複雑な空間的関係とグローバルなコンテキストを捉えられます。「bag-of-freebies」と呼ばれる一連のトレーニング戦略を活用することで、RTDETRv2はCOCOデータセットなどの標準ベンチマークデータセットで競争力のあるmAPスコアを達成します。
弱点#
高精度である一方、RTDETRv2はTransformerベースであるため、純粋なCNNアーキテクチャと比べてメモリ消費量が多く、トレーニングに時間がかかります。Transformerは本質的により多くのVRAMを必要とするため、リソースに制約のあるハードウェアではトレーニングが困難です。また、RTDETRv2は検出性能に優れていますが、Ultralyticsエコシステムに備わっているマルチタスクの汎用性(姿勢推定やセグメンテーションなど)はありません。
パフォーマンス比較#
本番環境向けのモデルを評価する際は、モデルサイズ、推論速度、精度のバランスが重要です。以下の表では、YOLOv8とRTDETRv2の各モデルを直接比較します。
| モデル | サイズ (ピクセル) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | パラメーター (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
| YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
| YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
| YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.1 |
| YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
| 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 |
ユースケースと推奨事項#
YOLOv8とRT-DETRのどちらを選ぶかは、具体的なプロジェクト要件、デプロイの制約、エコシステムに関する優先事項によって異なります。
YOLOv8を選ぶ場合#
YOLOv8は、次のような場合に適しています。
- 汎用的なマルチタスクデプロイ: Ultralyticsエコシステムで、検出、セグメンテーション、分類、ポーズ推定に対応した、実績のあるモデルを必要とするプロジェクト。
- 確立済みの本番システム: 安定性と十分なテストが確認されたデプロイパイプラインを備え、すでにYOLOv8アーキテクチャを基盤として構築されている本番環境。
- 広範なコミュニティとエコシステムのサポート: YOLOv8の豊富なチュートリアル、サードパーティ製ツールとの統合、活発なコミュニティリソースを活用できるアプリケーション。
RT-DETRを選ぶケース#
RT-DETRは、次の用途に推奨されます。
- Transformerベースの検出研究: NMSを使わないエンドツーエンドの物体検出に向けて、注意機構やTransformerアーキテクチャを検討するプロジェクト。
- レイテンシに柔軟性がある高精度シナリオ: 検出精度を最優先し、推論レイテンシがやや高くても許容できるアプリケーション。
- 大きなオブジェクトの検出: 主に中型から大型のオブジェクトが存在し、Transformerのグローバル注意機構が本質的な優位性をもたらすシーン。
Ultralytics (YOLO26)を選ぶ場合#
多くの新規プロジェクトにおいて、Ultralytics YOLO26はパフォーマンスと開発者体験を最適なバランスで提供します。
- NMSを使用しないエッジデプロイ: 非最大抑制の後処理を複雑化させずに、安定した低レイテンシー推論を必要とするアプリケーション。
- CPUのみの環境: 専用のGPUアクセラレーションを備えていないデバイスで、YOLO26の最大43%高速なCPU推論が大きな優位性を発揮します。
- 小物体検出: ドローンによる航空画像やIoTセンサーの分析など、ProgLossとSTALによって小さな物体の精度が大幅に向上する難しいシナリオ。
Ultralyticsの強み#
モデルの選択では、生のメトリクスだけでなく、開発者の生産性を左右する周辺ソフトウェアエコシステムも重要です。Ultralyticsエコシステムは使いやすさに定評があり、機械学習のライフサイクル全体を簡素化する統一されたPython APIを提供します。
データセット管理から分散トレーニングまで、Ultralyticsは複雑な定型コードを抽象化します。開発者はすぐに利用できる事前学習済みの重みや、Hugging Faceなどのプラットフォームや監視ツールとのシームレスな統合を活用できます。この適切に保守されたエコシステムにより、活発な開発、頻繁なアップデート、充実したコミュニティサポートが実現します。
さらに、トレーニング効率もUltralytics YOLOモデルの特長です。モデルは高速な収束と、トレーニングプロセス中のメモリ使用量の削減に高度に最適化されており、RTDETRv2のようなTransformerベースの検出器と比較して、実験サイクルを大幅に短縮できます。
今後の展望: YOLO26の力#
YOLOv8は依然として非常に優れたモデルですが、最先端の性能を求める開発者は、2026年1月にリリースされたYOLO26へのアップグレードを検討してください。YOLO26は、画期的な複数の技術革新により、最先端技術を刷新します。
- エンドツーエンドのNMSフリーデザイン: YOLO26のオプションのone-to-oneヘッド(
nms=False)は、非極大値抑制(NMS)の後処理を不要にし、より高速で決定性の高いデプロイワークフローを実現します。 - DFLの削除: Distribution Focal Lossを削除することでモデルが簡素化され、エッジデバイスや低消費電力デバイスとの互換性が向上します。
- MuSGDオプティマイザー: LLMトレーニングの技術革新を取り入れたMuSGDオプティマイザーにより、トレーニングがより安定し、収束も高速になります。
- CPU推論が最大43%高速化: 専用GPUを搭載していない環境向けに、高度に最適化されています。
- ProgLoss + STAL: Progressive LossとSmall-Target-Aware Label Assignmentにより、小さな物体の認識性能が大幅に向上します。これは航空画像やロボティクスで特に重要です。
Ultralyticsのラインアップで検討する価値のあるその他の最新モデルには、従来のプロジェクトで優れた性能を発揮するYOLO11がありますが、新規デプロイにはYOLO26を推奨します。
コード例:トレーニングと推論#
Ultralytics APIはシンプルなため、数行のPythonコードでモデルの読み込み、トレーニング、デプロイができます。次の例を実行する前に、PyTorchがインストールされていることを確認してください。
from ultralytics import YOLO
# 事前学習済みのYOLOv8 smallモデルを読み込みます
model = YOLO("yolov8s.pt")
# カスタムデータセットでモデルをトレーニングします
# メモリ効率の高いトレーニングにより、より大きなバッチサイズを使用できます
train_results = model.train(data="coco8.yaml", epochs=50, imgsz=640, batch=16)
# テスト画像に対して推論を実行します
results = model("https://ultralytics.com/images/bus.jpg")
# 結果を表示します
results[0].show()
# エッジデプロイ向けにシームレスにエクスポートできます
export_path = model.export(format="onnx")UltralyticsはONNX、TensorRT、CoreMLなど、さまざまな形式へのワンクリックエクスポートに対応しており、異なるハードウェアアーキテクチャ間でのモデルのデプロイ方法を簡素化します。
結論#
YOLOv8とRTDETRv2はいずれも、リアルタイム物体検出に有用な機能を備えています。RTDETRv2は、Transformerがグローバルなコンテキストを捉える能力を示しており、推論速度やメモリ使用量が主な制約ではない、複雑な空間推論タスクに適しています。
ただし、速度、精度、リソース効率の優れたバランスを重視する開発者には、Ultralytics YOLOモデルが引き続き最適です。YOLOv8は軽量で、非常に使いやすく、複数のビジョンタスクに対応する汎用性と活発なオープンソースエコシステムを備えているため、スケーラブルな本番環境に最適なソリューションです。エッジ性能を極限まで高めたい場合は、新たにリリースされたYOLO26が、業界をリードし続ける比類のないNMSフリーの効率性を提供します。