YOLOv7 vs YOLOv10#
コンピュータービジョンの分野では、過去数年間に目覚ましい進歩が見られ、YOLO(見たら一度で検出)ファミリーのモデルがリアルタイム物体検出を牽引してきました。コンピュータービジョンプロジェクトに適したアーキテクチャを選択するには、利用可能な選択肢を深く理解する必要があります。この包括的な技術比較では、2つの画期的なアーキテクチャ、YOLOv7とYOLOv10の主な違いを検証します。
モデルの概要#
これら2つのモデルはいずれも人工知能の歴史における重要なマイルストーンですが、物体検出の課題を解決するためのアプローチは根本的に異なります。
YOLOv7:Bag-of-Freebiesの先駆者#
2022年7月6日に、Academia Sinica情報科学研究所の研究者であるChien-Yao Wang氏、Alexey Bochkovskiy氏、Hong-Yuan Mark Liao氏によってリリースされたYOLOv7は、ニューラルネットワークの最適化方法にパラダイムシフトをもたらしました。彼らの学術論文で詳しく説明され、公式GitHubリポジトリで公開されている当初の研究では、アーキテクチャの再パラメーター化と、トレーニング可能な「bag-of-freebies」に重点が置かれていました。
YOLOv7は、拡張効率的レイヤー集約ネットワーク(E-ELAN)を活用して、元の勾配経路を破壊することなく多様な特徴を学習するようネットワークを導きます。そのため、学術研究のベンチマークや、標準的なハイエンドGPUに大きく依存するシステムに適した堅牢な選択肢となっています。
YOLOv10:リアルタイムエンドツーエンド検出#
清華大学のAo Wang氏とチームによって開発されたYOLOv10は、2024年5月23日にリリースされました。arxivの論文と清華大学のGitHubリポジトリで詳しく説明されているように、このモデルは物体検出における長年のボトルネックである非最大抑制(NMS)を排除します。
YOLOv10は、NMSを使用しないトレーニングのために一貫性のあるデュアル割り当てを導入し、後処理パイプラインを根本的に変革しました。効率と精度を総合的に重視したモデル設計戦略を採用することで、YOLOv10は計算の冗長性を削減します。その結果、極めて低いレイテンシを必要とするエッジデバイスに特化したアーキテクチャを実現しています。
パフォーマンスとメトリクスの比較#
モデルのパフォーマンスを分析する際は、精度、速度、計算負荷のトレードオフを評価することが重要です。以下の表では、これらのモデルの異なるサイズを相互に比較しています。
| モデル | サイズ (ピクセル) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | パラメーター数 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
| 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 |
トレードオフの分析#
上記のメトリクスから、世代間に大きな差があることが分かります。YOLOv7xは53.1%という非常に高いmAPvalを達成しますが、71.3M個のパラメーターと189.9B FLOPsを必要とします。これに対してYOLOv10lは、29.5M個と半分未満のパラメーター数、120.3Bと大幅に少ないFLOPsで、それを上回る精度(53.3% mAP)を達成します。さらに、高度に最適化されたYOLOv10nは1.56msという驚異的な推論速度を実現し、リアルタイム動画分析やモバイルアプリケーションに最適です。
実世界でのユースケース#
これらのモデルのアーキテクチャ上の違いによって、最適なユースケースが決まります。
YOLOv7を使用する場合#
豊かな特徴表現により、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パイプラインは、標準的なバウンディングボックスに限定されません。YOLO11やYOLOv8など、サポートされているモデルファミリー全体で、ポーズ推定、インスタンスセグメンテーション、方向付きバウンディングボックスをシームレスにサポートします。
効率化されたトレーニング例#
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とトレーニング可能なbag-of-freebies技術の効果を研究する場合。
- 再パラメータ化研究: 計画された再パラメータ化畳み込みと、複合モデルスケーリング戦略を調査する場合。
- 既存のカスタムパイプライン: YOLOv7固有のアーキテクチャを中心に構築され、容易にリファクタリングできない高度にカスタマイズされたパイプラインを持つプロジェクト。
YOLOv10を選択する場合#
YOLOv10は次の用途に推奨されます。
- NMSフリーのリアルタイム検出: Non-Maximum Suppressionを使用しないエンドツーエンド検出のメリットを活かし、デプロイの複雑さを軽減できるアプリケーション。
- 速度と精度のバランスの取れたトレードオフ: さまざまなモデルスケールで、推論速度と検出精度の優れたバランスが求められるプロジェクト。
- レイテンシが一貫したアプリケーション: ロボティクスや自律システムなど、予測可能な推論時間が重要なデプロイシナリオ。
Ultralytics (YOLO26)を選ぶタイミング#
ほとんどの新規プロジェクトでは、Ultralytics YOLO26が性能と開発者エクスペリエンスの最適な組み合わせを提供します。
- NMSフリーのエッジデプロイ: Non-Maximum Suppressionの後処理を複雑にすることなく、一貫した低レイテンシー推論が必要なアプリケーション。
- CPUのみの環境: 専用GPUアクセラレーションを持たないデバイスで、YOLO26の最大43%高速なCPU推論が決定的な優位性となる場合。
- 小さな物体の検出: aerial drone imageryやIoTセンサー分析など、ProgLossとSTALによって微小物体の精度が大幅に向上する難しいシナリオ。
未来:YOLO26の登場#
YOLOv7とYOLOv10は目覚ましいマイルストーンですが、AIの最前線は常に進歩しています。2026年1月にリリースされたUltralytics YOLO26は、あらゆるエッジおよびクラウドデプロイシナリオにおいて、効率と精度の新たな標準となることが確実なモデルです。
現在、新しいコンピュータービジョンプロジェクトを開始する場合は、YOLO26が推奨アーキテクチャです。YOLO26は、次の画期的なイノベーションを取り入れることで、先行モデルのレガシーを基盤に構築されています。
- エンドツーエンドNMSフリーデザイン: YOLOv10から着想を得たYOLO26は、NMSの後処理をネイティブに排除し、決定論的なリアルタイムロボティクスのための超低レイテンシ推論を実現します。
- CPU推論が最大43%高速化: Distribution Focal Loss(DFL)モジュールを戦略的に削除することで、YOLO26はGPUを搭載しないエッジコンピューティングハードウェア上での実行を大幅に高速化し、IoTデバイス向けの高性能なモデルとなっています。
- MuSGDオプティマイザー: 近年の大規模言語モデルのトレーニングにおけるイノベーションから着想を得て、YOLO26はSGDとMuonを組み合わせたハイブリッド方式を採用し、トレーニング経路を安定化して、より高速な収束を実現します。
- ProgLoss + STAL: これらの高度な損失関数により、小さな物体の認識が大幅に向上し、旧世代のYOLOが抱えていた歴史的な弱点を克服します。
- 比類のない汎用性: YOLO26は、ポーズトラッキング用のResidual Log-Likelihood Estimation(RLE)や、航空画像における高精度なOBB検出用の特殊な角度損失など、タスクに特化したネイティブ最適化機能を備えています。
速度、精度、デプロイの容易さの究極のバランスを求めるエンジニアにとって、レガシーモデルからYOLO26へ移行することで、即時かつ測定可能な競争優位性が得られます。