YOLOv8 vs YOLOv5#
堅牢な機械学習パイプラインを構築するうえで、適切なコンピュータービジョンアーキテクチャを選ぶことは重要なステップです。この詳細な技術比較では、ビジョンAIエコシステムで特に広く利用されている2つのモデル、YOLOv8とYOLOv5の違いを解説します。どちらもUltralyticsが開発し、リアルタイムの物体検出の分野に大きな影響を与え、速度、精度、使いやすさに関する業界標準を確立しました。
エッジデバイスへのデプロイでも、クラウド推論のスケーリングでも、これらのモデルのアーキテクチャの変化、性能指標、トレーニング手法を理解することで、コンピュータービジョンプロジェクトに適した判断を下せます。
Ultralytics YOLOv8:多用途なスタンダード#
2023年初頭にリリースされたYOLOv8は、従来のバージョンからアーキテクチャを大きく刷新しました。複数のビジョンタスクをネイティブに処理できる統合フレームワークとして一から設計され、インスタンスセグメンテーション、画像分類、姿勢推定などに対応します。
- 著者: Glenn Jocher、Ayush Chaurasia、Jing Qiu
- 組織: Ultralytics
- 日付: 2023-01-10
- GitHub: ultralytics/ultralytics
- ドキュメント: YOLOv8のドキュメント
アーキテクチャと手法#
YOLOv8ではアンカーフリーの検出ヘッドが導入され、データセットの分布に基づいてアンカーボックスを手動設定する必要がなくなり、トレーニングプロセスが簡素化されました。これにより、カスタムデータセットへの汎化性能が向上し、ボックス予測の数が減ってNon-Maximum Suppression(NMS)が高速化します。
アーキテクチャにはC2fモジュール(2つの畳み込み層を持つCross-Stage Partialボトルネック)が採用されており、YOLOv5のC3モジュールに代わるものです。C2fモジュールは勾配の流れを改善し、計算コストを大幅に増やすことなく、モデルがより豊かな特徴表現を学習できるようにします。さらにYOLOv8では分離型ヘッド構造を採用し、分類タスクと回帰タスクを分離しています。これにより収束速度と精度が向上することが示されています。
YOLOv8を含むUltralytics YOLOモデルは、RT-DETRのような多くのTransformerベースのモデルと比べて、トレーニング時のCUDAメモリ使用量が少なくなるよう最適化されています。そのため、開発者はNVIDIA RTXシリーズのような一般的なコンシューマー向けGPUで、より大きなバッチサイズを使用できます。
強みと弱み#
強み:
- 単純なバウンディングボックス検出にとどまらず、複数のタスクにわたって比類のない汎用性を発揮します。
ultralyticsパッケージを通じたシンプルなPython APIにより、トレーニングとエクスポートを直感的に実行できます。- YOLOv5と比較して、すべてのモデルサイズで平均適合率(mAP)が高くなっています。
弱み:
- 分離型ヘッドとC2fモジュールにより、同等のYOLOv5モデルと比べて、小型モデルのパラメーター数とFLOPsが増加します。
Ultralytics YOLOv5:俊敏な先駆者#
2020年に登場したYOLOv5は、YOLOをPyTorchエコシステムに導入し、開発者にとっての使いやすさを大幅に高めました。高速で信頼性が高く、デプロイが容易な物体検出モデルの業界標準として、急速に普及しました。
- 著者: Glenn Jocher
- 組織: Ultralytics
- 日付: 2020-06-26
- GitHub: ultralytics/yolov5
- ドキュメント: YOLOv5のドキュメント
アーキテクチャと手法#
YOLOv5はアンカーベースのアーキテクチャを採用し、改良版CSPDarknet53バックボーンを使用します。アンカーベースの手法では、トレーニング前に最適なアンカーを定義するため、データセットのバウンディングボックスを慎重にクラスタリングする必要がありますが、用途が明確に定まった特定のデータセットでは非常に効果的です。
YOLOv5はC3モジュールを採用しており、パラメーター数を抑えながら効率的に特徴を抽出します。損失関数ではObjectness lossを中心に、分類損失とバウンディングボックス回帰損失を組み合わせて、ネットワークが正確な予測を行えるようにします。
強みと弱み#
強み:
- 非常に軽量なため、Nano(YOLOv5n)およびSmall(YOLOv5s)モデルは、リソースに制約のあるエッジAIのデプロイに適しています。
- 特にCPU上で、推論速度が非常に高速です。
- 豊富なコミュニティチュートリアルやサードパーティーとの統合機能を備えた、成熟したエコシステムがあります。
弱み:
- アンカーボックスの設定が必要なため、多様性の高いデータセットやカスタムデータセットではセットアップが複雑になる可能性があります。
- YOLOv8やYOLO26のような最新のアンカーフリーアーキテクチャと比べて、全体的な精度(mAP)が低くなっています。
パフォーマンス比較#
これらのモデルを評価する際は、速度と精度のバランスを適切に取ることが重要です。以下の表に、COCOデータセットで評価した両アーキテクチャの性能指標を示します。CPU速度はONNXを使用して測定し、GPU速度はTensorRTを使用して測定しました。
| モデル | サイズ (ピクセル) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | パラメーター (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
| YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
| YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
| YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.1 |
| YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
| YOLOv5n | 640 | 28.0 | - | 1.12 | 1.9 | 4.5 |
| YOLOv5s | 640 | 37.4 | - | 1.92 | 7.2 | 16.5 |
| YOLOv5m | 640 | 45.4 | - | 4.03 | 21.2 | 49.0 |
| YOLOv5l | 640 | 49.0 | - | 6.61 | 46.5 | 109.1 |
| YOLOv5x | 640 | 50.7 | - | 11.89 | 86.7 | 205.7 |
YOLOv5はNanoモデルでパラメーター数と実測速度の面で優位性を保っていますが、YOLOv8は全般的にmAPが大きく向上しており、厳しい実環境のデプロイシナリオにおいて、より優れた性能バランスを実現します。
使いやすさとUltralyticsエコシステム#
最新のUltralyticsモデルの特徴として、十分にメンテナンスされたエコシステムが挙げられます。YOLOv5からYOLOv8への移行に伴い、統合型のultralytics pipパッケージが導入され、非常に効率的なユーザーエクスペリエンスが実現しました。
開発者は数行のPythonコードだけで、モデルのトレーニング、検証、推論、エクスポートをシームレスに実行できます。これにより、従来のディープラーニングプロジェクトで必要とされていた複雑な定型スクリプトを使わずに済みます。
from ultralytics import YOLO
# 事前学習済みのYOLOv8モデルを読み込みます
model = YOLO("yolov8n.pt")
# カスタムデータでモデルを効率的にトレーニングします
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, device=0)
# 本番環境へのデプロイに向けて、モデルをONNXにエクスポートします
path = model.export(format="onnx")さらに、Ultralytics Platformなどのツールとの統合により、データセット管理、クラウドトレーニング、デプロイが簡素化され、活発な開発と強力なコミュニティサポートが実現します。
最適なユースケース#
YOLOv5を選ぶ場合: レガシーシステムの保守、Raspberry Piのような性能が大きく制約されたCPUでの推論、またはモデルサイズをわずかでも削減することが重要なプロジェクトに取り組む場合、YOLOv5は今も信頼できる実用的なモデルです。
YOLOv8を選ぶ場合: これから始めるほぼすべての新規プロジェクトでは、YOLOv5よりYOLOv8を強くおすすめします。高度なアーキテクチャにより、複雑なトラッキング、Oriented Bounding Box(OBB)、セグメンテーションを容易に処理できます。自律型ロボティクスから医用画像解析、スマートシティインフラまで、最新のアプリケーションに最適です。
YOLOv8は非常に高性能ですが、性能の最先端を求める開発者はYOLO26をご検討ください。2026年にリリースされたYOLO26には、画期的な技術がいくつか導入されています。
- エンドツーエンドNMSフリーデザイン: オプションのワンツーワンヘッド(
nms=False)により、NMSの後処理が不要になり、デプロイを高速化して簡素化できます。このコンセプトはYOLOv10で初めて導入されました。 - MuSGDオプティマイザー: SGDとMuonを組み合わせたハイブリッドで、LLMトレーニングの技術革新をコンピュータービジョンに応用し、トレーニングの安定性と収束速度を高めます。
- CPU推論が最大43%高速化: 専用GPUを搭載しないエッジコンピューティング環境向けに、高度に最適化されています。
- DFLの削除: Distribution Focal Lossを削除することで、エクスポートを簡素化し、エッジデバイスとの互換性を高めています。
- ProgLoss + STAL: Progressive LossとSmall-Target-Aware Label Assignmentにより、小物体の認識性能が大きく向上します。これは航空画像やIoTにおいて重要です。
Ultralyticsが提供する包括的なドキュメントとツールを活用すれば、YOLOv8を簡単にデプロイしたり、最先端のYOLO26を試したりして、複雑な視覚認識の課題をかつてない速度と精度で解決できます。さらに詳しく知りたい方は、ハイパーパラメーターのチューニングとモデルのデプロイ手法に関するガイドもご覧ください。