YOLOv7 vs YOLOv10: リアルタイム物体検出の進化

コンピュータビジョンの分野は、ここ数年で著しい進歩を遂げてきました。その中で、YOLO (You Only Look Once) シリーズのモデルは、リアルタイム物体検出の先頭を走り続けています。コンピュータビジョンプロジェクトに適したアーキテクチャを選択するには、利用可能な選択肢を深く理解する必要があります。本技術比較では、2つの画期的なアーキテクチャである YOLOv7YOLOv10 の主な違いを詳しく解説します。

モデルの紹介

これらのモデルはいずれも人工知能の歴史における重要なマイルストーンですが、物体検出の課題を解決するためのアプローチは根本的に異なります。

YOLOv7:Bag-of-Freebiesのパイオニア

YOLOv7は、中央研究院情報科学研究所の研究者であるChien-Yao Wang、Alexey Bochkovskiy、Hong-Yuan Mark Liaoによって2022年7月6日に発表され、ニューラルネットワークの最適化方法にパラダイムシフトをもたらしました。彼らの学術論文および公式GitHubリポジトリで詳しく解説されている研究は、アーキテクチャの再パラメータ化と学習可能な「bag-of-freebies」に重点を置いています。

YOLOv7は、拡張効率的レイヤー集約ネットワーク(E-ELAN)を活用し、元の勾配パスを破壊することなく多様な特徴量を学習できるようにネットワークをガイドします。これにより、学術研究のベンチマークや、標準的なハイエンドGPUに大きく依存するシステムにとって堅牢な選択肢となっています。

YOLOv7の詳細はこちら

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

YOLOv10は、清華大学のAo Wang氏とそのチームによって開発され、2024年5月23日に発表されました。そのarXivの論文および清華大学のGitHubリポジトリで詳述されているように、このモデルは物体検出における長年のボトルネックであったNMS(Non-Maximum Suppression)を排除しています。

YOLOv10は、NMSフリーな学習のための整合性のあるデュアルアサインメントを導入し、後処理パイプラインを根本から変革しました。効率性と精度を両立させる総合的なモデル設計戦略を採用することで、計算上の冗長性を低減しています。その結果、極めて低いレイテンシを必要とするエッジデバイス向けに最適化されたアーキテクチャが実現しました。

YOLOv10の詳細はこちら

NMSフリーアーキテクチャ

YOLOv10ではNon-Maximum Suppression (NMS)を排除したことで、モデル全体を単一の計算グラフとしてエクスポートできるようになりました。これにより、TensorRTOpenVINOといったランタイムを使用したデプロイメントが大幅に簡素化されます。

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

モデルのパフォーマンスを分析する際は、精度、速度、計算負荷のトレードオフを評価することが重要です。以下の表は、各モデルのサイズごとの比較を示しています。

モデルサイズ
(ピクセル)
mAPval
50-95
速度
CPU ONNX
(ms)
速度
T4 TensorRT10
(ms)
パラメータ
(M)
FLOPs
(B)
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9
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

トレードオフの分析

上記の指標は、世代間の明確な違いを浮き彫りにしています。YOLOv7xは53.1%という非常に優れたmAPvalを実現していますが、71.3Mのパラメータと189.9BのFLOPsを必要とします。対照的に、YOLOv10lはその精度(53.3% mAP)を上回りながら、パラメータ数は半分以下(29.5M)、FLOPsも大幅に削減(120.3B)されています。さらに、高度に最適化されたYOLOv10nは1.56msという驚異的な推論速度を提供し、リアルタイム動画解析やモバイルアプリケーションに最適です。

実際のユースケース

これらのモデル間のアーキテクチャ上の違いが、最適なユースケースを決定づけます。

YOLOv7を利用すべき場面

豊富な特徴表現能力を持つYOLOv7は、非常に複雑な環境で優れた性能を発揮します。高密度な都市部での交通流監視、衛星画像の解析、あるいは製造自動化における欠陥検出などは、堅牢な構造的再パラメータ化の利点を享受できるユースケースです。また、特定のPyTorch 1.12パイプラインに深く統合されたレガシー環境でも高く評価されています。

YOLOv10を利用すべき場面

NMSフリーかつ軽量な設計のYOLOv10は、制限のある環境で真価を発揮します。NVIDIA Jetson NanoやRaspberry Piのようなエッジコンピューティングデバイスに強く推奨されます。低レイテンシのパフォーマンスは、スポーツ解析、自律型ドローンのナビゲーション、コンベアベルト上の高速なロボット仕分けといった動きの速いアプリケーションに最適です。

Ultralyticsエコシステムの利点

