YOLOv10 vs YOLOv5: 包括的な技術比較

本番環境で成功するコンピュータビジョンパイプラインを展開するには、適切なニューラルネットワークアーキテクチャを選択することが不可欠です。このページでは、リアルタイム物体検出の進化において非常に影響力のある2つのモデル、YOLOv10YOLOv5の比較と詳細な技術分析を提供します。どちらのモデルもAIコミュニティに大きな影響を与えてきましたが、ディープラーニングのアーキテクチャ設計における異なる時代と哲学を代表しています。

このガイドでは、mean Average Precision (mAP)、推論レイテンシ、パラメータ効率、エコシステムのサポートに基づいてこれらのアーキテクチャを評価し、デプロイメントのニーズに最適なモデルを選択できるようにします。

モデルの概要

YOLOv10: リアルタイム・エンドツーエンド物体検出

清華大学の研究者によって開発されたYOLOv10は、後処理を不要にすることで物体検出への新しいアプローチを導入しました。

YOLOv10の決定的なブレークスルーは、そのEnd-to-End NMS-Free設計にあります。歴史的に、YOLOモデルは冗長なバウンディングボックスをフィルタリングするためにNon-Maximum Suppression (NMS)に依存していました。YOLOv10は、NMS不要のトレーニングに一貫したデュアルアサインメントを活用しており、これにより推論レイテンシの変動が劇的に減少し、デプロイメントのロジックが簡素化されます。さらに、このアーキテクチャは、計算の冗長性を減らすためにさまざまなコンポーネントを徹底的に最適化する、全体的な効率と精度を重視した設計を特徴としています。

YOLOv10の詳細はこちら

YOLOv5: 使いやすさにおける業界標準

Ultralytics PyTorchリポジトリの開始直後にリリースされたYOLOv5は、開発者がオープンソースのビジョンAIフレームワークに期待するものを再定義しました。これは現在でも、世界中で最も広くデプロイされているアーキテクチャの1つです。

YOLOv5は、その使いやすさと非常に適切に管理されたエコシステムで高く評価されています。完全にPyTorchで記述されており、トレーニング、バリデーション、およびONNXTensorRTなどのフォーマットへのエクスポートをすぐにサポートし、シームレスな「zero-to-hero」体験を提供しました。純粋な物体検出に主に焦点を当てるYOLOv10とは異なり、YOLOv5は同じ統一されたPython API内でインスタンスセグメンテーション画像分類をサポートし、優れた汎用性を発揮します。

YOLOv5の詳細はこちら

パフォーマンスとメトリクスの比較

速度と精度の関係を視覚化することは、特定の速度制約に対して最高の精度を提供するモデルを特定するために不可欠です。これらのパフォーマンスメトリクスを理解することは、特定のハードウェア制約に適合するモデルを選択するための基本です。

モデルサイズ
(ピクセル)
mAPval
50-95
速度
CPU ONNX
(ms)
速度
T4 TensorRT10
(ms)
パラメータ
(M)
FLOPs
(B)
YOLOv10n64039.5-1.562.36.7
YOLOv10s64046.7-2.667.221.6
YOLOv10m64051.3-5.4815.459.1
YOLOv10b64052.7-6.5424.492.0
YOLOv10l64053.3-8.3329.5120.3
YOLOv10x64054.4-12.256.9160.4
YOLOv5n64028.073.61.122.67.7
YOLOv5s64037.4120.71.929.124.0
YOLOv5m64045.4233.94.0325.164.2
YOLOv5l64049.0408.46.6153.2135.0
YOLOv5x64050.7763.211.8997.2246.4

技術分析

  1. 精度 (mAP): YOLOv10は、精度において明確な世代的な利点を示しています。例えば、YOLOv10-Xモデルは54.4%のmAPvalを達成し、YOLOv5x (50.7% mAP) を上回ります。この飛躍の主な要因は、NMS不要のトレーニング戦略と2024年に導入されたアーキテクチャの改良にあります。
  2. 推論レイテンシ: YOLOv5モデルは、生のT4 TensorRTベンチマークでは非常に高速(例: YOLOv5nで1.12ms)ですが、YOLOv10は後処理のNMSステップを完全になくしています。エンドツーエンドの実践的なデプロイメントにおいて、YOLOv10のNMSフリー設計は、より一貫性があり決定論的なレイテンシを提供します。これは、自律走行車やロボット工学のようなリアルタイムアプリケーションにおいて非常に重要です。
  3. パラメータ効率: YOLOv10モデルは、非常に競争力のあるパフォーマンスバランスを維持しています。YOLOv10-Sはわずか7.2Mのパラメータで46.7% mAPを達成する一方、YOLOv5sは9.1Mのパラメータで37.4% mAPを達成します。
デプロイメントのヒント

When deploying to edge AI devices like the NVIDIA Jetson, models without NMS logic (like YOLOv10 and YOLO26) often compile more cleanly to TensorRT, avoiding fallback operations to the CPU.

ユースケースと推奨事項

YOLOv10とYOLOv5の選択は、特定のプロジェクト要件、デプロイメントの制約、およびエコシステムの好みによって異なります。

YOLOv10を選ぶべき場合

YOLOv10は以下の用途に強力な選択肢です:

  • NMSフリーのリアルタイム検出: Non-Maximum Suppressionなしでエンドツーエンドの検出を行い、デプロイの複雑さを軽減できるアプリケーション。
  • バランスの取れた速度と精度のトレードオフ: さまざまなモデルスケール全体で、推論速度と検出精度の強力なバランスが求められるプロジェクト。
  • Consistent-Latency Applications: Deployment scenarios where predictable inference times are critical, such as robotics or autonomous systems.

