YOLOv5 vs YOLO11#
新しいプロジェクトに適したコンピュータビジョンのアーキテクチャを選択する際には、最先端モデルの進化を理解することが不可欠です。初期のアーキテクチャから現代の統合型フレームワークへの進展は、アルゴリズムの効率性と開発者体験の両面において重要な飛躍を示しています。本ガイドでは、Ultralyticsによって開発された2つの画期的なモデル、先駆的なYOLOv5と高度に洗練されたYOLO11について、詳細な技術的比較を提供します。
モデルの紹介#
これら両方のアーキテクチャはリアルタイム物体検出の分野における重要なマイルストーンであり、展開環境やレガシー要件に応じてそれぞれ異なる利点を提供します。
YOLOv5: 業界の主力製品#
2020年夏にリリースされたYOLOv5は、ネイティブな PyTorch 実装により急速に業界標準となりました。これにより、トレーニングとデプロイの導入障壁が大幅に引き下げられました。先代モデルの複雑な Darknet C フレームワークから脱却し、モデル構築に対する Pythonic なアプローチを提供しました。
- 著者: Glenn Jocher
- 組織: Ultralytics
- 日付: 2020-06-26
- GitHub: ultralytics/yolov5
- Docs: YOLOv5 Documentation
YOLOv5は使いやすさの強力な基準を確立し、高度なモザイクデータ拡張や自動アンカー設定など、強力な学習手法を導入しました。十分に文書化され、広範囲にテストされたコードベースを構築する研究者の間で、依然として絶大な人気を誇っています。
YOLO11: 統合型ビジョンフレームワーク#
長年のフィードバックとアーキテクチャ研究に基づいて構築されたYOLO11は、複数のビジョンタスクをネイティブに処理できる統合フレームワークの一部として導入されました。バウンディングボックスの枠を超え、最大限の汎用性と効率性を実現するためにゼロから設計されました。
- 著者: Glenn Jocher and Jing Qiu
- 組織: Ultralytics
- 日付: 2024-09-27
- GitHub: ultralytics/ultralytics
- ドキュメント: YOLO11 Documentation
YOLO11 は、ultralytics Python パッケージを通じて洗練されたユーザー体験を提供し、物体検出、インスタンスセグメンテーション、分類、姿勢推定、指向性バウンディングボックス(OBB)を統合したシンプルな API を誇ります。速度と精度の非常に有利なトレードオフを実現し、多様な現実世界のデプロイシナリオに最適です。
どちらのモデルも、Ultralytics Platform が提供するよくメンテナンスされたエコシステムの恩恵を受けています。この統合された環境により、さまざまなハードウェアターゲットにわたるデータセットのアノテーション、クラウドトレーニング、モデルのエクスポートが簡素化されます。
パフォーマンスと指標の比較#
これらモデルの直接的な比較により、アーキテクチャの改良がどのように具体的なパフォーマンス向上につながるかがわかります。以下の表は、COCO dataset で評価された平均精度(mAP)と、CPUおよびGPUの推論速度、パラメータ数を示しています。
| モデル | サイズ (ピクセル) | 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 |
| YOLO11n | 640 | 39.5 | 56.1 | 1.5 | 2.6 | 6.5 |
| YOLO11s | 640 | 47.0 | 90.0 | 2.5 | 9.4 | 21.5 |
| YOLO11m | 640 | 51.5 | 183.2 | 4.7 | 20.1 | 68.0 |
| YOLO11l | 640 | 53.4 | 238.6 | 6.2 | 25.3 | 86.9 |
| YOLO11x | 640 | 54.7 | 462.8 | 11.3 | 56.9 | 194.9 |
結果の分析#
これらの指標は、YOLO11によって達成されたパフォーマンスバランスの明確な飛躍を浮き彫りにしています。たとえば、YOLO11n(nano)モデルは、YOLOv5nの28.0%と比較して39.5%の mAP を達成し、同時に ONNX を介してエクスポートされた場合の CPU 推論時間を短縮します。さらに、YOLO11は、重い Transformer ベースのモデルと比較して、トレーニング中のメモリ要件を著しく低く抑えているため、コンシューマー向けハードウェアやエッジデバイスでのデプロイに非常にアクセスしやすくなっています。
アーキテクチャの違い#
YOLO11におけるパフォーマンスの向上は、いくつかの重要なアーキテクチャの進化に起因しています。YOLOv5はC3モジュールを備えた標準的なCSPNetバックボーンを採用していましたが、YOLO11ではC2fやその後のC3k2といったより効率的な特徴抽出ブロックが導入され、勾配フローの最適化と計算オーバーヘッドの削減が行われました。
YOLO11 はまた、大幅に洗練されたヘッドを備えています。古いモデルのアンカーベースの設計から離れ、新しい Ultralytics アーキテクチャはアンカーフリーのアプローチを採用しています。これにより、ボックス予測の数が減少し、後処理パイプラインが合理化され、さまざまなスケールやアスペクト比にわたって汎用化するモデルの能力が向上します。さらに、これらのモデルは優れたトレーニング効率と、ファインチューニングされたデータセットの収束を加速するすぐに使える事前トレーニング済みウェイトを誇ります。
実装とコード例#
Ultralytics エコシステムの際立った特徴の1つは、そのシンプルさです。YOLOv5は迅速な推論のために torch.hub の使用を普及させましたが、YOLO11 は統合された ultralytics Python パッケージによりこれをさらに一歩進めています。
YOLO11での学習#
モデルのロード、学習、検証に必要なボイラープレートコードは最小限です。APIがハイパーパラメータの調整とモデル管理をシームレスに処理します。
from ultralytics import YOLO
# Load a pretrained YOLO11 model
model = YOLO("yolo11s.pt")
# Train on a custom dataset for 50 epochs
results = model.train(data="coco8.yaml", epochs=50, imgsz=640)
# Run fast inference and display results
predictions = model("https://ultralytics.com/images/bus.jpg")
predictions[0].show()
# Easily export the model to TensorRT for hardware acceleration
model.export(format="engine")YOLOv5によるレガシー推論#
古いパイプラインをメンテナンスしている場合、YOLOv5はPyTorchのネイティブなロードメカニズムと直接統合されるため、既存の推論スクリプトへの導入が容易です。
import torch
# Load a custom or pretrained YOLOv5 model from PyTorch Hub
model = torch.hub.load("ultralytics/yolov5", "yolov5s")
# Perform inference on an image URL
results = model("https://ultralytics.com/images/zidane.jpg")
# Print prediction details to the console
results.print()両方のモデルが豊富なエクスポート形式をサポートしています。TensorRTを使用したNVIDIA Jetsonをターゲットにする場合でも、CoreMLを使用したiOSアプリケーションをターゲットにする場合でも、デプロイプロセスは十分に文書化されており、コミュニティによってサポートされています。
理想的なユースケース#
これらのモデルの選択は、プロジェクトのライフサイクル段階と特定の要件に大きく依存します。
YOLOv5を選択すべき場合#
- レガシーコードベースの維持: 本番環境が YOLOv5 リポジトリの構造または特定のハイパーパラメータ進化テクニックを中心に大幅にカスタマイズされている場合。
- 学術的なベースライン: 2020~2022年の確立されたコンピュータビジョン標準との直接的なベンチマークを必要とする研究を発表する場合。
YOLO11を選択すべき時#
- マルチタスクプロジェクト: 単一の統合 API を使用して姿勢推定やインスタンスセグメンテーションなどのタスクの組み合わせをアプリケーションで必要とする場合。
- エッジデプロイ: 特定の計算予算(FLOPs)に対して最大 mAP を絞り出すことが不可欠なエッジコンピューティングのシナリオ。
- 商用AIソリューション: Ultralytics Platform の強力なサポートを活用して、リテールやセキュリティのエンタープライズアプリケーションに最適です。
次世代:Ultralytics YOLO26#
YOLO11 は速度と精度の素晴らしいバランスを表していますが、人工知能の分野は急速に進化しています。今日新しいプロジェクトを開始する開発者にとって、ビジョン AI の最新標準である Ultralytics YOLO26 を探索することを強くお勧めします。
2026年1月にリリースされたYOLO26は、現代の展開ニーズのために特別に設計されたパラダイムシフトとなる進歩を導入しています。
- エンドツーエンドのNMSフリー設計: YOLOv10で初めて開拓されたコンセプトに基づいて、YOLO26はネイティブにエンドツーエンドです。Non-Maximum Suppression (NMS)の後処理を不要にすることで、展開パイプラインを大幅に簡素化し、レイテンシを削減します。
- MuSGDオプティマイザ: Moonshot AIのKimi K2のようなモデルのLLM学習の革新から着想を得たこのSGDとMuonのハイブリッドは、非常に安定した学習と劇的に高速な収束を保証します。
- かつてないCPU速度: Distribution Focal Loss (DFL)を排除することで、YOLO26は最大43%の高速なCPU推論を達成しており、専用GPUを持たないエッジデバイスや環境にとって絶対的な最良の選択肢となります。
- 高度な損失関数: ProgLossとSTALの統合により、ドローン解析、IoT、ロボティクスに不可欠な小物体認識において顕著な改善が得られます。
- タスク固有の機能強化: 姿勢向けの残差対数尤度推定(RLE)や指向性バウンディングボックス向けの特殊な角度損失など、専門的な最適化を導入し、すべてのコンピュータビジョンタスクで優れたパフォーマンスを保証します。
標準的な物体検出以外の特殊なアーキテクチャに関心のあるユーザー向けに、Transformerベースの検出にはRT-DETR、オープンボキャブラリトラッキングと検出にはYOLO-Worldのようなモデルも探索していただけます。これらの保守が行き届いた高度に最適化されたツールを採用することで、コンピュータビジョンパイプラインの効率性と拡張性を維持し、常に時代の先を行くことができます。