YOLOv5 と PP-YOLOE+ の比較#
適切なニューラルネットワークアーキテクチャの選択は、現代のコンピュータビジョンプロジェクトに不可欠です。開発者や研究者がリアルタイム物体検出用のモデルを評価する際、精度、推論速度、デプロイの容易さのバランスが判断の決め手になることがよくあります。この技術比較では、YOLOv5 と PP-YOLOE+ のアーキテクチャ、パフォーマンス指標、トレーニング手法を検証し、アプリケーションに最適なソリューションを選択できるようにします。
アーキテクチャの理解#
両モデルはビジョンAIの分野に大きな影響を与えていますが、物体検出の課題に対して異なる構造的手法とフレームワーク依存関係で取り組んでいます。
Ultralytics YOLOv5:業界標準#
2020年半ばにリリースされた Ultralytics YOLOv5 は、最先端のビジョンモデルを利用しやすくしました。YOLOファミリーで初めてネイティブの PyTorch 実装を採用したことで、世界中の Python 開発者やMLエンジニアにとっての導入障壁を大幅に下げました。
YOLOv5の詳細:
- 著者: Glenn Jocher
- 組織: Ultralytics
- 日付: 2020-06-26
- GitHub: ultralytics/yolov5
- ドキュメント: YOLOv5 Documentation
YOLOv5 は改良型 CSPDarknet バックボーンを使用し、軽量なパラメータ数を維持しながら豊かな特徴表現を効率的に捉えます。また、トレーニング開始前にカスタムデータセットに最適なアンカーの寸法を自動計算する、アンカーボックスの自動学習機能を導入しました。さらに、モザイクデータ拡張の統合により、小さな物体の検出能力と複雑な空間コンテキストへの汎化性能が大幅に向上します。
YOLOv5 の最大の強みの一つは、非常に高い汎用性です。標準的な物体検出器とは異なり、YOLOv5 ファミリーは統合された API 内で、画像分類、インスタンスセグメンテーション、バウンディングボックス検出をシームレスにサポートします。高度に最適化されたアーキテクチャにより、重量級のTransformerベースネットワークと比べて、トレーニング時と推論時のメモリ使用量も大幅に削減されます。
PP-YOLOE+:PaddlePaddle の有力モデル#
約2年後に登場した PP-YOLOE+ は、従来の PP-YOLO シリーズの基盤を発展させたモデルです。Baidu のディープラーニングフレームワークの能力を示すために開発され、平均適合率を向上させる複数のアーキテクチャ改良を導入しています。
PP-YOLOE+ の詳細:
- 著者: PaddlePaddle Authors
- 組織: Baidu
- 日付: 2022-04-02
- Arxiv: 2203.16250
- GitHub: PaddlePaddle/PaddleDetection
- ドキュメント: PP-YOLOE+ README
PP-YOLOE+ はアンカーフリーの方式を採用し、CSPRepResNet バックボーンを使用します。高精度化のため、強力なTask Alignment Learning手法とEfficient Task-aligned Headを組み込んでいます。PP-YOLOE+ は優れた精度スコアを達成する一方で、主な弱点は PaddlePaddle フレームワークへの厳格な依存にあります。そのため、すでに PyTorch や TensorFlow 環境に深く投資している研究チームや企業にとって、学習曲線が急になり、エコシステム上の摩擦が生じることがあります。
パフォーマンスとベンチマーク#
本番環境向けにこれらのモデルを評価する際は、精度、推論速度、パラメータ規模のトレードオフを理解することが重要です。以下の表では、サイズの異なるバリアントにおける主要なパフォーマンス指標を示します。
| モデル | サイズ (ピクセル) | 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 |
| PP-YOLOE+t | 640 | 39.9 | - | 2.84 | 4.85 | 19.15 |
| PP-YOLOE+s | 640 | 43.7 | - | 2.62 | 7.93 | 17.36 |
| PP-YOLOE+m | 640 | 49.8 | - | 5.56 | 23.43 | 49.91 |
| PP-YOLOE+l | 640 | 52.9 | - | 8.36 | 52.2 | 110.07 |
| PP-YOLOE+x | 640 | 54.7 | - | 14.3 | 98.42 | 206.59 |
PP-YOLOE+ は高い精度上限を達成しますが、YOLOv5 は制約のあるハードウェア上で、パラメータ効率と推論速度の両面で一貫して優れています。メモリが限られるエッジ環境では、YOLOv5n が比類のない速度と極めて小さなフットプリントを提供します。
Ultralytics のモデルは、トレーニング効率を重視して設計されています。RT-DETR のような重量級のビジョンTransformerと比較して、YOLOv5 は CUDA メモリの使用量が大幅に少ないため、より大きなバッチサイズや一般的なコンシューマー向けハードウェアでトレーニングできます。
Ultralyticsの強み:エコシステムと使いやすさ#
機械学習アーキテクチャの真の価値は、単なる数値だけにとどまらず、開発者体験全体に及びます。Ultralytics Platform と対応するオープンソースツールは、高度に洗練され、適切に保守されたエコシステムを提供し、開発サイクルを大幅に加速します。
- 使いやすさ: Ultralytics は複雑なボイラープレートコードを抽象化します。直感的な Python API または CLI を使用して、モデルのトレーニング、検証、テストを実行できます。
- デプロイの柔軟性: モデルのエクスポートは非常に簡単です。1つのコマンドで、トレーニング済みの YOLOv5 の重みを ONNX、TensorRT、OpenVINO などの形式に変換でき、エッジ環境とクラウド環境の幅広い互換性を確保できます。
- 活発なコミュニティ: 活発なコミュニティにより、頻繁なアップデート、充実したドキュメント、一般的なコンピュータビジョンの課題に対する堅牢な解決策が提供されます。
これに対して、PP-YOLOE+ は PaddleDetection 固有の複雑な設定ファイルに大きく依存するため、迅速なプロトタイピングが遅れたり、最新の MLOps パイプラインへの統合が複雑になったりする可能性があります。
実践的な実装とコード例#
Ultralytics の使い始め方は非常に簡単です。以下に、事前トレーニング済みの YOLOv5 モデルを読み込み、カスタムデータセットでトレーニングし、結果をエクスポートする、完全に実行可能な例を示します。
from ultralytics import YOLO
# Load a pretrained YOLOv5 small model
model = YOLO("yolov5s.pt")
# Train the model on the COCO8 dataset for 50 epochs
train_results = model.train(data="coco8.yaml", epochs=50, imgsz=640)
# Run inference on a sample image
predict_results = model("https://ultralytics.com/images/bus.jpg")
# Export the optimized model to ONNX format
path = model.export(format="onnx")ユースケースと推奨事項#
YOLOv5 と PP-YOLOE+ のどちらを選ぶかは、具体的なプロジェクト要件、デプロイ上の制約、エコシステムに関する preference によって決まります。
YOLOv5を選ぶべきケース#
YOLOv5 は次の用途に適しています:
- 実績のある本番システム: YOLOv5の長年にわたる安定性の実績、豊富なドキュメント、広範なコミュニティサポートが重視される既存のデプロイ環境。
- リソースに制約のあるトレーニング: YOLOv5の効率的なトレーニングパイプラインと少ないメモリ要件が有利になる、GPUリソースが限られた環境。
- 幅広いエクスポート形式のサポート: ONNX、TensorRT、CoreML、TFLiteなど、多数の形式にまたがるデプロイが必要なプロジェクト。
PP-YOLOE+ を選択するケース#
PP-YOLOE+ は次の用途に推奨されます。
- PaddlePaddle エコシステムとの統合: 既存のインフラストラクチャがBaidu の PaddlePaddleフレームワークとツールで構築されている組織。
- Paddle Lite エッジデプロイ: Paddle Lite または Paddle 推論エンジン向けに特別に最適化された推論カーネルを備えるハードウェアへのデプロイ。
- 高精度なサーバーサイド検出: フレームワークへの依存が問題にならず、高性能 GPU サーバー上で最大限の検出精度を優先するシナリオ。
Ultralytics (YOLO26)を選ぶタイミング#
ほとんどの新規プロジェクトでは、Ultralytics YOLO26が性能と開発者エクスペリエンスの最適な組み合わせを提供します。
- NMSフリーのエッジデプロイ: Non-Maximum Suppressionの後処理を複雑にすることなく、一貫した低レイテンシー推論が必要なアプリケーション。
- CPUのみの環境: 専用GPUアクセラレーションを持たないデバイスで、YOLO26の最大43%高速なCPU推論が決定的な優位性となる場合。
- 小さな物体の検出: aerial drone imageryやIoTセンサー分析など、ProgLossとSTALによって微小物体の精度が大幅に向上する難しいシナリオ。
検討すべき代替の最先端モデル#
YOLOv5 は堅牢で実績のある標準モデルですが、コンピュータビジョンの分野は急速に進化しています。新しいプロジェクトを始めるチームには、より新しいアーキテクチャの検討を強くお勧めします。
Ultralytics YOLO26#
2026年1月にリリースされた YOLO26 は、私たちの研究成果の頂点に位置するモデルです。精度と速度の両方を大幅に向上させています。主なイノベーションは次のとおりです。
- エンドツーエンドのNMSフリーデザイン: YOLOv10 の概念を基盤として、YOLO26 は後処理における Non-Maximum Suppression (NMS) をネイティブに排除し、レイテンシを削減するとともにデプロイロジックを簡素化します。
- DFLの削除: Distribution Focal Loss を取り除くことで、YOLO26 は CPU 推論を最大43%高速化し、低消費電力のエッジデバイスで非常に高い性能を発揮します。
- MuSGD オプティマイザー: 高度な LLM トレーニング手法に着想を得た SGD と Muon のハイブリッドにより、トレーニングを非常に安定させ、より高速な収束を実現します。
- ProgLoss + STAL: これらの高度な損失関数により、小さな物体の認識性能が大幅に向上します。これは、ドローン画像やスマート農業において重要です。
さらに、優れたパフォーマンスを提供し、従来のシステムと YOLO26 の最先端の機能をつなぐ、非常に信頼性の高い橋渡し役となる YOLO11 も検討できます。
実世界でのユースケース#
YOLOv5 と PP-YOLOE+ の選択は、最終的にはデプロイ環境とプロジェクトの制約によって決まります。
YOLOv5の理想的な用途: YOLOv5は、最小限のリソース要件と圧倒的な使いやすさにより、エッジAIの主要な選択肢となります。リアルタイムロボティクス、モバイルアプリケーション統合、マルチカメラ交通監視システムなど、限られたハードウェアで高フレームレートが求められるアプリケーションで優れた性能を発揮します。同一のフレームワーク内でインスタンスセグメンテーションと画像分類を処理できるため、適応性が非常に高くなっています。
PP-YOLOE+ に適したアプリケーション: PP-YOLOE+ は、リアルタイム処理の制約よりも静止画像での絶対的な最大精度が優先されるシナリオに最適です。特に、Baidu と PaddlePaddle のエコシステムに大きく投資した既存の技術スタックを持つアジアの製造業など、産業検査パイプラインでニッチな用途があります。
まとめると、PP-YOLOE+ は高い精度ベンチマークを達成しますが、Ultralytics YOLO モデルは、パフォーマンスのバランス、シームレスなデプロイ、開発者に優しい設計を他に類を見ない形で組み合わせ、コンピュータビジョンプロジェクトを構想から本番環境まで成功に導きます。