YOLOv10 対 YOLOv8#
リアルタイム物体検出は、画期的なアーキテクチャが次々と登場する急速な進化を遂げており、それぞれが精度、推論速度、計算効率の限界を押し広げようとしてきました。本稿では、コンピュータービジョン分野における2つの主要なマイルストーン、YOLOv10と**Ultralytics YOLOv8**を比較します。YOLOv8が汎用性と本番運用への適応性に優れた標準を確立した一方で、YOLOv10は特に後処理のボトルネックを排除することを目的としたアーキテクチャ上の変更を導入しました。
これらのモデルの特徴的な利点、アーキテクチャ、パフォーマンス指標を理解することは、実環境で最先端のビジョンAIソリューションを導入しようとする開発者や研究者にとって重要です。
技術仕様と開発者情報#
これらのモデルを効果的に評価するには、その起源と、それぞれの研究チームが重視した中核分野を理解しておくと役立ちます。
YOLOv10:エンドツーエンドの効率性#
清華大学の研究者によって開発されたYOLOv10は、従来世代の後処理ステップによって生じる計算オーバーヘッドへの対処を目的に設計されました。
- 著者: Ao Wang、Hui Chen、Lihao Liu、ほか
- 組織: 清華大学
- 日付: 2024-05-23
- Arxiv: 2405.14458
- GitHub: THU-MIG/yolov10
- ドキュメント: YOLOv10 Documentation
Ultralytics YOLOv8:汎用性に優れた標準#
2023年初頭にリリースされたYOLOv8は、堅牢なアーキテクチャと、広範な機械学習エコシステムへの卓越した統合性により、急速に業界標準となりました。
- 著者: Glenn Jocher、Ayush Chaurasia、Jing Qiu
- 組織: Ultralytics
- 日付: 2023-01-10
- GitHub: ultralytics/ultralytics
アーキテクチャのイノベーション#
両モデルは従来のYOLOアーキテクチャに大幅な改善をもたらしていますが、パイプラインのやや異なる側面を対象としています。
YOLOv10のアーキテクチャ#
YOLOv10の最大の特徴は、NMSなしのトレーニング戦略です。従来、物体検出器は推論時に非最大抑制 (NMS)を使用して、重複するバウンディングボックスを除外していました。このステップはレイテンシを増加させ、エンドツーエンドのデプロイを複雑にする可能性があります。YOLOv10は、トレーニング中に一貫したデュアル割り当てを使用することで、各物体につき単一かつ正確なバウンディングボックスをモデルがネイティブに予測できるようにしています。さらに、効率性と精度を総合的に重視したモデル設計を採用し、さまざまなコンポーネントを最適化してFLOPsとパラメーター数を大幅に削減しています。
YOLOv8のアーキテクチャ#
YOLOv8はアンカーフリーの検出ヘッドを導入し、従来モデルのアンカーベースの手法から移行しました。これによりボックス予測数が減少し、NMS処理が高速化されます。さらに、YOLOv8はC2fモジュール(2つの畳み込みを備えたCross-Stage Partialボトルネック)を組み込んでおり、計算コストを大幅に増加させることなく勾配フローを改善し、ネットワークがより豊かな特徴表現を学習できるようにしています。分離型ヘッド構造により、物体性、分類、回帰のタスクを分離しているため、収束が速くなり、全体的な精度が向上します。
パフォーマンスとベンチマーク#
モデルをエッジデバイスやクラウドサーバーにデプロイする際には、速度と精度のトレードオフが極めて重要です。以下の表では、さまざまなサイズの2つのモデルを直接比較しています。
| モデル | サイズ (ピクセル) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | パラメーター数 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
| 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.2 |
| YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
注: 空白のセルは、同一のテスト条件で公式に報告された指標がないことを示します。
データから分かるように、YOLOv10はパラメーター効率に優れており、より少ないパラメーター数とFLOPsで、YOLOv8の対応モデルと同等以上のmAPを達成することがよくあります。ただし、YOLOv8も非常に競争力が高く、最適化されたTensorRT統合により、最新のGPUで最小限の推論レイテンシを実現します。
本番環境を対象とする場合、ONNXやTensorRTなどの形式を利用することで、推論速度を大幅に向上させられます。YOLOv8とYOLOv10はどちらも、これらの高度に最適化されたグラフ形式へのシームレスなエクスポートをサポートしています。
エコシステム、トレーニング効率、汎用性#
モデルの選択は理論上のベンチマークだけにとどまりません。開発者エクスペリエンスと周辺エコシステムも同様に重要です。
Ultralyticsの優位性#
YOLOv8の中核的な強みの1つは、Ultralyticsエコシステムへの緊密な統合です。この環境は、直感的なPython APIと豊富なドキュメントを特徴とする「ゼロからエキスパートまで」の体験を提供します。複雑な環境構築が必要になる場合がある研究中心のリポジトリとは異なり、Ultralyticsモデルは使いやすさで知られています。
さらに、YOLOv8は本質的に汎用性に優れています。YOLOv10が物体検出に特化して最適化されているのに対し、Ultralyticsフレームワークでは、まったく同じライブラリとAPI構造の中で、物体検出、インスタンスセグメンテーション、画像分類、ポーズ推定、指向性バウンディングボックス (OBB)の各タスクをシームレスに切り替えられます。
メモリ要件とトレーニング#
Ultralytics YOLOモデルは、トレーニング効率を重視して設計されています。一般に、複雑なTransformerモデルと比較して、トレーニング時と推論時のメモリ使用量が少ないため、CUDAメモリを使い果たすことなく、コンシューマー向けハードウェアや標準的なクラウドインスタンスで最先端モデルをトレーニングできます。ハイパーパラメーター調整とデータ拡張を自動的に処理することで、迅速な収束を実現します。
ここでは、Ultralytics Python APIを使用してモデルをトレーニングおよび検証する方法がいかに簡単かを示す実用的な例を紹介します。
from ultralytics import YOLO
# Load a pretrained model (YOLOv8 recommended for general tasks)
model = YOLO("yolov8n.pt")
# Train the model on the COCO8 dataset with automatic memory management
results = model.train(data="coco8.yaml", epochs=50, imgsz=640, device=0)
# Run inference on a test image
predictions = model("https://ultralytics.com/images/zidane.jpg")
predictions[0].show()次世代モデル: YOLO26#
YOLOv8とYOLOv10は優れたマイルストーンですが、機械学習分野は絶えず進歩しています。新しいプロジェクトを開始する開発者には、2026年1月にUltralyticsからリリースされた最新のフラッグシップモデル、**YOLO26**の活用を強く推奨します。
YOLO26は、過去数年間のアーキテクチャ上の最良の進歩を、単一の高度に最適化されたフレームワークに統合しています。YOLOv10などのモデルが先駆けとなったエンドツーエンドのNMSフリーデザインを継承し、デプロイパイプラインを効率化してレイテンシの変動を低減します。さらに、YOLO26はMuSGD Optimizerを導入しています。これはLLMトレーニングの安定性に着想を得たハイブリッドオプティマイザーで、より高速で安定した収束を実現します。
YOLO26の主な改善点は次のとおりです。
- CPU推論が最大43%高速: Distribution Focal Loss (DFL)を削除し、エッジデバイス向けに大幅に最適化しています。
- ProgLoss + STAL: 小さな物体の認識を大幅に向上させる高度な損失関数です。ドローン画像やIoTセンサーでは特に重要です。
- タスク固有の強化: セグメンテーション、ポーズ推定、OBB向けの専用アーキテクチャにより、あらゆるビジョン分野でトップクラスのパフォーマンスを実現します。
最適なユースケースとデプロイ戦略#
これらのアーキテクチャから選択する際は、デプロイ環境の具体的なニーズを考慮してください。
- YOLOv10を選択する場合: パラメーター効率を少しでも高めることが重要な純粋な物体検出パイプラインに取り組んでおり、NMSフリーアーキテクチャの初期実装を試したい場合です。
- Ultralytics YOLOv8を選択する場合: 堅牢なUltralytics Platformに対応した、非常に安定した本番環境対応モデルが必要な場合です。統一された保守しやすいコードベースを使用して、複数のタスク(例: 物体を検出してからセグメンテーションする)が必要なプロジェクトに最適です。
- YOLO26(推奨)を選択する場合: 最先端の精度、ネイティブなエンドツーエンドNMSフリー効率、CPUおよびエッジハードウェアで可能な限り高速な処理の究極のバランスを求める場合です。
より広範な分野を検討している場合は、これらのモデルとYOLO11を比較したり、Intel OpenVINOなどのエッジデプロイ向けの具体的な統合を確認したりすることにも関心があるかもしれません。Ultralyticsが提供する統合ツールを活用することで、堅牢なコンピュータービジョンソリューションをこれまで以上に容易にデプロイできます。