YOLOv5 と YOLOv7 の比較#
コンピュータビジョンの分野は、より高速で高精度なリアルタイム物体検出のニーズに牽引され、ここ数年で急速に進化しました。コンピュータビジョンプロジェクトに適したアーキテクチャを選択する際には、Ultralytics YOLOv5やYOLOv7のような人気モデルの違いを理解することが極めて重要です。この包括的な技術比較では、情報に基づいた決定を下すのに役立つよう、そのアーキテクチャ、トレーニング手法、パフォーマンス指標、および理想的なデプロイシナリオについて詳しく解説します。
概要:モデルの起源#
これらのモデルの背景にある起源と設計哲学を理解することで、そのアーキテクチャ上の選択の文脈を把握できます。
YOLOv5の詳細:
- 著者: Glenn Jocher
- 組織: Ultralytics
- 日付: 2020-06-26
- GitHub: YOLOv5 Repository
- Docs: YOLOv5 Documentation
YOLOv7 の詳細:
- 著者: Chien-Yao Wang, Alexey Bochkovskiy, Hong-Yuan Mark Liao
- 組織: Institute of Information Science, Academia Sinica, Taiwan
- 日付: 2022-07-06
- Arxiv: YOLOv7 Paper
- GitHub: YOLOv7 Repository
- Docs: YOLOv7 Documentation
これらのモデルが他のモデルとどのように比較されるか興味がありますか?物体検出エコシステムについての理解を深めるために、YOLOv5 vs YOLO11やYOLOv7 vs EfficientDetなどの比較をご覧ください。
アーキテクチャの革新と違い#
YOLOv5:アクセシビリティの標準#
2020年にUltralyticsによって発表されたYOLOv5は、PyTorchフレームワークをネイティブに活用することでパラダイムシフトをもたらし、研究者や開発者の参入障壁を大幅に引き下げました。そのアーキテクチャはModified CSPDarknet53バックボーンに依存しており、Cross Stage Partial(CSP)ネットワークを統合することで、勾配の流れを維持しながらパラメータ数を削減しています。
その最大の強みの1つはメモリ要件です。従来の2ステージ検出器や、RT-DETRのような重いTransformerモデルと比較して、YOLOv5はトレーニング中のCUDAメモリ消費量が大幅に少なく、標準的な一般向けGPUでより大きなバッチサイズを使用できます。さらに、そのネイティブに統合された汎用性により、画像分類、物体検出、および画像セグメンテーションをシームレスにサポートします。
YOLOv7:リアルタイム精度の限界に挑む#
2022年中頃にリリースされた YOLOv7 は、MS COCO ベンチマークにおけるリアルタイム検出の最先端技術の限界を押し広げることに焦点を当てました。開発者は Extended Efficient Layer Aggregation Network (E-ELAN) を導入し、元の勾配パスを破壊することなくネットワークの学習能力を向上させました。
YOLOv7 は「学習可能なバッグ・オブ・フリービーズ(trainable bag-of-freebies)」でも有名で、特に学習中に複数のモジュールを単一の畳み込み層に変換する再パラメータ化手法により、精度を犠牲にすることなく推論速度を向上させています。しかし、この複雑な学習手法は、ネイティブな Ultralytics エコシステムと比較して、学習曲線が急であり、エクスポートパイプラインが複雑になりがちです。
パフォーマンスの比較#
これらのモデルを評価する際、速度、精度、計算コストの間の パフォーマンスバランス が最も重要です。以下に、MS COCO val2017 データセットに基づいたパフォーマンス指標の詳細な比較を示します。
| モデル | サイズ (ピクセル) | 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 |
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
YOLOv7 はより大きなモデルサイズで絶対的な mAP スコアにおいて高い値を示しますが、YOLOv5 は極端なエッジデバイス向けの超軽量な Nano (YOLOv5n) から、クラウド推論向けの Extra-Large (YOLOv5x) まで、他に類を見ないモデルのラインナップを提供しています。
Ultralyticsエコシステムの利点#
モデルの有用性は、単なるアーキテクチャを超えて広がります。それを取り巻くエコシステムが、どのくらい迅速に本番環境へデプロイできるかを決定づけます。これこそが、Ultralytics モデルが優れている点です。
- 使いやすさ: Ultralytics Platformとその統合されたPython APIは、合理化されたユーザー体験、シンプルな構文、および豊富なドキュメントを提供します。カスタムデータセットのトレーニングにボイラープレートコードは一切必要ありません。
- 十分にメンテナンスされたエコシステム: Ultralyticsは、活発な開発、頻繁なアップデート、および強力なコミュニティサポートの恩恵を受けています。Comet MLやWeights & Biasesなどのツールとの統合が最初から組み込まれています。
- トレーニング効率: データローダー、スマートキャッシング、マルチGPUサポートにより、Ultralyticsモデルのトレーニングは非常に効率的になります。すぐに利用できる事前学習済みウェイトにより、転移学習が劇的に加速します。
コード例:はじめに#
Ultralyticsを使用すると、モデルのデプロイに必要なコードはわずか数行です。次のPythonスニペットは、推奨される ultralytics パッケージを使用して、ロード、トレーニング、および推論を実行することがいかに簡単であるかを示しています。
from ultralytics import YOLO
# Load a pretrained YOLOv5s model
model = YOLO("yolov5s.pt")
# Train the model on the COCO8 example dataset
# Ultralytics automatically handles data downloading and augmentation
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on a sample image
predictions = model("https://ultralytics.com/images/bus.jpg")
# Display the predictions
predictions[0].show()対照的に、オリジナルの YOLOv7 リポジトリを利用する場合は、一般的に複雑なリポジトリのクローン、手動での依存関係管理、および長いコマンドライン引数の操作が必要となります。
実環境での応用と理想的なユースケース#
YOLOv7を選択すべき時#
YOLOv7 は、学術的なベンチマークや、最大 mAP の達成のみが目的であり、システムがすでにアンカーベースの出力テンソルに最適化されているレガシーな GPU パイプラインにおいて、依然として有力な選択肢です。勾配パス解析を行う研究者は、ベースラインとして YOLOv7 を利用することがよくあります。
YOLOv5を選択すべき場合#
YOLOv5 はその卓越した安定性から、本番環境において非常に好まれています。以下のような用途において最適な選択肢です。
- モバイルおよびエッジコンピューティング: CoreMLを介したiOSへの、またはTFLiteを介したAndroidへのYOLOv5nのデプロイ。
- アジャイルなスタートアップ: 高速なイテレーションサイクルを必要とするチームは、データセット管理とクラウドトレーニングのためのシームレスなUltralytics Platform統合の恩恵を受けられます。
- マルチタスク環境: 物体検出、分類、セグメンテーションを同時に必要とするシステム。
未来: YOLO26 への移行#
YOLOv5とYOLOv7の比較は、ビジョンAIの進化を理解するための優れた演習ですが、最先端技術は進歩し続けています。2026年1月にリリースされたUltralytics YOLO26は歴史的な飛躍を表しており、新しいプロジェクトにおいて古いアーキテクチャは大部分が時代遅れになっています。
パフォーマンスの頂点を求める開発者にとって、YOLO26 は YOLOv5 と YOLOv7 の両方に対して、いくつかの画期的な利点を提供します。
- エンドツーエンドの NMS フリー設計: NMS(Non-Maximum Suppression)後処理を排除することで、YOLO26 は劇的に簡素化されたデプロイメントと、より高速で一貫したレイテンシを実現します。
- MuSGD オプティマイザ: Moonshot AI による LLM の革新に触発されたこのハイブリッドオプティマイザは、非常に安定した学習と迅速な収束を提供します。
- 前例のないエッジスピード: エッジ環境に最適化されており、ナノバリアントは Distribution Focal Loss (DFL) を削除することで、CPU 推論を最大 43% 高速化 します。
- 優れた精度: ProgLoss + STAL のような新しい損失関数は、小さな物体の認識を劇的に向上させ、ドローン映像やロボティクスに最適です。
既存のYOLOv5パイプラインを維持する場合でも、最先端のYOLO26を実装する場合でも、Ultralytics Platformは現代のコンピュータビジョンで成功するために必要なすべてのツールを提供します。