YOLOv5 vs YOLOX:技術比較
適切な物体検出モデルの選択は、精度、速度、デプロイの複雑さのバランスを取る重要な決定です。このページでは、YOLOファミリーの2つの影響力のあるモデル、Ultralytics YOLOv5とYOLOXとの詳細な技術的比較を提供します。どちらのモデルもリアルタイムパフォーマンスを提供しますが、根本的に異なる設計思想に基づいて構築されています。YOLOv5は、非常に最適化されたアンカーベースのモデルであり、その卓越した使いやすさと効率で知られています。一方、YOLOXは、精度を向上させるためにアンカーフリーのアプローチを導入しています。アーキテクチャ、パフォーマンス指標、理想的なユースケースを掘り下げて、プロジェクトのニーズに最適なモデルを判断できるよう支援します。
Ultralytics YOLOv5:確立された業界標準
技術詳細:
- 著者: Glenn Jocher
- 組織: Ultralytics
- Date: 2020-06-26
- GitHub: https://github.com/ultralytics/yolov5
- Docs: https://docs.ultralytics.com/models/yolov5/
アーキテクチャと主な機能
Ultralytics YOLOv5は、その卓越したスピード、精度、そして使いやすさの融合により、業界のベンチマークとなっています。PyTorchで完全に構築されたYOLOv5は、堅牢なアーキテクチャを特徴とし、CSPDarknet53 バックボーン、特徴集約のためのPANetネック、および効率的なアンカーベースの検出ヘッドを備えています。その主な強みの1つはスケーラビリティであり、小型で高速なYOLOv5nから大型で正確なYOLOv5xまで、さまざまなモデルを提供しています。この柔軟性により、開発者は特定の計算およびパフォーマンス要件に最適なモデルを選択できます。
長所
- 卓越した速度と効率性: YOLOv5は高速な推論のために高度に最適化されており、CPU、GPU、そしてエッジデバイスまで、多様なハードウェアでのリアルタイムシステムにとって最適な選択肢となっています。
- 使いやすさ: YOLOv5はその効率的なユーザーエクスペリエンスで知られており、シンプルなPython APIとCLIを提供し、広範なドキュメントと多数のチュートリアルによって補完されています。
- 充実したエコシステム: Ultralyticsモデルとして、YOLOv5は成熟した活発なエコシステムの恩恵を受けています。これには、継続的な開発、大規模で支援的なコミュニティ、頻繁なアップデート、そしてノーコードトレーニングとデプロイメントのためのUltralytics HUBのようなツールとのシームレスな統合が含まれます。
- 学習効率: このモデルは、COCOのようなデータセット上のすぐに利用できる事前学習済みのウェイトを備えた効率的な学習プロセスを提供し、学習時間と計算コストを大幅に削減します。
- 多様性: YOLOv5は物体検出に限定されません。インスタンスセグメンテーションや画像分類もサポートしており、さまざまなコンピュータビジョンタスクに対応できる汎用性の高いツールとなっています。
- メモリ使用量が少ない: より複雑なアーキテクチャと比較して、YOLOv5は一般的にトレーニングと推論の両方で必要なメモリが少なく、限られたハードウェアリソースを持つユーザーにとってよりアクセスしやすくなっています。
弱点
- Anchor-Based Detection: 事前に定義されたアンカーボックスに依存しているため、アンカーフリー検出器と比較して、異常な形状またはスケールを持つオブジェクトを持つデータセットで最適なパフォーマンスを達成するには、慎重な調整が必要になる場合があります。
- 精度に関するトレードオフ: 優れたバランスを提供しているものの、小型のYOLOv5モデルは速度を優先するため、YOLOXやYOLOv9のような、より新しく複雑なアーキテクチャと比較して、精度がわずかに低くなる可能性があります。
ユースケース
YOLOv5は、速度と効率が重要なアプリケーションに最適です。
- リアルタイムセキュリティ: 盗難防止と異常検知を実現します。
- Edge Computing: Raspberry PiやNVIDIA Jetsonのようなリソース制約のあるデバイスへの効率的なデプロイ。
- 産業オートメーション: 製造業における品質管理の強化(リサイクル効率の向上など)。
YOLOX:アンカーフリーで高性能な代替手段
技術詳細:
- 著者: Zheng Ge、Songtao Liu、Feng Wang、Zeming Li、Jian Sun
- 組織: Megvii
- Date: 2021-07-18
- Arxiv: https://arxiv.org/abs/2107.08430
- GitHub: https://github.com/Megvii-BaseDetection/YOLOX
- Docs: https://yolox.readthedocs.io/en/latest/
アーキテクチャと主な機能
Megviiの研究者によって2021年に発表されたYOLOXは、アンカーフリーな物体検出手法を提供します。この設計は、定義済みのアンカーボックスを不要にすることで、検出パイプラインを簡素化し、汎化性能を向上させることを目的としています。主なアーキテクチャ上の革新には、分類タスクとローカリゼーションタスクを異なるブランチに分離するデカップルドヘッドや、モデルがより良い表現を学習するのに役立つ動的なラベル割り当て技術であるSimOTAのような高度なトレーニング戦略の使用が含まれます。
長所
- Anchor-Free Detection: アンカーボックスに関連する複雑さや事前仮定を取り除くことで、検出パイプラインを簡素化し、多様なアスペクト比を持つオブジェクトに対するパフォーマンス向上を潜在的に導きます。
- 高精度: 特に、より大きなモデルで、競争力のある精度を実現します。デカップリングされたヘッドと高度なSimOTAラベル割り当て戦略は、その強力なmAPスコアの重要な貢献要素です。
弱点
- 複雑さ: アンカーフリー設計は1つの側面を簡素化しますが、デカップリングされたヘッドとSimOTAのような高度な戦略の導入は、実装の複雑さを増し、トレーニングプロセスを直感的にしにくくする可能性があります。
- 外部エコシステム: YOLOXはUltralyticsスイートの一部ではないため、Ultralytics HUBのような強力なツールとのシームレスな統合ができません。そのため、学習の難易度が上がり、トレーニング、デプロイメント、MLOpsに手作業での労力がかかる可能性があります。
- CPU速度: CPUでの推論速度は、特に大規模なYOLOXバリアントの場合、YOLOv5のような高度に最適化されたモデルに比べて遅れる可能性があり、特定のリアルタイムCPUバウンドアプリケーションにはあまり適していません。
ユースケース
YOLOXは、精度を最大化することが最優先事項であるアプリケーションに適しています。
- 自動運転: 安全のために高精度が不可欠な自動運転車の認識タスクに適しています。
- 高度なロボティクス: ナビゲーションとインタラクションのためにロボットが正確な物体検出を必要とする複雑な環境に最適です。
- 研究: 物体検出研究におけるアンカーフリー手法および高度なトレーニング技術を研究するための強力なベースラインとして役立ちます。
性能と速度の比較
YOLOv5とYOLOXを比較すると、速度、精度、モデルサイズの間のトレードオフが明らかになります。YOLOv5は卓越した効率を実現するように設計されており、特にCPU上や、TensorRTなどの最適化された形式にエクスポートした場合に、非常に高速な推論速度を提供します。これにより、幅広いハードウェアでリアルタイムパフォーマンスを必要とするアプリケーションにとって、強力な選択肢となっています。一方、YOLOXはより高い精度を追求しており、その最大のモデルであるYOLOX-xは、YOLOv5xよりもわずかに高いmAPを達成しています。ただし、この精度の向上は、多くの場合、計算コストの増加と推論時間の遅延を伴います。
以下の表は、COCO val2017データセットでベンチマークされた、YOLOv5とYOLOXの両方のさまざまなモデルサイズの定量的な比較を示しています。
モデル | サイズ (ピクセル) |
mAPval 50-95 |
速度 CPU ONNX (ms) |
速度 T4 TensorRT10 (ms) |
params (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 |
結論と推奨事項
YOLOv5とYOLOXはどちらも強力な物体検出モデルですが、それぞれ異なる優先事項に対応しています。
Ultralytics YOLOv5は、依然として、圧倒的多数の現実世界のアプリケーションにとって優れた選択肢です。その主な利点は、比類のない使いやすさ、卓越した推論速度、そして堅牢で、十分にメンテナンスされたエコシステムです。コンセプトから本番環境への移行を迅速かつ効率的に行いたいと考えている開発者やチームにとって、YOLOv5の合理化されたワークフロー、豊富なドキュメント、Ultralytics HUBのようなツールとの統合は非常に貴重です。ハイエンドのクラウドサーバーからリソースに制約のあるエッジデバイスまで、あらゆる環境へのデプロイに最適な、速度と精度の優れたバランスを提供します。
YOLOXは、アンカーフリーアーキテクチャの可能性を示す、強力な学術および研究モデルです。最高のmAPを達成することが主な目標であり、開発チームが増大する複雑さや統合されたエコシステムの欠如に対処する用意があるプロジェクトに適した選択肢です。
ほとんどの開発者、研究者、企業にとって、Ultralyticsモデルから始めることをお勧めします。複数のタスク(検出、セグメンテーション、ポーズなど)をサポートし、YOLOv8やYOLO11のような新しいモデルへの明確なアップグレードパスを提供する、統一された、積極的に開発されたフレームワークの利点は、長期的に大きな利点をもたらします。Ultralyticsエコシステムは、開発を加速し、成功に必要なサポートとツールを確実に提供するように設計されています。
その他のモデル比較
これらのモデルとYOLOファミリーおよびそれ以外のモデルとの比較に関心がある場合は、これらのページをご確認ください。