YOLOv9 YOLO10:物体検出技術の進化を技術的に深く掘り下げる
リアルタイム物体検出の分野は急速に進化しており、2024年には二つの重要なアーキテクチャがリリースされた: YOLOv9 と YOLOv10。両モデルとも精度と効率性の限界を押し広げることを目指しているが、これを実現するアーキテクチャの哲学は根本的に異なる。YOLOv9 ネットワークの深層における情報保持の最大化にYOLOv9 、YOLOv10 非最大抑制(NMS)の必要性を排除することでデプロイメントパイプラインにYOLOv10 。
このガイドは、研究者やエンジニアが特定のコンピュータビジョンアプリケーションに適したツールを選択できるよう、包括的な技術比較を提供します。
YOLOv9: プログラマブル勾配情報
2024年2月にYOLOv7の開発チームである王建耀(Chien-Yao Wang)と廖宏源(Hong-Yuan Mark Liao)によって発表YOLOv9 、深層ニューラルネットワークに内在する「情報ボトルネック」YOLOv9 。データが層を順に通過する過程で入力データが失われることが多く、特定の特徴を学習するモデルの能力が低下する。
この課題に対処するため、YOLOv9 PGI(プログラマブル勾配情報) とGELAN(汎用効率的層集約ネットワーク)アーキテクチャYOLOv9 。PGIは補助的な監督ブランチを提供し、トレーニング中に主ブランチが重要な情報を保持することを保証する。一方、GELANはパラメータ利用を最適化し、より優れた勾配経路計画を実現する。
- 著者: Chien-Yao Wang、Hong-Yuan Mark Liao
- 組織: Institute of Information Science, Academia Sinica, Taiwan
- 日付: 2024-02-21
- Arxiv:YOLOv9: Programmable Gradient Informationを使用して学びたいものを学習
- GitHub:WongKinYiu/yolov9
YOLOv10: リアルタイムエンドツーエンドdetect
清華大学の研究者により2024年5月に間もなく発表されたYOLOv10 、YOLO における重要な転換点をYOLOv10 。 従来、YOLO 重複する境界ボックスをフィルタリングNMS に依存していた。YOLOv10 、トレーニング中に一貫した二重割り当て戦略YOLOv10 。豊富な監督学習には1対多割り当てを、推論には1対1割り当てを用いることで、モデルが本質的にNMSとなることを可能にした。
このアーキテクチャの変更により推論レイテンシが低減され、デプロイメントパイプラインが簡素化されるため、CPU 貴重なエッジコンピューティングにおいて特に魅力的である。
- 著者: Ao Wang, Hui Chen, Lihao Liu, et al.
- 組織: 清華大学
- 日付: 2024-05-23
- Arxiv:YOLOv10: リアルタイムエンド・トゥ・エンドオブジェクトdetect
- GitHub:THU-MIG/yolov10
パフォーマンス比較
これら2つのアーキテクチャを比較する際には、純粋な検出能力(mAP)と推論効率(レイテンシとFLOPs)のトレードオフを検討する。
メトリック分析
以下の表はCOCO における性能指標を示しています。YOLOv9eは複雑なタスクにおいて優れた精度を発揮しますが、NMS 除去されたため、YOLOv10 一般的に低いレイテンシを提供します。
| モデル | サイズ (ピクセル) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | params (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
| 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 |
主なポイント
- レイテンシー対精度:YOLOv10nはYOLOv9t(38.3%)よりも高いmAP 39.5%)を達成しつつ、GPU 上で大幅に高速に動作する(1.56ms対2.3ms)。これによりv10アーキテクチャは小規模展開において極めて効率的である。
- 最高水準の精度:精度が1パーセント単位で重要となる研究シナリオにおいて、YOLOv9eはプログラマブル勾配情報を活用し、他のモデルが見逃す可能性のある微妙な特徴を抽出することで、55.mAPを達成する強力な性能を維持している。
- 効率性: YOLOv10 はFLOPs効率にYOLOv10 。YOLOv10sは21.6G FLOPsしか必要とせず、YOLOv9sの26.4Gと比較して、バッテリー駆動デバイスでの消費電力削減につながります。
ハードウェアに関する考慮事項
CPU(Intel など)や専用エッジハードウェア(Raspberry Pi、Jetson)に展開する場合、NMS通常、後処理ステップの非決定的な処理時間を排除するため、よりスムーズなパイプラインを実現します。
トレーニングとエコシステム
Ultralytics を使用する最大の利点の一つは、統一されたエコシステムです。YOLOv9 YOLOv10 YOLOv9 、トレーニング、検証、エクスポートのワークフローは全く同じです。この一貫性により、開発者の学習曲線が大幅に短縮されます。
Ultralyticsの利点
- 使いやすさ: Python 、単一の文字列を変更するだけでアーキテクチャを切り替えられます(例:
yolov9c.pt宛先yolov10m.pt)。 - 整備されたエコシステム: Ultralyticsは頻繁なアップデートを提供し、最新のPyTorchバージョンとCUDAドライバーとの互換性を確保しています。
- メモリ要件:メモリ肥大化に悩まされる多くのトランスフォーマーベースモデルとは異なり、Ultralytics GPU 効率を最適化しています。これにより、コンシューマー向けハードウェアでもより大きなバッチサイズが可能となります。
トレーニング例
カスタムデータセットでのモデルトレーニングは簡単です。フレームワークがデータ拡張、キャッシュ、メトリクス記録を自動的に処理します。
from ultralytics import YOLO
# Load a model (Swap "yolov10n.pt" for "yolov9c.pt" to switch architectures)
model = YOLO("yolov10n.pt")
# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Validate the model's performance
model.val()
# Export to ONNX for deployment
model.export(format="onnx")
理想的なユースケース
YOLOv9を選択すべき時
YOLOv9 、高い特徴忠実度が求められるシナリオにおいて最適な選択肢YOLOv9 。そのGELANアーキテクチャは情報損失に対して頑健であり、以下に理想的です:
- 医療画像診断:特徴の欠落が致命的となる小さな腫瘍や異常の検出。医療分野におけるAIの活用ガイドをご覧ください。
- 小物体検出:航空写真や遠距離監視など、物体がごく少数の画素しか占めない状況。
- 研究のベースライン:2024年初頭の最先端アーキテクチャとの比較評価時。
YOLOv10を選択すべき時
YOLOv10 速度と導入の簡便性を重視してYOLOv10 。NMS の削除により、以下の用途において有力な選択肢NMS :
- エッジコンピューティング: ラズベリーパイや携帯電話などのデバイス上で動作し、後処理によるCPU ボトルネックを引き起こす。
- リアルタイムロボティクス: 自律航行など、一貫した低遅延のフィードバックループを必要とするアプリケーション。
- 複雑なパイプライン:検出器の出力が追跡アルゴリズムに供給されるシステム。NMS出力は下流タスクのロジックを簡素化する。
今後の展望: YOLO26の力
YOLOv9 YOLOv10 優れたモデルYOLOv10 、AI分野は急速に進化しています。2026年に開始する新規プロジェクトでは、YOLO26の評価を強く推奨します。
2026年1月にリリースされたYOLO26は、YOLOv10 NMS成果を基盤YOLOv10 重要なアーキテクチャ上の改良を導入している:
- エンドツーエンドNMS:v10と同様にYOLO26はネイティブにエンドツーエンドですが、検出ヘッドのさらなる最適化により精度がさらに向上しています。
- MuSGDオプティマイザー: SGD (LLMトレーニングに着想を得た)のハイブリッドであるこのオプティマイザーは、大規模言語モデル(LLM)トレーニングの安定性をコンピュータビジョンにもたらし、より速い収束を保証します。
- DFL除去:ディストリビューション焦点損失を除去することで、YOLO26はエクスポートグラフを簡素化し、NPU制約のあるデバイスへの展開を大幅に容易にします。
- ProgLoss + STAL:小物体認識の改善に特化して調整された新たな損失関数。リアルタイム検出器に共通する弱点を解決する。
- 性能:エッジコンピューティング向けに最適化されたYOLO26は、前世代と比較して最大43%高速CPU を実現します。
さらに、YOLO26は単なる検出器ではなく、姿勢推定(RLEを使用)、インスタンスセグメンテーション、およびオリエンテッドバウンディングボックス(OBB)タスク向けの特化改良を含んでおり、Ultralytics の中で最も汎用性の高いツールとなっています。
結論
YOLOv9 YOLOv10 YOLOv9 いずれもコンピュータビジョンにおける大きな飛躍をYOLOv10 。YOLOv9 、情報を失うことなく深層ネットワークをより効率化できることをYOLOv9 、YOLOv10 数十年にわたるNMS への依存を打破NMS ことをYOLOv10 。
今日の開発者にとって、選択は主にデプロイメントの制約条件に依存します。困難なデータにおいて絶対的な最高精度を必要とする場合、YOLOv9eが有力な候補です。レイテンシーとデプロイメントの簡便性が最優先される場合、YOLOv10 。しかし、速度、精度、将来を見据えた機能の最適なバランスを求めるなら、Ultralytics 現在の最先端推奨モデルとして位置づけられています。