Link to this sectionYOLOv7 と YOLOv5 の比較#
現代的な コンピュータビジョン パイプラインを構築する際、精度、推論速度、リソース使用率のバランスをとるためには、適切なオブジェクト検出アーキテクチャを選択することが不可欠です。この包括的な比較では、コンピュータビジョンの分野で非常に影響力のある2つのモデル、YOLOv7 と Ultralytics YOLOv5 について検証します。
アーキテクチャの違い、パフォーマンス指標、および理想的なデプロイメントシナリオを分析することで、開発者や研究者が特定の要件に合わせて最適なモデルを選択できるよう支援することを目的としています。
Link to this sectionモデルの背景と起源#
これらのモデルの起源を理解することは、その設計思想とターゲットとなるユースケースを理解するためのコンテキストとなります。
Link to this sectionYOLOv5#
YOLOv5 は、2020年6月26日に Ultralytics の Glenn Jocher とそのチームによってリリースされ、パフォーマンスを犠牲にすることなくユーザビリティを優先したネイティブな PyTorch 実装を提供することで、この分野に革命をもたらしました。その非常に合理化されたエコシステムと信頼性の高いトレーニングダイナミクスにより、瞬く間に業界標準となりました。 ソースコードは YOLOv5 GitHub リポジトリ から確認するか、Ultralytics Platform を介してモデルに直接アクセスできます。
Link to this sectionYOLOv7#
YOLOv7 は、2022年7月6日に台湾の中央研究院情報科学研究所の Chien-Yao Wang、Alexey Bochkovskiy、Hong-Yuan Mark Liao によって発表されました。YOLOv7 は、Extended Efficient Layer Aggregation Networks (E-ELAN) や、最先端の精度を実現するための学習可能な「bag-of-freebies」といったアーキテクチャの革新に重点を置いています。 詳細は 公式 Arxiv 論文 および YOLOv7 GitHub リポジトリ を参照してください。シームレスな統合については、Ultralytics YOLOv7 ドキュメント をご確認ください。
どちらのモデルも Ultralytics Python パッケージに完全に統合されており、コード内のモデル文字列を変更するだけで、簡単にモデルを切り替えることができます。
Link to this sectionアーキテクチャの革新#
Link to this sectionUltralytics YOLOv5 の設計#
YOLOv5 は、修正された CSPDarknet53 バックボーンと Path Aggregation Network (PANet) ネックを組み合わせて使用します。この設計は、高速な 特徴抽出 とメモリ効率のために高度に最適化されています。古いアーキテクチャや大規模な Transformer モデルとは異なり、YOLOv5 はトレーニング中に必要な CUDA メモリが大幅に少ないため、一般的なコンシューマー向け GPU でも大きな バッチサイズ を使用できます。さらに、Ultralytics フレームワークは、標準のバウンディングボックスだけでなく、画像セグメンテーション や 画像分類 を含む幅広いタスクをネイティブにサポートしています。
Link to this sectionYOLOv7 の設計#
YOLOv7 は、いくつかの構造的な再パラメータ化と E-ELAN アーキテクチャを導入しました。これにより、元の勾配経路を破壊することなく、より多様な特徴を学習することが可能になりました。また、トレーニング中に中間的な監視を行うための補助ヘッドも実装されています。これらの進歩は高い mAP をもたらしますが、多くの場合、複雑なテンソル構造が導入されるため、Ultralytics モデルの合理化されたエクスポートと比較すると、ONNX や TensorRT といったエッジフォーマットへのエクスポートが少し難しくなる場合があります。
Link to this sectionパフォーマンス分析#
これらのモデルを比較する際、開発者は mAPval、推論速度、計算複雑性 (FLOPs) のバランスを考慮する必要があります。以下の表は、COCO データセット で評価された両アーキテクチャのパフォーマンスを示しています。
| モデル | サイズ (ピクセル) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | パラメータ (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
| 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 |
Link to this section重要なポイント#
- 精度の天井: YOLOv7x は 53.1 mAPval という驚異的な全体精度を達成しており、検出パフォーマンスの最大化が主な目的であるシナリオにおいて非常に高い競争力を備えています。
- 速度と効率: Ultralytics YOLOv5n は効率性の傑作であり、わずか 2.6M パラメータという小さなメモリフットプリントで、超高速な 推論レイテンシ (T4 TensorRT で 1.12 ms) を提供します。これにより、制約の厳しいエッジデプロイメントにおいて比類のない選択肢となります。
- パフォーマンスのバランス: YOLOv5 シリーズは、優れたモデルのグラデーションを提供します。YOLOv5l は、YOLOv7l にわずかな精度差で及ばないものの、非常に成熟したデプロイメントパイプラインを提供しており、素晴らしい中間の選択肢となります。
Link to this sectionUltralyticsエコシステムの利点#
モデルのアーキテクチャは方程式の半分に過ぎず、その周囲を取り巻くエコシステムが実用性を決定づけます。これこそが、Ultralytics モデルが真に輝く点です。
使いやすさ: Ultralytics は、統合された非常に直感的な Python API を提供しています。最小限のボイラープレートでモデルのトレーニング、検証、デプロイが可能であり、充実した 公式ドキュメント によってサポートされています。 適切に維持されたエコシステム: アクティブな開発により、継続的なアップデート、バグ修正、および Weights & Biases のような最新の追跡ツールとのシームレスな統合が保証されます。 トレーニング効率: 最適化されたデータローダーと スマートキャッシング を活用することで、YOLOv5 はトレーニング時間を大幅に短縮します。さらに、すぐに使用可能な事前学習済み重みが、さまざまなドメイン間での転移学習を加速させます。
Link to this sectionコード例: 合理化されたトレーニング#
Ultralytics パッケージを使用すると、選択したアーキテクチャに関係なく、トレーニングの開始手順は実質的に同一です。
from ultralytics import YOLO
# Load a pre-trained YOLOv5 model (can easily swap to "yolov7.pt")
model = YOLO("yolov5s.pt")
# Train the model on the COCO8 example dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Export the trained model to ONNX format for deployment
success = model.export(format="onnx")Link to this section理想的なユースケース#
Link to this sectionYOLOv7を選択すべき時#
- 学術的ベンチマーク: 十分に文書化された 2022 年のベースラインに対して、新しい手法を比較する必要がある研究者に最適です。
- ハイエンド GPU クラウド処理: 高密度のシーンで究極の最高 mAP を達成することが、エクスポートの簡便さを上回る場合に、強力なサーバーハードウェア上でデプロイする際に適しています。
Link to this sectionYOLOv5を選択すべき場合#
- 本番環境へのデプロイ: 高い安定性、率直な モデルデプロイオプション、および幅広いクロスプラットフォーム互換性を必要とする商用アプリケーションに最適です。
- エッジデバイス: 小さなバリアント (YOLOv5n および YOLOv5s) は、携帯電話や組み込みシステムで非常に良好に動作します。
- マルチタスク要件: 単純な検出から、統合フレームワークを使用した ポーズ推定 やセグメンテーションへとプロジェクトを進化させる必要がある場合。
より最近のイテレーションをお探しですか? アンカーフリー検出とマルチタスク学習機能におけるさらなる進歩については、Ultralytics YOLOv8 または Ultralytics YOLO11 の検討をお勧めします。
Link to this section次世代:Ultralytics YOLO26#
YOLOv5 と YOLOv7 はビジョン AI の歴史において重要な位置を占めていますが、環境は絶えず進化しています。2026年1月にリリースされた Ultralytics YOLO26 は、オブジェクト検出テクノロジーの絶対的な最先端を表しており、すべての指標において前世代を凌駕しています。
YOLO26 は、いくつかのパラダイムシフトをもたらす機能を導入しています:
- エンドツーエンドの NMS フリー設計: 初期のイテレーションで開拓された概念に基づき、YOLO26 はネイティブなエンドツーエンドを実現しています。これにより、Non-Maximum Suppression (NMS) の後処理が完全に排除され、レイテンシのボトルネックが解消され、デプロイメントのロジックが劇的に簡素化されました。
- MuSGD オプティマイザ: Moonshot AI の Kimi K2 に触発されたこの革新的なオプティマイザは、標準的な SGD の安定性と Muon の加速されたモメンタムを融合させ、高度な LLM トレーニングのイノベーションをコンピュータビジョンに直接取り入れています。
- CPU 速度の向上: Distribution Focal Loss (DFL) を戦略的に削除することで、YOLO26 は最大 43% 高速な CPU 推論 を実現しており、エッジおよび低電力の IoT デバイスデプロイメントにおいて、議論の余地のないチャンピオンとなっています。
- ProgLoss + STAL: これらの高度な損失関数は、航空画像や精密ロボット工学に不可欠な小物体認識において大幅な改善をもたらします。
- タスク固有の改善: マスク生成のためのセマンティックセグメンテーション損失、ポーズ追跡のための Residual Log-Likelihood Estimation (RLE)、および厄介な Oriented Bounding Box (OBB) の境界問題を解決するための特別な角度損失を備えています。
Link to this section結論#
YOLOv5 と YOLOv7 はどちらも、リアルタイムオブジェクト検出のための強力なソリューションを提供します。YOLOv7 は高計算ハードウェアでの生の精度において強力な選択肢であり続け、YOLOv5 は速度、効率、世界クラスのエコシステムの卓越したバランスを提供する、究極の開発者向けツールとして際立っています。
しかし、パイプラインを将来にわたって保証し、速度、シンプルさ、最先端の精度の究極の組み合わせを達成したいと考えている開発者には、Ultralytics YOLO26 への移行を強くお勧めします。これは、Ultralytics プラットフォームの伝説的な使いやすさを維持しながら、画期的なアーキテクチャの革新を提供します。