どちらのモデルも学術的なルーツは強力ですが、その真のポテンシャルは統合されたUltralytics Platform内で使用された時に最大限に引き出されます。ゼロからコンピュータビジョンモデルを開発することは非常に困難ですが、Ultralyticsのエコシステムは機械学習エンジニアに比類のない体験を提供します。

  • 使いやすさ: Ultralytics Python APIは統一されたインターフェースを提供します。わずか数行のコードでモデルのトレーニング、検証、エクスポートが可能であり、一般的な学術リポジトリにありがちな複雑な依存関係の悩みを回避できます。
  • 十分に整備されたエコシステム: Ultralyticsは、基盤となるコードが積極的に開発されていることを保証します。ユーザーは、ログ記録のためのWeights & Biasesや、迅速なWebデモのためのHugging Faceといった人気のあるMLツールとのシームレスな統合のメリットを享受できます。
  • メモリ要件: Transformerベースの物体検出器は、トレーニング中に大量のCUDAメモリを消費することがよくあります。対照的に、Ultralytics YOLOモデルは必要なメモリがはるかに少ないため、消費者向けのハードウェアでもより大きなバッチサイズを使用できます。
  • 汎用性: Ultralyticsパイプラインは標準的なバウンディングボックスに限定されません。姿勢推定インスタンスセグメンテーション、およびYOLO11YOLOv8などのサポートされているモデルファミリー全体での回転バウンディングボックス(OBB)をシームレスにサポートします。

効率的なトレーニング例

Ultralyticsでトレーニングパイプラインを実行するのは非常に簡単です。YOLOv7の歴史的な堅牢性を活用する場合でも、YOLOv10のNMSフリーの速度を活用する場合でも、構文は一貫しています。

from ultralytics import YOLO

# Load the preferred model (e.g., YOLOv10 Nano)
model = YOLO("yolov10n.pt")

# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run an inference prediction on a sample image
predictions = model.predict("https://ultralytics.com/images/bus.jpg")

# Export to an edge-friendly format like ONNX
model.export(format="onnx")

ユースケースと推奨事項

YOLOv7とYOLOv10のどちらを選択するかは、特定のプロジェクト要件、デプロイメントの制約、およびエコシステムの優先順位に依存します。

YOLOv7を選択すべき場面

YOLOv7は以下のようなケースに強力な選択肢です:

  • 学術的なベンチマーク: 2022年当時の最先端結果を再現したり、E-ELANおよびtrainable bag-of-freebies技術の効果を研究する場合。
  • 再パラメータ化の研究: 計画された再パラメータ化畳み込みや、複合モデルのスケーリング戦略を調査する場合。
  • 既存のカスタムパイプライン: YOLOv7固有のアーキテクチャを中心に構築されており、容易にリファクタリングできない高度にカスタマイズされたパイプラインを持つプロジェクト。

YOLOv10を選ぶべき場合

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

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

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

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

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

未来:YOLO26の紹介

YOLOv7とYOLOv10は印象的なマイルストーンですが、AIの最前線は常に進歩しています。2026年1月にリリースされた Ultralytics YOLO26 は、すべてのエッジおよびクラウドデプロイメントシナリオにおける効率性と精度の新たな決定版となる標準モデルです。

今日、新しいコンピュータビジョンプロジェクトを開始するのであれば、YOLO26が推奨されるアーキテクチャです。これは前モデルのレガシーを基盤とし、いくつかの画期的なイノベーションを組み込んでいます:

  • エンドツーエンドのNMSフリー設計: YOLOv10から着想を得たYOLO26は、NMS後処理をネイティブで排除し、決定論的なリアルタイムロボティクス向けに超低レイテンシの推論を実現します。
  • 最大43%高速なCPU推論: Distribution Focal Loss (DFL)モジュールを戦略的に削除することで、YOLO26は非GPUのエッジコンピューティングハードウェア上での実行速度を飛躍的に向上させ、IoTデバイスにとって強力なエンジンとなります。
  • MuSGDオプティマイザー: 最近の大規模言語モデルのトレーニングにおける革新から着想を得たYOLO26は、SGDとMuonのハイブリッドを組み込み、トレーニングの安定化と高速な収束を保証します。
  • ProgLoss + STAL: これらの高度な損失関数は、従来のYOLO世代の弱点であった小さな物体の認識において大幅な改善をもたらします。
  • 比類のない汎用性: YOLO26は、姿勢追跡のためのResidual Log-Likelihood Estimation (RLE)や、航空画像での正確なOBB検出のための専門的な角度損失など、タスク特有のネイティブな最適化機能を備えています。

速度、精度、デプロイメントの簡素化の究極のバランスを求めるエンジニアにとって、レガシーモデルからYOLO26へ移行することは、即効性があり測定可能な競争優位性をもたらします。

コメント