YOLOv7 vs PP-YOLOE+:物体検出に関する技術比較
適切な物体検出モデルの選択は、コンピュータビジョンにおける重要な決定であり、精度、速度、および計算リソースの慎重なバランスが必要です。このページでは、この分野で高いベンチマークを設定した2つの影響力のあるモデルであるYOLOv7とPP-YOLOE+の詳細な技術比較を提供します。アーキテクチャ設計、パフォーマンス指標、およびプロジェクトに関する情報に基づいた選択を行うのに役立つ理想的なユースケースについて説明します。
YOLOv7:速度と精度に最適化
YOLOv7は、リアルタイム推論速度と高精度の間の卓越したバランスで称賛される、YOLOファミリーの重要なマイルストーンを表しています。リリース当時、物体検出器で可能であったことの境界を押し広げる、斬新なアーキテクチャとトレーニングの最適化が導入されました。
- 著者: Chien-Yao Wang、Alexey Bochkovskiy、Hong-Yuan Mark Liao
- 組織: 台湾 Academia Sinica 情報科学研究所
- Date: 2022-07-06
- ArXiv: https://arxiv.org/abs/2207.02696
- GitHub: https://github.com/WongKinYiu/yolov7
- ドキュメント: https://docs.ultralytics.com/models/yolov7/
アーキテクチャと主な機能
YOLOv7のアーキテクチャには、論文で詳述されているいくつかの重要な革新が組み込まれています。その主な貢献の一つは、Extended Efficient Layer Aggregation Network (E-ELAN)です。これは、勾配パスを中断することなくネットワークの学習能力を高め、より効果的な特徴抽出を可能にする、新しいバックボーン設計です。
さらに、YOLOv7は「trainable bag-of-freebies」アプローチを採用しています。これには、推論中の計算コストを追加することなく検出精度を向上させる、粗から微へのリードガイド損失などの高度な最適化手法とトレーニング戦略の使用が含まれます。このモデルは、再パラメータ化手法を利用して、トレーニング完了後のデプロイメントのために、より効率的なアーキテクチャを作成します。
パフォーマンスとユースケース
YOLOv7は、特に精度を大幅に損なうことなく高速処理が要求されるシナリオにおいて、その卓越したパフォーマンスで高く評価されています。その効率性により、GPUハードウェアでのリアルタイム推論に最適です。
理想的なアプリケーション:
- 自律システム: 安全のために低遅延性が不可欠な自動運転車やドローンの認識システムを強化。
- セキュリティと監視: ライブビデオフィードでの即時の脅威検出のために、高度なセキュリティシステムで使用されます。
- ロボティクス: ロボットがリアルタイムで環境を認識し、相互作用することを可能にし、製造およびロジスティクスの自動化に不可欠。
長所と短所
- 長所: 最先端の速度と精度のトレードオフ、GPU推論に非常に効率的なアーキテクチャ、パフォーマンスを向上させる高度な学習戦略。
- 弱点: アンカーベースのモデルであるため、カスタムデータセットで最適なパフォーマンスを得るには、アンカーボックスの構成を慎重に調整する必要がある場合があります。大規模なバリアントのトレーニングプロセスは、計算負荷が高くなる可能性があります。
PP-YOLOE+: アンカーフリーで汎用
PP-YOLOE+ は、Baiduによって開発された、PaddleDetectionスイートの高性能なアンカーフリー検出器です。アンカーボックスを排除することで検出パイプラインを簡素化しながら、さまざまなモデルサイズにわたるスケーラビリティと強力なパフォーマンスで際立っています。
- 著者: PaddlePaddle Authors
- 組織: Baidu
- Date: 2022-04-02
- ArXiv: https://arxiv.org/abs/2203.16250
- GitHub: https://github.com/PaddlePaddle/PaddleDetection/
- Docs: https://github.com/PaddlePaddle/PaddleDetection/blob/release/2.8.1/configs/ppyoloe/README.md
PP-YOLOE+ ドキュメンテーション (PaddleDetection)
アーキテクチャと主な機能
PP-YOLOE+の核となる革新は、アンカーフリー設計です。これにより、事前定義されたアンカーボックスとそれに関連するハイパーパラメータが不要になり、モデルが簡素化されます。これにより、モデルの柔軟性が高まり、さまざまなオブジェクトの形状やサイズに簡単に適応できるようになります。分類タスクとローカリゼーションタスクのために分離されたヘッドを備えており、2つの間の最適化の競合を解決するのに役立ちます。このモデルは、トレーニング中に難しい例を優先するために、特殊な損失関数であるVariFocal Lossも利用しています。「+」バージョンには、パフォーマンスを向上させるために、バックボーン、ネック(Path Aggregation Network)、およびヘッドの機能強化が含まれています。
パフォーマンスとユースケース
PP-YOLOE+ は、速度と精度の間で柔軟なトレードオフを提供するモデルファミリー(t、s、m、l、x)を提供します。このスケーラビリティにより、リソースが限られた エッジデバイス から強力なクラウドサーバーまで、さまざまなハードウェア制約に適応できます。
理想的なアプリケーション:
- 産業オートメーション: スピードと精度のバランスが求められる製造業における品質検査に適しています。
- 小売分析: 棚の在庫管理や顧客行動分析に活用できます。
- 環境モニタリング: その効率性から、自動リサイクルや廃棄物選別などの用途に役立ちます。
長所と短所
- 長所: アンカーフリー設計により、アーキテクチャと学習プロセスが簡素化されます。複数のモデルサイズで優れたスケーラビリティを提供し、高い精度と速度のバランスを実現します。
- 弱点: このモデルは主にPaddlePaddle深層学習フレームワーク用に設計されており、PyTorchベースのワークフローへの統合には追加の労力がかかる場合があります。そのコミュニティとサードパーティツールのサポートは、YOLOファミリーのものよりも広範囲ではありません。
直接対決パフォーマンス比較
YOLOv7とPP-YOLOE+を比較すると、多くの場合、特定のパフォーマンス要件とハードウェアによって選択が異なります。YOLOv7は一般的にGPUで最大のスループットを提供することに優れており、高いFPSメトリックに見られます。一方、PP-YOLOE+はより詳細なモデルの選択を提供し、開発者は必要な正確なトレードオフポイントを選択できます。たとえば、PP-YOLOE+sは非常に高速ですが、PP-YOLOE+xは速度を犠牲にして非常に高いmAPを達成します。
モデル | サイズ (ピクセル) |
mAPval 50-95 |
速度 CPU ONNX (ms) |
速度 T4 TensorRT10 (ms) |
params (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
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 |
Ultralytics YOLOがより良い選択である理由
YOLOv7とPP-YOLOE+はいずれも強力なモデルですが、最新の汎用性の高い、ユーザーフレンドリーなフレームワークを求める開発者や研究者は、Ultralyticsエコシステム、特にUltralytics YOLOv8や最新のYOLO11のようなモデルに優れた価値を見出すでしょう。
Ultralytics YOLO モデルが優れている理由:
- 使いやすさ: Ultralyticsは、トレーニング、検証、およびデプロイメントを非常に簡単にする、効率化されたpython APIとCLIを提供します。これは、豊富なドキュメントと多数のチュートリアルによってサポートされています。
- 優れたメンテナンス体制: これらのモデルは、活発な開発、大規模なオープンソースコミュニティ、そしてシームレスなMLOpsのためのUltralytics HUBのようなツールとの統合を含む、包括的なエコシステムの一部です。
- 多様性: YOLOv8やYOLO11のようなUltralyticsモデルは、物体検出に限定されません。インスタンスセグメンテーション、ポーズ推定、分類、傾斜バウンディングボックス(OBB)検出などの他の主要な画像処理タスクに対する組み込みサポートを提供し、統合されたソリューションを提供します。
- パフォーマンスと効率性: Ultralyticsモデルは、速度と精度の最適なバランスを実現するように設計されています。また、メモリ効率にも優れており、トレーニングや推論に必要なCUDAメモリが他のアーキテクチャよりも少ないことが多く、これは大きな利点となります。
- Training Efficiency: COCOなどのデータセットですぐに利用できる事前学習済みウェイトと効率的なトレーニングプロセスにより、高性能なカスタムモデルの取得がより迅速かつアクセスしやすくなります。
結論
YOLOv7は、リアルタイムなGPUパフォーマンスが最優先されるアプリケーションにとって、非常に有力な選択肢です。PP-YOLOE+は、優れたスケーラビリティと簡素化されたアンカーフリーのアプローチを提供しますが、PaddlePaddleフレームワークへの依存は、多くの開発者にとって制約となる可能性があります。
ただし、最新のアプリケーションのほとんどにとって、YOLOv8やYOLO11のようなUltralyticsモデルは、より魅力的で将来性のあるオプションです。最先端のパフォーマンスと、比類のないユーザーエクスペリエンス、広範なタスクサポート、堅牢で適切にメンテナンスされたエコシステムを兼ね備えています。これにより、高品質のコンピュータビジョンソリューションを効率的に構築および展開しようとしている開発者や研究者にとって理想的な選択肢となります。
その他のモデルを見る
さらに検討を深めるには、YOLOv7、PP-YOLOE+、およびその他の主要モデルを含むこれらの比較をご検討ください。
- YOLOv7 vs YOLOv8
- PP-YOLOE+ vs. YOLOv8
- YOLOX 対 YOLOv7
- RT-DETR vs. YOLOv7
- YOLOv10やYOLO11のような最新モデルをご覧ください。