YOLOv9 と YOLOv7 の比較#
リアルタイムobject detectionの進化は、計算効率と高精度のバランスをとるための継続的な探求によって推進されてきました。この道のりにおける2つの画期的なアーキテクチャがYOLOv9とYOLOv7であり、どちらも台湾の中央研究院信息科学研究所の研究者によって開発されました。YOLOv7が革新的なトレーニング可能なbag-of-freebiesを導入した一方で、より新しいYOLOv9はディープラーニングの情報ボトルネックに直接取り組みます。
この包括的な技術的比較では、両モデルのアーキテクチャの違い、performance metrics、および理想的なデプロイメントシナリオを検証し、MLエンジニアや研究者がコンピュータービジョンパイプラインに適したツールを選択できるように支援します。
パフォーマンスと指標の比較#
これらのモデルを比較する際、生のパフォーマンスと効率は重要な要素です。以下の表では、標準的な COCO データセットベンチマークにおける平均適合率(mAP)と計算要件を詳細に示しています。
| モデル | サイズ (ピクセル) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | パラメータ (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 |
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
YOLOv9cが、より少ないパラメータ(25.3M対71.3M)とFLOPsを利用しながら、YOLOv7x(53.1 mAP)と同等の精度(53.0 mAP)をどのように達成しているかに注目してください。これは、最新アーキテクチャにおけるPerformance Balanceの改善を示しています。
YOLOv9: 情報ボトルネックの解決#
2024年初頭に発表された YOLOv9 は、ディープニューラルネットワークがレイヤー全体でデータを保持する方法を根本的に変えました。
- 著者: Chien-Yao Wang および Hong-Yuan Mark Liao
- 組織: Institute of Information Science, Academia Sinica
- 日付: 2024年2月21日
- リソース: Arxiv Paper | GitHub Repository
アーキテクチャの革新#
YOLOv9 は、Generalized Efficient Layer Aggregation Network (GELAN) と Programmable Gradient Information (PGI) を導入しています。GELAN は CSPNet と ELAN の長所を組み合わせ、パラメーター効率と計算コストを最適化し、より少ないパラメーター数で高い精度を確保します。PGI は、ディープネットワークにおけるデータ損失を防ぐために設計された補助的な教師ありフレームワークであり、トレーニングプロセス中に重みを更新するための信頼性の高い勾配を生成します。
強みと制限#
YOLOv9の主な強みは、膨大な計算オーバーヘッドなしに微妙な特徴を抽出できる能力であり、medical image analysisのように高い特徴量忠実度が求められるタスクにおいて非常に優れた性能を発揮します。ただし、トレーニング中の複雑なPGI構造により、より統一されたフレームワークと比較して、初心者にとってカスタムのアーキテクチャ変更がより困難になる場合があります。
YOLOv7: Bag-of-Freebies の先駆者#
2022年にリリースされたYOLOv7は、コンシューマー向けハードウェアで可能なことの新しいベンチマークを確立し、real-time inferenceの速度を大幅に向上させる構造的革新を導入しました。
- 著者: Chien-Yao Wang, Alexey Bochkovskiy, Hong-Yuan Mark Liao
- 組織: Institute of Information Science, Academia Sinica
- 日付: 2022年7月6日
- リソース: Arxiv Paper | GitHub Repository
アーキテクチャの革新#
YOLOv7 の核心的な貢献は、Extended Efficient Layer Aggregation Network (E-ELAN) です。このアーキテクチャにより、モデルはより多様な特徴を継続的に学習できます。さらに、YOLOv7 は「trainable bag-of-freebies」(計画的な再パラメーター化畳み込みや動的なラベル割り当てなどの手法)を採用しています。これらの手法は、デプロイ時の推論コストを追加することなく、トレーニング中のモデルの精度を向上させます。
強みと制限#
YOLOv7はリアルタイムエッジ処理向けに高度に最適化されており、レガシーシステムや古いCUDA environmentsにおいて依然として主要な選択肢となっています。現在の主な制限事項は、新しいモデルと比較してパラメータサイズが大きいことです。パフォーマンスの表に示されているように、最高レベルの精度を達成するには、同等の最新アーキテクチャよりも大幅に多くのGPU memoryを要求する、負荷の高いYOLOv7xモデルが必要になります。
Ultralytics の強み: 合理化されたデプロイ#
YOLOv9およびYOLOv7のオリジナルの研究用リポジトリは優れた学術的基礎を提供しますが、これらのモデルを本番環境にデプロイすることは複雑になる場合があります。ultralyticsパッケージを介して統合することで、比類のない**使いやすさ(Ease of Use)**が提供されます。
統合されたUltralytics Platformを利用することで、開発者は直感的なPython API、活発なコミュニティサポート、および堅牢なexperiment trackingを備えた、適切に維持管理されたエコシステムの恩恵を受けることができます。
YOLO26 で将来を見据える#
新しいコンピュータービジョンプロジェクトを開始する場合は、YOLOv9とYOLOv7の両方よりも、新しくリリースされた**YOLO26**を探索することを強くお勧めします。新しい最先端(SOTA)標準としてリリースされたYOLO26は、画期的な進化をもたらします:
- エンドツーエンドの NMS フリー設計: Non-Maximum Suppression(非最大値抑制)のポストプロセスを排除し、デプロイの複雑さとレイテンシを劇的に削減します。
- 最大43%高速なCPU推論: edge computing環境向けに最適化されており、専用GPUがない場合でもアプリケーションがスムーズに実行されます。
- MuSGD オプティマイザー: LLM トレーニングに触発されたハイブリッドオプティマイザーで、非常に安定した収束を実現し、トレーニング時間を短縮します。
- DFL の削除: Distribution Focal Loss を削除することでモデルのエクスポートを簡素化し、低電力のモバイルデバイスとの互換性を強化しました。
- ProgLoss + STAL: 小さなオブジェクトの検出におけるパフォーマンスを大幅に向上させ、aerial imageryや監視において最高の選択肢となります。
エコシステム内の他の人気のある代替手段には、Ultralytics YOLOv8とYOLO11があり、どちらもinstance segmentationやpose estimationなどのタスクにおいて圧倒的な汎用性を提供します。
実装例#
これらのアーキテクチャのトレーニングとエクスポートは、統合 API を使用することで非常に簡単です。以下のコードは、Ultralytics ツールが持つ合理化された トレーニング効率 (Training Efficiency) を示しています。
from ultralytics import YOLO
# Initialize YOLOv9 or the recommended YOLO26 model
model = YOLO("yolov9c.pt") # Swap with "yolo26n.pt" for faster edge performance
# Train on a custom dataset with built-in data augmentation
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, batch=16, device=0)
# Export the trained model to ONNX format for deployment
model.export(format="onnx")コンシューマーグレードのハードウェアでトレーニングする場合、メモリ効率が不可欠です。YOLOv9 および YOLO26 の Ultralytics 実装は、VRAM スパイクを抑えるために高度に最適化されています。これは、トレーニング中に深刻なメモリ肥大化に悩まされることが多い Transformer ベースのモデル(RT-DETR など)とは対照的です。
実環境での応用と理想的なユースケース#
これらのアーキテクチャを選択するかどうかは、多くの場合、本番環境の特定の制約によって決まります。
YOLOv9を使用するタイミング: YOLOv9は、微細な詳細の保持が必要な環境で優れています。その堅牢な特徴抽出により、棚に密集した製品を数えるためのretail analyticsや、小さな葉の上の初期段階の作物病を特定することが重要である農業用途に最適です。
YOLOv7を使用するタイミング: YOLOv7は、レガシーデプロイメントパイプラインにとって強力な候補であり続けます。Google Coral Edge TPUの特定の世代などの古いハードウェアシステムに統合する場合、YOLOv7のシンプルなCNNアーキテクチャは、新しいモデルのより複雑な勾配ブランチよりもコンパイルが容易である可能性があります。
YOLO26を使用するタイミング(推奨): 自律走行ドローンからスマートシティのtraffic managementに至るまで、あらゆる現代的なデプロイメントにおいて、YOLO26が優れた選択肢です。そのNMSフリーのアーキテクチャは決定的推論時間を保証し、これは安全性にクリティカルなロボット工学に不可欠であり、その高精度はあらゆる面でYOLOv9およびYOLOv7を凌駕します。