YOLOv5 対 YOLOv9#
コンピュータービジョンとリアルタイム物体検出の分野は、ここ数年で目覚ましい進歩を遂げています。実績があり、十分に検証されたモデルと、新しい研究アーキテクチャのどちらを選ぶかは、機械学習エンジニアが直面する一般的な課題です。本ガイドでは、YOLOファミリーを代表する2つのモデル、YOLOv5とYOLOv9を包括的かつ技術的に比較します。
制約のあるエッジデバイスへのデプロイ、高精度な特徴抽出の研究、複雑な物体検出パイプラインの構築など、どのような用途であっても、これらのモデルのアーキテクチャ上の特徴、パフォーマンス指標、エコシステムの違いを理解することが重要です。
モデルの概要#
アーキテクチャを比較する前に、それぞれのモデルの起源と主な目的を理解しておくと役立ちます。
Ultralytics YOLOv5#
Glenn Jocher氏によって開発され、2020年6月26日にUltralyticsからリリースされたYOLOv5は、開発者がビジョンモデルを扱う方法にパラダイムシフトをもたらしました。PyTorchフレームワークを全面的に採用することで、YOLOv5は従来のDarknetベースモデルに必要だった複雑なコンパイル手順を、直感的でPythonを第一に考えたユーザーエクスペリエンスへと置き換えました。
- 著者: Glenn Jocher
- 組織: Ultralytics
- 日付: 2020-06-26
- GitHub: YOLOv5リポジトリ
- ドキュメント: YOLOv5 Documentation
YOLOv5は、使いやすさと、さまざまなハードウェア環境での安定したパフォーマンスで知られています。物体検出だけでなく、画像分類やインスタンスセグメンテーションにも対応しています。
YOLOv9#
台湾の中央研究院情報科学研究所に所属するChien-Yao Wang氏とHong-Yuan Mark Liao氏によって発表されたYOLOv9は、ディープニューラルネットワークにおける情報ボトルネックの問題を軽減するため、アーキテクチャ理論を重視しています。
- 著者: Chien-Yao Wang、Hong-Yuan Mark Liao
- 所属機関: 台湾 中央研究院 情報科学研究所
- 日付: 2024-02-21
- Arxiv: 2402.13616
- GitHub: YOLOv9 Repository
- ドキュメント: YOLOv9 Documentation
YOLOv9の中核は、2つの主要な理論的イノベーション、プログラム可能な勾配情報(PGI)と一般化効率的レイヤー集約ネットワーク(GELAN)に基づいています。これらの概念により、モデルはディープネットワークの各層を通じて重要な空間特徴を保持できます。
YOLOv5とYOLOv9は高性能ですが、新たにリリースされたYOLO26は、速度と精度の究極のバランスを実現します。エンドツーエンドのNMSフリーデザインと最大43%高速なCPU推論を特徴とするYOLO26は、最新のエッジコンピューティングや本番環境へのデプロイに強く推奨されます。
アーキテクチャと技術の違い#
これらのビジョンモデルを内部で支えている仕組みを理解することは、モデルデプロイ戦略を最適化するうえで不可欠です。
特徴抽出と情報保持#
YOLOv5はクロスステージ部分ネットワーク(CSPNet)バックボーンを利用し、正確な勾配フローをバックプロパゲーション中に維持しながら、計算オーバーヘッドを効果的に削減します。この設計は従来型のGPU処理向けに高度に最適化されており、大規模なTransformerベースの代替モデルと比較して、トレーニング中に必要なメモリを削減できます。
YOLOv9は、CSPNetの原則を拡張した汎用アーキテクチャであるGELANを導入しています。補助的な可逆ブランチであるPGIと組み合わせることで、YOLOv9は、正確な目的関数に必要な意味情報をディープレイヤーが失わないようにします。これにより、特に小さい物体に対して高い精度を実現できますが、複雑な補助ブランチによって、制約の厳しいエッジハードウェア向けのエクスポートパイプラインが複雑になる場合があります。
メモリ要件とトレーニング効率#
トレーニング効率に関しては、YOLOv5は非常に堅牢です。適切に維持管理されたUltralyticsエコシステムにより、YOLOv5モデルはCUDAメモリの消費量を大幅に抑えられるため、研究者はコンシューマー向けGPUでバッチサイズを最大化できます。YOLOv9は優れたパラメーター効率(モデルサイズに対して高い精度)を実現しますが、最適化されたフレームワークを使用しない場合、トレーニングプロセスはより多くのリソースを必要とする可能性があります。幸い、YOLOv9をUltralytics APIに統合することで、リソース管理を効率化したYOLOv5に近い水準を実現できます。
パフォーマンスとメトリクス#
これらのアーキテクチャを客観的に評価するため、COCOなどの標準データセットでパフォーマンスを比較します。以下では、mAP(平均適合率)、推論速度、パラメーター数などの指標を詳しく説明します。
| モデル | サイズ (ピクセル) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | パラメーター数 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| 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 |
表が示すように、YOLOv9は同等のティアでより高い実測精度を実現しており、新しいアーキテクチャの効果を反映しています。一方、YOLOv5nはTensorRTでわずか1.12msという非常に低いレイテンシを維持しており、高速なローカルエッジコンピューティングアプリケーションにおける長年の強みを示しています。
トレーニング手法と使いやすさ#
今日、コンピュータービジョンを活用する真の利点は、ツールチェーンを利用しやすいことにあります。
Ultralyticsの優位性#
YOLOv9のようなモデルの公式研究リポジトリは基盤となる一方で、複雑な依存関係の組み合わせや定型的なスクリプトを伴うことがよくあります。Ultralytics Python APIは、この複雑さを完全に抽象化します。Ultralyticsエコシステムを使用すれば、同一の統一された構文でYOLOv5とYOLOv9の両方をトレーニング、評価、エクスポートできます。
from ultralytics import YOLO
# Load a pre-trained YOLOv5 model for fast deployment
model_v5 = YOLO("yolov5s.pt")
# Or leverage a YOLOv9 model for high-fidelity accuracy
model_v9 = YOLO("yolov9c.pt")
# Train seamlessly on custom data with automatic MLflow logging
results = model_v9.train(data="coco8.yaml", epochs=50, imgsz=640)
# Export the trained model to ONNX
model_v9.export(format="onnx")この単一APIアプローチは高い汎用性を提供し、物体検出だけでなく、選択したモデルに応じて姿勢推定や方向付きバウンディングボックス(OBB)にも対応します。さらに、Comet MLやWeights & Biasesなどのツールとの堅牢な統合機能が、トレーニングループに直接組み込まれています。
理想的なユースケースと実環境でのアプリケーション#
これらのアーキテクチャのどちらを選ぶかは、ハードウェアの制約と、アプリケーション分野で求められる精度に大きく左右されます。
YOLOv5を選ぶべきケース#
YOLOv5は、安定性、少ないメモリフットプリント、非常に高いエクスポート互換性を重視するデプロイで強みを発揮する、十分に実績のあるモデルです。
- モバイルデプロイ: YOLOv5をTFLiteまたはCoreMLにエクスポートし、旧型スマートフォンでデバイス上推論を行うことは非常に容易です。
- レガシーエッジハードウェア: Raspberry Piや初期世代のNVIDIA Jetson Nanoなどのデバイスでは、YOLOv5のシンプルな畳み込みにより、スマートパーキング管理などのアプリケーションで安定したフレームレートを実現できます。
- 迅速なプロトタイピング: コミュニティチュートリアル、カスタム事前学習済み重み、広範なデータセット互換性が豊富に提供されているため、概念実証を検証する最短の方法となります。
YOLOv9を選ぶタイミング#
YOLOv9は、多少多くの計算オーバーヘッドが必要であっても、複雑な細部の捉えやすさと偽陰性の最小化が極めて重要なシナリオに適しています。
- 航空画像と衛星画像: PGIフレームワークは小さい物体の忠実度を維持することに非常に優れており、ドローンベースの農業モニタリングにおいてYOLOv9は優れた性能を発揮します。
- 医用画像診断: 高解像度スキャンで微小な異常や病変を検出する場合、GELANの正確な勾配フローが再現率の向上に必要な優位性をもたらします。
- ハイエンド小売分析: 高密度な棚で重なり合う商品を追跡する場合、YOLOv9の優れた特徴保持能力が大きな効果を発揮します。
可能性をさらに広げる#
YOLOv5とYOLOv9を比較すると、2020年から2024年にかけてアーキテクチャがどのように進化したかを明確に把握できますが、AIの分野はこれまで以上の速さで進歩しています。パフォーマンスの最前線を目指す開発者には、最新のYOLO26モデルを検討することを強くお勧めします。従来の非最大抑制をネイティブなエンドツーエンドNMSフリーデザインに置き換え、高度なMuSGDオプティマイザーを利用することで、YOLO26は研究レベルの精度と本番環境レベルの速度の差を埋めます。DFLの削除(エクスポートを簡素化し、エッジデバイスや低消費電力デバイスとの互換性を高めるため、分布フォーカルロスを削除)により、YOLO26は最大43%高速なCPU推論を実現し、エッジコンピューティングに最適です。さらに、ProgLoss + STALにより損失関数が改善され、小さい物体の認識が大きく向上します。これは、IoT、ロボティクス、航空画像において重要です。
これらのアーキテクチャを、RT-DETRや高い能力を持つYOLO11など、その他の最先端モデルと比較することにも関心があるかもしれません。統一されたUltralyticsフレームワークを利用すれば、どのモデルを選択しても、開発パイプラインを整理された効率的な状態に保ち、スケールアップに備えることができます。