YOLOv9 vs YOLOv5: 詳細な比較
このページでは、YOLOv9とUltralytics YOLOv5という2つの重要な物体検出モデルの技術比較を提供します。どちらのモデルも、リアルタイム物体検出において速度と精度のバランスを取ることで知られる、影響力のあるYOLO(You Only Look Once)シリーズの一部です。この比較では、アーキテクチャの違い、パフォーマンス指標、理想的なユースケースを調査し、コンピュータビジョンプロジェクトに最適なモデルを選択できるよう支援します。
YOLOv9:斬新なアーキテクチャによる精度向上
YOLOv9は2024年2月に発表され、オブジェクト検出の最前線に重要なアーキテクチャの革新をもたらしました。高度に効果的なモデルをトレーニングするための重要な課題である、深層ニューラルネットワークにおける情報損失の問題を解決することを目指しています。
著者: Chien-Yao Wang, Hong-Yuan Mark Liao
所属: Institute of Information Science, Academia Sinica, Taiwan
日付: 2024-02-21
Arxiv: https://arxiv.org/abs/2402.13616
GitHub: https://github.com/WongKinYiu/yolov9
ドキュメント: https://docs.ultralytics.com/models/yolov9/
アーキテクチャとイノベーション
YOLOv9は、論文「YOLOv9: Learning What You Want to Learn Using Programmable Gradient Information」で詳述されている2つの画期的なコンセプトを導入しています。
- Programmable Gradient Information (PGI): この斬新なアプローチは、データが深層ネットワーク層を流れる際に発生する情報ボトルネックの問題に対処するように設計されています。PGIは、損失関数の計算に完全な入力情報が利用できるようにすることで、より正確な勾配更新と、より効果的なモデルトレーニングのために重要なデータを保持します。
- Generalized Efficient Layer Aggregation Network (GELAN): YOLOv9 は、優れたパラメータ利用率と計算効率のために最適化された新しいネットワークアーキテクチャである GELAN も備えています。CSPNet と ELAN の原則に基づいて、より少ないパラメータと計算コスト(FLOP)でより高い精度を達成する構造を作成します。
長所
- 精度の向上: YOLOv9はCOCOデータセットで新たな最先端を確立し、平均適合率(mAP)において、多くの既存のリアルタイムオブジェクト検出器を上回ります。
- 効率の向上: PGIとGELANの組み合わせにより、モデルは非常に正確であるだけでなく、計算効率も高く、パフォーマンスが重要なタスクに強力になります。
- 情報保持: PGIは、情報のボトルネックに直接対処することで、パフォーマンスの低下を招くことなく、より深く、より複雑なネットワークのトレーニングを可能にし、より堅牢なモデルにつながります。
弱点
- 学習リソース: YOLOv9のドキュメントに記載されているように、YOLOv9モデルの学習は、YOLOv5のようなより確立されたモデルと比較して、より多くのリソースを消費し、時間がかかる場合があります。
- Newer Ecosystem: 異なる研究グループによるより新しいモデルであるため、そのエコシステム、コミュニティサポート、およびサードパーティの統合は、確立されたUltralytics YOLOv5のものよりも成熟度が低いです。
- タスクの汎用性: 元のYOLOv9は主に物体検出に焦点を当てています。Ultralyticsモデルでネイティブにサポートされているインスタンスセグメンテーション、画像分類、および姿勢推定のような他のビジョンタスクに対する組み込みサポートがありません。
ユースケース
- 高度なビデオ分析や高精度な産業検査など、可能な限り最高のオブジェクト検出精度を必要とするアプリケーション。
- 交通管理AIのように、最高のパフォーマンスと計算効率のバランスを取る必要があるシナリオ。
- 斬新なアーキテクチャの探求が優先される、高度なコンピュータビジョンの研究開発。
Ultralytics YOLOv5:確立された汎用性の高い標準
2020年にリリースされたUltralytics YOLOv5は、その卓越した速度、精度、使いやすさのバランスにより、すぐに業界標準となりました。完全にPyTorchで開発され、継続的に改良されており、堅牢なエコシステムによって支えられています。
Author: Glenn Jocher
Organization: Ultralytics
Date: 2020-06-26
GitHub: https://github.com/ultralytics/yolov5
Documentation: https://docs.ultralytics.com/models/yolov5/
アーキテクチャと機能
YOLOv5 は、効果的な特徴集約のために、CSPDarknet53 バックボーンと PANet ネックを備えた実績のあるアーキテクチャを利用しています。そのアンカーベースの検出ヘッドは非常に効率的です。このモデルはさまざまなサイズ(n、s、m、l、x)で利用でき、開発者はパフォーマンスとリソースの制約の間で最適なトレードオフを選択できます。
長所
- 卓越した速度と効率性: YOLOv5は高速な推論のために高度に最適化されており、高性能GPUからリソース制約のあるエッジデバイスまで、幅広いハードウェアでのリアルタイムアプリケーションに最適です。
- 使いやすさ: YOLOv5はその効率的なユーザーエクスペリエンスで知られており、シンプルなPythonとCLIインターフェース、および広範で明確なドキュメントを提供します。
- 充実したエコシステム: YOLOv5は、活発な開発、Discord上の大規模で支援的なコミュニティ、頻繁なアップデート、およびノーコードトレーニングとデプロイメントのためのUltralytics HUBのような強力なツールを含む、包括的なUltralyticsエコシステムの恩恵を受けています。
- パフォーマンスのバランス: 推論速度と検出精度との間で優れたトレードオフを実現しており、多様な現実世界の展開シナリオに適しています。
- 多様性: 多くの特殊なモデルとは異なり、YOLOv5は、物体検出、インスタンスセグメンテーション、画像分類など、複数のタスクをすぐにサポートします。
- Training Efficiency: YOLOv5 は、効率的なトレーニングプロセス、すぐに利用できる事前学習済みウェイト、および他の多くのアーキテクチャ、特にトランスフォーマーベースのモデルと比較して、一般的に低いメモリ要件を提供します。
弱点
- ピーク精度: 当時は非常に正確でしたが、YOLOv9のような新しいモデルは、COCOのようなベンチマークでより高いmAPスコアを達成できます。
- Anchor-Based Design: 事前に定義されたアンカーボックスに依存しているため、最新のアンカーフリーアプローチと比較して、異常な形状のオブジェクトを持つデータセットではより多くの調整が必要になる場合があります。
ユースケース
- リアルタイムビデオ監視およびセキュリティシステム。
- Raspberry PiやNVIDIA Jetsonのような、リソース制約のあるエッジデバイスへのデプロイメント。
- コンピュータビジョンによる製造業の改善など、産業オートメーションおよび品質管理。
- 使いやすさと広範なサポートにより、迅速なプロトタイピングと開発が可能です。
性能とベンチマーク:YOLOv9 vs. YOLOv5
YOLOv9とYOLOv5の性能比較は、長年にわたるモデルアーキテクチャの進歩を明確に示しています。YOLOv9モデルは、YOLOv5モデルよりも一貫して高いmAPスコアを達成しており、多くの場合、より効率的なパラメータとFLOPsの使用を実現しています。例えば、YOLOv9-Cは25.3Mのパラメータで53.0%のmAPを達成し、86.7Mのパラメータで50.7%のmAPを達成するYOLOv5xを上回っています。
しかし、YOLOv5は速度に優れており、特にYOLOv5nやYOLOv5sのような小型のバリアントは、CPUとGPUの両方で非常に高速な推論時間を提供し、多くのリアルタイムエッジアプリケーションにとって無敵です。
モデル | サイズ (ピクセル) |
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 |
YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
結論: どのモデルを選ぶべきか?
YOLOv9とYOLOv5のどちらを選択するかは、プロジェクト固有のニーズに大きく依存します。
-
YOLOv9は、最大の精度が主な目標であり、トレーニングに十分な計算リソースがあるアプリケーションにとって、優れた選択肢です。その革新的なアーキテクチャは、特殊な分野における物体検出パフォーマンスの限界を押し広げるのに理想的です。
-
Ultralytics YOLOv5は、より広範なアプリケーションにとって、依然としてより実用的で汎用性の高い選択肢です。その主な利点である使いやすさ、速度、マルチタスクのサポート、そして成熟した、十分にサポートされたエコシステムにより、堅牢で現実的なソリューションを迅速かつ効率的に構築する必要がある開発者にとって、頼りになるモデルとなっています。エッジデバイスでのデプロイや、速度と精度のバランスが求められるプロジェクトでは、YOLOv5が最適な選択となることが多いでしょう。
中間的なものや、さらに高度な機能を求めている方のために、Ultralytics は完全なモデルスイートを提供しています。YOLOv5 の多くの使いやすさの利点と、アンカーフリーアーキテクチャ、さらに優れた汎用性を兼ね備えたYOLOv8、または Ultralytics エコシステム内で最先端の性能を発揮する最新のYOLO11を検討してください。詳細な比較は、モデル比較ページでご覧いただけます。