YOLOv8 YOLOv9:物体検出の技術比較
最適なコンピュータビジョンモデルの選択は、AIプロジェクトの成功を左右する極めて重要な決定であり、精度、推論速度、計算効率の要件をバランスよく満たす必要があります。この包括的なガイドでは Ultralytics YOLOv8多用途で量産可能なモデルである YOLOv9斬新な勾配による検出精度の最大化に焦点を当てたアーキテクチャであるYOLOv9と比較します。それぞれのアーキテクチャの違い、パフォーマンス指標、理想的な導入シナリオを分析し、十分な情報に基づいた選択を支援します。
Ultralytics YOLOv8:汎用性と使いやすさの基準
Ultralytics社から発売、 YOLOv8は、単なるモデルとしてではなく、実用的なAIのための完全なフレームワークとして設計され、YOLO シリーズの大きな進化を表しています。YOLOv8は、シームレスなユーザーエクスペリエンス、ハードウェアを問わないロバストなパフォーマンス、そして単純な検出を超えた幅広いビジョンタスクのサポートを最優先している。
- 著者: Glenn Jocher, Ayush Chaurasia, Jing Qiu
- 組織Ultralytics
- Date: 2023-01-10
- GitHub:https://github.com/ultralytics/ultralytics
- ドキュメントhttps://docs.ultralytics.com/models/yolov8/
建築とエコシステム
YOLOv8 、アンカーフリーの検出ヘッドとC2f(Cross-Stage Partial with 2 convolutions)モジュールを導入し、軽量な実行を維持しながら機能統合を向上させている。研究中心のモデルとは異なり、YOLOv8 デプロイメントを念頭に構築されている。画像分類、インスタンス分割、ポーズ推定、方向バウンディングボックス(OBB)検出をネイティブにサポートしています。
YOLOv8 8の真のパワーはUltralytics エコシステムにある。開発者は統一されたPython APIとCLIにより、トレーニング、検証、デプロイが標準化されます。この "バッテリーを含む "アプローチは、コンピュータビジョンアプリケーションの市場投入までの時間を劇的に短縮します。
長所
- 比類ない汎用性:検出、セグメンテーション、分類、姿勢推定を1つのライブラリで処理。
- デプロイメント対応:のネイティブエクスポートサポート ONNX, OpenVINO, TensorRTおよびCoreML 、エッジデバイスやクラウドサーバーへの統合を簡素化します。
- メモリ効率:トランスフォーマーベースのアーキテクチャと比較して、トレーニング中のCUDA メモリ使用量が少なくなるように最適化されているため、標準的なコンシューマー向けGPUで利用可能。
- スピードと精度のバランス卓越したリアルタイム推論速度を実現し、CPU エッジハードウェアで競合他社を凌駕することもしばしば。
- 積極的なサポート:大規模なオープンソースコミュニティとUltralytics頻繁なアップデートに支えられ、最新のライブラリとハードウェアとの互換性を保証します。
YOLOv9:高精度を実現する建築イノベーション
YOLOv9 、深層学習における「情報ボトルネック」問題への対処に焦点を当ててリリースされた。主に物体検出精度の上限をターゲットに、深層を通過する際にデータ情報を保持することを目的とした理論的概念を導入している。
- 著者: Chien-Yao Wang、Hong-Yuan Mark Liao
- 組織台湾中央研究院情報科学研究所
- Date: 2024-02-21
- Arxiv:https://arxiv.org/abs/2402.13616
- GitHub:https://github.com/WongKinYiu/yolov9
- ドキュメントhttps://docs.ultralytics.com/models/yolov9/
コア・イノベーション
YOLOv9 アーキテクチャは、2つの主要コンポーネントに依存している:プログラム可能な勾配情報(PGI)と一般化された効率的なレイヤー集約ネットワーク(GELAN)である。PGIは、ディープネットワークのフィードフォワード過程における重要な入力情報の損失を防ぎ、更新のために信頼性の高い勾配が生成されるようにする。GELANはパラメータ効率を最適化するように設計されており、計算量を抑えながら高精度を達成することができる。
長所
- 高精度:最大のバリエーションであるYOLOv9、 COCO データセット上でmAP 印象的なベンチマークを設定し、精度が最も重要なシナリオで優れている。
- パラメータ効率:GELANのおかげで、中規模のYOLOv9 モデルは、いくつかの古いアーキテクチャよりも少ないパラメータで競争力のある精度を達成している。
- 理論的進歩:ディープネットワークのトレーニングにおける情報保存に関する基本的な問題に取り組む。
弱点
- 汎用性が低い:主に物体検出に特化している。能力は高いが、Ultralytics コアラインナップに見られるセグメンテーション、ポーズ、分類のネイティブで合理的なサポートがない。
- 複雑なトレーニング:PGIに補助分岐を導入することで、合理化されたYOLOv8 パイプラインと比較して、トレーニングプロセスがよりリソース集約的になり、チューニングが複雑になる可能性がある。
- 推論速度:効率的ではあるが、YOLOv8使用されている高度に最適化されたブロックと比較すると、アーキテクチャが複雑なため、特定のハードウェアでは推論時間が遅くなる可能性がある。
性能直接対決
YOLOv8 YOLOv9比較する場合、多くの場合、その選択は、デプロイ環境の特定の制約に帰着する。YOLOv8 推論スピードとデプロイの柔軟性で優位に立ち、YOLOv9 検出メトリクスの上限を押し上げる。
| モデル | サイズ (ピクセル) | mAP値 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | params (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| 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 |
このデータは明確な違いを浮き彫りにしている:YOLOv8 、特にGPU TensorRT)とCPU ONNX)において優れた速度を提供しており、これはエッジAIアプリケーションにとって非常に重要である。例えば、YOLOv8n 、T4 GPU上でYOLOv9tよりも大幅に高速です(1.47ms対2.3ms)。逆に、YOLOv9eは最高のmAP(55.6%)を達成しており、待ち時間が微細な検出よりも重要でないサーバーサイドの処理に適しています。
ご存知でしたか?
Ultralytics YOLOv8 、以下をネイティブにサポートするように設計されています。 すべて 主要なコンピュータビジョンタスクオブジェクト検出から インスタンスセグメンテーション モデルウェイトファイルを変更するだけである、 yolov8n.pt 宛先 yolov8n-seg.pt)、標準のYOLOv9 リポジトリでは利用できないレベルの柔軟性がある。
理想的なユースケース
Ultralytics YOLOv8 選ぶなら:
- 製品化可能なソリューションが必要です:広範なドキュメント、コミュニティサポート、および(MLFlowや TensorBoardのような)事前構築済みの統合は、プロトタイプから製品へのパスを合理化します。
- スピードは非常に重要です:リアルタイムのビデオ解析、自律走行ナビゲーション、モバイルアプリなどでは、YOLOv88の最適化された推論スピードが明確なアドバンテージとなる。
- 複数のビジョンタスクが必要です:検出と同時にポーズ推定やセグメンテーションを含むプロジェクトは、YOLOv88の統一されたフレームワークが最適です。
- リソースの制約があります: YOLOv8 モデルは様々なハードウェアに高度に最適化されており、Raspberry PisからNVIDIA Jetsonsまで幅広いデバイスで効率的な動作を保証します。
YOLOv9 選ぶなら
- 最大精度が唯一の指標です:学術研究や特殊な検査作業で、スピードや使いやすさよりもmAP 何分の1が重要な場合。
- あなたはアーキテクチャを研究しています:PGIとGELANのコンセプトは、ディープネットワークの勾配フローを研究する研究者にとって貴重なものです。
コードの実装
Ultralytics エコシステムの大きな利点の一つは、同じシンプルなAPIで両方のモデルをサポートしていることです。これにより、独自のカスタムデータセットで簡単にベンチマークを行うことができます。
わずか数行のコードでYOLOv8 モデルをトレーニングする方法を紹介しよう:
from ultralytics import YOLO
# Load a YOLOv8 model
model = YOLO("yolov8n.pt")
# Train the model on your data
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on an image
results = model("path/to/image.jpg")
Ultralytics YOLOv9統合しているため、モデルの文字列を次のように置き換えることができます。 yolov9c.pt しかし、YOLOv8 ネイティブモデルは、デプロイツールとの緊密な統合から恩恵を受けることが多い。
結論
大多数の開発者と商用アプリケーションにとって、Ultralytics YOLOv8依然として推奨される選択肢です。その速度と精度の優れたバランスは、成熟し、よく整備されたエコシステムと相まって、プロジェクトの将来性を保証し、保守を容易にします。単一のフレームワークで検出、セグメンテーション、ポーズ推定を処理できるため、比類のない汎用性があります。
YOLOv9 エキサイティングなアーキテクチャ理論を導入し、高いピーク精度を達成しているが、推論レイテンシが制約にならない特定の研究ニッチやシナリオに最適であることが多い。
最新のコンピューター・ビジョン技術をお探しの方は、ぜひご覧ください。 YOLO11は、YOLOv8確立された効率と性能をさらに改良している。さらに、変圧器ベースのアプローチに興味をお持ちの研究者の方は RT-DETRを検討するのもよいだろう。
モデル比較ページで、より多くの比較をご覧ください。