YOLOv5を選択すべき場合

YOLOv5は以下の場合に推奨されます:

  • 実績のある本番システム: YOLOv5の安定性、広範なドキュメント、および膨大なコミュニティサポートという長い実績が重視される既存のデプロイメント。
  • リソース制約のあるトレーニング: YOLOv5の効率的なトレーニングパイプラインと低いメモリ要件が有利となる、GPUリソースが限られた環境。
  • 広範なエクスポートフォーマットのサポート: ONNXTensorRTCoreML、およびTFLiteを含む多くのフォーマット全体でのデプロイメントが必要なプロジェクト。

Ultralytics (YOLO26) を選択すべき場合

ほとんどの新規プロジェクトにおいて、Ultralytics YOLO26はパフォーマンスと開発者体験の最高の組み合わせを提供します:

  • NMSフリーのエッジデプロイ: Non-Maximum Suppressionの後処理の複雑さを伴わずに、一貫した低レイテンシの推論が求められるアプリケーション。
  • CPUのみの環境: 専用のGPUアクセラレーションがないデバイスにおいて、YOLO26の最大43%高速なCPU推論が決定的な利点となります。
  • 小物体の検出: 航空ドローンの映像 やIoTセンサーの分析など、ProgLossとSTALが小物体の精度を大幅に高めることができる困難なシナリオ。

Ultralyticsの利点

YOLOv10は優れた検出機能を提供しますが、学術的なリポジトリに依存することは、本番パイプラインを複雑にすることがあります。公式のUltralytics Pythonパッケージを使用することで、YOLOv5とYOLOv10の両方をサポートし、さらに高度な機能を備えた統合されたエコシステムにアクセスできます。

  • トレーニング効率: Ultralytics YOLOアーキテクチャは、トレーニング中のメモリ要件が低くなるよう高度に最適化されています。膨大なCUDAメモリを必要とする重いTransformerモデル(RT-DETRなど)とは異なり、標準的なコンシューマー向けGPUでYOLOv5やYOLOv10を快適にトレーニングできます。
  • エコシステム統合: Ultralytics Platformとの統合により、開発者はデータセットを視覚的に管理し、Weights & Biasesを使用して実験を追跡し、自動的にハイパーパラメータを調整することができます。

コード例: シームレスなトレーニング

Ultralyticsライブラリを使用すると、これらのアーキテクチャの切り替えはモデル文字列を変更するのと同じくらい簡単です。トレーニングパイプラインは、データ拡張、スケーリング、およびオプティマイザの構成を自動的に処理します。

from ultralytics import YOLO

# To use YOLOv5:
# model = YOLO("yolov5s.pt")

# To use YOLOv10:
model = YOLO("yolov10s.pt")

# Train the model on a custom dataset
results = model.train(
    data="coco8.yaml",
    epochs=100,
    imgsz=640,
    batch=16,
    device=0,  # Use GPU 0
)

# Export the trained model to ONNX format
path = model.export(format="onnx")

次世代: Ultralytics YOLO26

今日、新しい機械学習プロジェクトを開始する場合は、最新の**Ultralytics YOLO26**を評価することを強くお勧めします。2026年1月にリリースされたこのモデルは、過去5年間の最高のイノベーションを組み合わせた、真の最先端技術です。

YOLO26は、YOLOv10によって先駆的に導入されたEnd-to-End NMS-Free設計をネイティブに組み込んでおり、迅速かつ決定論的なデプロイメントを保証します。さらに、YOLO26はいくつかの重要なブレークスルーを導入しています:

  • 最大43%高速なCPU推論: Distribution Focal Loss (DFL) モジュールを削除することで、YOLO26は標準的なCPUで大幅な高速化を達成し、モバイルデプロイメントや低電力IoTセンサーにとって最高の選択肢となっています。
  • MuSGDオプティマイザ: Moonshot AIのKimi K2のような大規模言語モデル(LLM)のトレーニング技術に触発されたYOLO26は、SGDとMuonのハイブリッドを利用しています。これにより、YOLOv10で使用されているAdamWオプティマイザと比較して、非常に安定したトレーニングの実行と大幅に高速化された収束が保証されます。
  • ProgLoss + STAL: これらの高度な損失関数は、ドローン画像や空中セキュリティアプリケーションにおいて重要となる、小さな物体の認識において顕著な改善をもたらします。
  • タスク固有の習熟度: YOLOv10は厳密にバウンディングボックス検出器ですが、YOLO26は、ポーズ推定のためのResidual Log-Likelihood Estimation (RLE) や、回転バウンディングボックス (OBB) のための特殊な角度損失を含む、すべてのタスクに対して専用のアーキテクチャの改善を提供します。
さらに詳しく

物体検出のより広範な状況を探索している場合は、これらのアーキテクチャを他のフレームワークと比較することにも興味があるかもしれません。より包括的なベンチマークについては、YOLO11 vs EfficientDetRT-DETR vs YOLOv8に関する詳細な解説をご覧ください。

YOLOv5の堅牢なレガシー、YOLOv10のNMSフリーな革新、あるいはYOLO26の比類のない最先端のパフォーマンスのいずれに依存する場合でも、Ultralyticsエコシステムは、ビジョンAIアプリケーションを迅速かつ効率的に実現するために必要なツールを提供します。

コメント