YOLOv5とYOLOX:包括的な技術比較
リアルタイムコンピュータビジョンの進化には多くの節目があり、さまざまなアーキテクチャが速度と精度の限界を押し広げてきました。この分野で非常に影響力のある2つのモデルが YOLOv5 と YOLOX です。どちらも物体検出における高いパフォーマンスで知られていますが、そのアーキテクチャへのアプローチは根本的に異なります。
本ガイドでは、これら2つのモデルについて詳細な技術分析を行い、アーキテクチャ、パフォーマンス指標、学習手法、そして最適なデプロイメントシナリオを比較することで、開発者や研究者が自身のビジョンAIプロジェクトに適したツールを選択できるよう支援します。
モデルの概要とアーキテクチャの相違点
Ultralytics YOLOv5
- 作成者: Glenn Jocher
- 組織: Ultralytics
- 日付: 2020-06-26
- GitHub: Ultralytics YOLOv5 リポジトリ
- ドキュメント: YOLOv5 公式ドキュメント
Ultralyticsによって導入された YOLOv5 は、パフォーマンス、使いやすさ、メモリ効率の優れたバランスにより、すぐに業界標準となりました。PyTorch フレームワーク上にネイティブ構築された YOLOv5 は、アンカーベースのアーキテクチャを使用しています。これは定義済みのバウンディングボックス形状に依存して物体の位置を予測するもので、標準的な物体検出タスクにおいて極めて高い効果を発揮します。
YOLOv5の最大の強みのひとつは、その十分に整備されたエコシステムです。充実したドキュメント、非常にシンプルな Python API、そして Ultralytics Platform とのネイティブ統合を誇ります。これにより、開発者はデータセットのラベリングから学習、そして ONNX や TensorRT といったフォーマットへのエクスポートまでをシームレスに行うことができます。
Ultralytics YOLOモデルは、複雑なTransformerベースの代替モデルと比較して、学習中に必要とするGPUメモリが大幅に少ない傾向にあります。この小さなメモリフットプリントにより、YOLOv5は一般的なハードウェアを使用する研究者にとっても非常に利用しやすいものとなっています。
Megvii YOLOX
- 著者: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li, Jian Sun
- 組織: Megvii
- 日付: 2021-07-18
- Arxiv: YOLOX: 2021年にYOLOシリーズを超える
- GitHub: Megvii YOLOX リポジトリ
- ドキュメント: YOLOX ReadTheDocs
Megviiの研究者によって開発された YOLOX は、YOLOファミリーにアンカーフリー設計を導入するという異なる道を選択しました。アンカーボックスを排除することで、YOLOXは検出ヘッドを簡素化し、学習中に手動調整が必要なヒューリスティックパラメータの数を大幅に削減しました。
また、YOLOXはデカップリングヘッド(分類タスクと回帰タスクを異なるネットワークブランチに分離)を組み込み、SimOTAラベル割り当て戦略を利用しています。これらの革新は学術研究と産業応用の間のギャップを埋めるものであり、対象物のスケールが大きく異なる環境において YOLOX を特に効果的なものにしています。
パフォーマンスとメトリクス
コンピュータビジョンモデルを評価する際、平均精度(mAP)と推論速度のトレードオフは非常に重要です。どちらのモデルも、さまざまなハードウェアの制約に対応できるよう、多様なサイズ(NanoからExtra-Largeまで)が用意されています。
| モデル | サイズ (ピクセル) | 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 |
| YOLOXnano | 416 | 25.8 | - | - | 0.91 | 1.08 |
| YOLOXtiny | 416 | 32.8 | - | - | 5.06 | 6.45 |
| YOLOXs | 640 | 40.5 | - | 2.56 | 9.0 | 26.8 |
| YOLOXm | 640 | 46.9 | - | 5.43 | 25.3 | 73.8 |
| YOLOXl | 640 | 49.7 | - | 9.04 | 54.2 | 155.6 |
| YOLOXx | 640 | 51.1 | - | 16.1 | 99.1 | 281.9 |
YOLOXx はわずかに高いピーク精度(51.1 mAP)を達成していますが、YOLOv5は CPUおよびGPUハードウェア全体にわたって、より堅牢で徹底的にテストされたデプロイメントパイプラインを提供しています。YOLOv5の TensorRT 速度はエッジコンピューティングデバイス向けの深い最適化を強調しており、リアルタイム映像解析において非常に信頼性の高い選択肢となっています。
トレーニング手法と使いやすさ
開発者の体験は、これら2つのアーキテクチャ間で大きく異なります。
YOLOXのアプローチ
YOLOXの学習には通常、元のリポジトリのクローン作成、特定の依存関係の管理、そして複雑なコマンドラインスクリプトの実行が必要です。混合精度学習や MegEngine を介したマルチノード設定などの高度な機能をサポートしてはいますが、迅速なプロトタイピングを必要とする開発者にとって、学習曲線は険しいものになる可能性があります。
Ultralyticsの利点
対照的に、Ultralyticsは非常に合理化されたユーザー体験を優先しています。ultralytics Pythonパッケージを使用すれば、開発者は最小限の定型コードでモデルの読み込み、学習、検証を行うことができます。Ultralyticsは、複雑なデータ拡張、ハイパーパラメータの進化、学習率のスケジュール調整を自動的に処理します。
from ultralytics import YOLO
# Load a pretrained YOLOv5 small model
model = YOLO("yolov5s.pt")
# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Validate the model's performance
metrics = model.val()さらに、YOLOv5の汎用性は標準的な物体検出にとどまらず、まったく同じ統一 API 内で 画像分類 や インスタンスセグメンテーション に対しても堅牢なサポートを提供しています。
学習完了後、YOLOv5モデルを CoreML、TFLite、または OpenVINO にエクスポートすることは、model.export(format="onnx") を実行するだけで完了します。これにより、研究重視のリポジトリで一般的に必要とされるサードパーティ製の変換スクリプトが不要になります。
実世界の応用例
どちらのモデルを選択するかは、デプロイメント環境と技術要件によって決まります。
- 小売および在庫管理: NVIDIA Jetson のようなエッジデバイスでリアルタイムの製品認識を必要とするアプリケーションには、YOLOv5 が最適です。最小限のメモリフットプリントと高速な TensorRT 推論速度により、フレームを落とすことなくマルチカメラ追跡を可能にします。
- 学術研究およびカスタムアーキテクチャ: YOLOX は研究コミュニティで高く評価されています。そのデカップリングヘッドとアンカーフリーの特性は、斬新なラベル割り当て戦略を試したいエンジニアや、従来のアンカーボックスが汎用化できないデータセットに取り組んでいるエンジニアにとって、優れたベースラインとなります。
- 農業AI: ドローンを介した果物検出や雑草特定などの精密農業タスクにおいて、Ultralytics Platform を使用した YOLOv5 モデルの学習とデプロイの容易さは、ドメインエキスパートが機械学習エンジニアリングの深い背景知識なしでAIソリューションを実装することを可能にします。
ユースケースと推奨事項
YOLOv5とYOLOXのどちらを選択するかは、特定のプロジェクト要件、デプロイメントの制約、およびエコシステムの好みによって決まります。
YOLOv5を選択すべき場合
YOLOv5が適しているケース:
- 実績のある本番システム: YOLOv5の安定性、広範なドキュメント、および膨大なコミュニティサポートという長い実績が重視される既存のデプロイメント。
- リソース制約のあるトレーニング: YOLOv5の効率的なトレーニングパイプラインと低いメモリ要件が有利となる、GPUリソースが限られた環境。
- 広範なエクスポートフォーマットのサポート: ONNX、TensorRT、CoreML、およびTFLiteを含む多くのフォーマット全体でのデプロイメントが必要なプロジェクト。
YOLOXを選択すべき場合
YOLOXは以下の場合に推奨されます:
- アンカーフリー検出の研究: YOLOXのクリーンでアンカーフリーなアーキテクチャを、新しい検出ヘッドや損失関数の実験のためのベースラインとして使用する学術研究。
- 超軽量エッジデバイス: マイクロコントローラーやレガシーなモバイルハードウェアへのデプロイ。YOLOX-Nanoバリアントの極めて小さなフットプリント(0.91Mパラメータ)が不可欠な場合。
- SimOTAラベル割り当ての研究: 最適輸送ベースのラベル割り当て戦略と、それが学習の収束に与える影響を調査する研究プロジェクト。
Ultralytics (YOLO26) を選択すべき場合
ほとんどの新規プロジェクトにおいて、Ultralytics YOLO26はパフォーマンスと開発者体験の最高の組み合わせを提供します:
- NMSフリーのエッジデプロイ: Non-Maximum Suppressionの後処理の複雑さを伴わずに、一貫した低レイテンシの推論が求められるアプリケーション。
- CPUのみの環境: 専用のGPUアクセラレーションがないデバイスにおいて、YOLO26の最大43%高速なCPU推論が決定的な利点となります。
- 小物体の検出: 航空ドローンの映像 やIoTセンサーの分析など、ProgLossとSTALが小物体の精度を大幅に高めることができる困難なシナリオ。
ビジョンAIの未来: YOLO26の登場
YOLOv5とYOLOXはどちらもコンピュータビジョンの歴史に名を刻みましたが、この分野は急速に進歩しています。現在新しいプロジェクトを開始する開発者には、最新の主力モデルである YOLO26 を探索することを強く推奨します。
2026年1月にリリースされた YOLO26 は、パフォーマンスと使いやすさの両面で大きな飛躍を遂げました。画期的な エンドツーエンドの NMS-free 設計 を導入し、非最大値抑制(NMS)の後処理を完全に排除しました。これにより、遅延の変動が大幅に抑えられ、低電力デバイス上でのデプロイメントロジックが簡素化されます。
さらに、YOLO26は、LLM学習の革新から着想を得た SGD と Muon のハイブリッドである新しい MuSGD オプティマイザー を活用し、信じられないほど安定した高速な収束を実現しています。DFL除去(エクスポートの簡素化とエッジ/低電力デバイスへの適合性向上のため Distribution Focal Loss を削除)により、YOLO26は最大 43% 高速な CPU 推論 を達成し、現代のエッジコンピューティング、ロボティクス、IoTアプリケーションのための究極のモデルとしての地位を確立しました。さらに、ProgLoss + STAL は、IoT、ロボティクス、航空画像に不可欠な小物体認識における顕著な改善を伴う改良された損失関数を提供します。以前の世代に関心のあるユーザーは YOLO11 を検討することもできますが、YOLO26が間違いなく最先端の選択肢です。
結論
YOLOv5とYOLOXは、どちらも信じられないほどの物体検出機能を提供しています。YOLOXは2021年に、アンカーフリー設計が従来の手法と競合し、それを上回ることができることを証明することでアーキテクチャの可能性を広げました。しかし、YOLOv5 はその比類のない使いやすさ、広範なエコシステム、そして学習中の低いメモリ要件により、依然として支配的な力を持っています。
大多数の商業アプリケーションにとって、Ultralyticsエコシステムは、生のデータセットからデプロイされた本番モデルまでの最速の道を提供します。実績のある YOLOv5 を使用する場合でも、最先端の YOLO26 にアップグレードする場合でも、開発者はビジョンAIを身近で効率的、かつ高性能にするために設計されたフレームワークの恩恵を受けることができます。