YOLOv7 PP-YOLOE+の比較:物体検出の技術比較
最適な物体検出アーキテクチャを選択することは、コンピュータビジョン開発において極めて重要な決定であり、下流のアプリケーションの性能と効率に大きく影響します。この分析では YOLOv7とPP-YOLOE+の2つの輝かしいモデルを深く技術的に掘り下げる。研究者やエンジニアが十分な情報を得た上で選択できるよう、アーキテクチャの革新性、トレーニング方法論、性能指標を検証します。
YOLOv7:リアルタイムのスピードと精度を定義する
YOLOv7は、You Only Look Once ファミリーの進化における重要なマイルストーンとして登場し、リアルタイム・アプリケーションのスピードと精度の限界を押し広げるように設計された。YOLOv7は、推論コストを増加させることなく特徴学習を改善するアーキテクチャ戦略を導入し、リリースと同時に事実上新たな最先端ベンチマークを設定した。
- 著者: Chien-Yao Wang、Alexey Bochkovskiy、Hong-Yuan Mark Liao
- 組織台湾中央研究院情報科学研究所
- Date: 2022-07-06
- ArXiv:https://arxiv.org/abs/2207.02696
- GitHub:https://github.com/WongKinYiu/yolov7
- ドキュメントhttps://docs.ultralytics.com/models/yolov7/
建築イノベーション
YOLOv77の設計の中核は、拡張効率的レイヤ集約ネットワーク(E-ELAN)である。この斬新なバックボーン・アーキテクチャは、最短と最長の勾配経路を制御し、勾配の流れを乱すことなく効率的に特徴を学習する。勾配経路を最適化することで、ネットワークは効率を維持しながらより深い学習能力を実現する。
さらにYOLOv7 、学習時に「bag-of-freebies」戦略を採用している。これは、推論エンジン段階で計算コストを増やすことなく精度を高める最適化手法である。この手法には、モデルの再パラメータ化(別個のモジュールを1つの別個のモジュールに統合して展開する)や、補助ヘッド監視のための粗いリードから細かいリードへのガイド付き損失が含まれる。
長所と短所
- 強み: YOLOv7 卓越したスピード対精度比を提供し、GPU上でのリアルタイム推論に非常に有効である。そのアンカーベースのアプローチは、以下のような標準的なデータセットにうまく調整されている。 COCO.
- 弱点 アンカーベースの検出器であるため、アンカーボックスの事前定義された設定が必要であり、通常とは異なるオブジェクトのアスペクト比を持つカスタムデータセットには最適でない可能性がある。また、ハードウェアの制約が大きく異なる場合にモデルを効率的に拡張することは、新しい反復処理と比較して複雑な場合があります。
PP-YOLOE+:アンカーなしの挑戦者
PP-YOLOE+は、バイドゥがPaddleDetectionスイートの一部として開発したPP-YOLOEの進化版である。PP-YOLOE+は、検出パイプラインを簡素化し、開発者がチューニングする必要のあるハイパーパラメータの数を減らすことを目的とした、アンカーフリーのアーキテクチャを採用している点が特徴である。
- 著者: PaddlePaddle Authors
- 組織百度
- Date: 2022-04-02
- ArXiv:https://arxiv.org/abs/2203.16250
- GitHub:https://github.com/PaddlePaddle/PaddleDetection/
- ドキュメントhttps://github.com/PaddlePaddle/PaddleDetection/blob/release/2.8.1/configs/ppyoloe/README.md
建築イノベーション
PP-YOLOE+は、アンカーボックスのクラスタリングを必要としない、アンカーフリーの検出メカニズムを採用しています。CSPRepResNetのバックボーンと簡素化されたヘッド設計を利用している。PP-YOLOE+の性能の鍵となるのは、タスク・アライメント学習(TAL)であり、分類とローカライゼーションの品質の整合性に基づいて、正サンプルを動的に割り当てる。
また、このモデルにはVariFocal Lossが統合されている。VariFocal Lossは、高品質な例の学習を優先するように設計された特殊な損失関数である。バージョン "+"では、頸部と頭部の構造が強化され、特徴ピラミッドが最適化され、より優れたマルチスケール検出が可能になりました。
長所と短所
- 長所:アンカーを使わない設計により、トレーニングのセットアップが簡素化され、多様なオブジェクト形状に対する汎化が向上。様々なサイズ(s, m, l, x)に対応し、PaddlePaddle フレームワークに最適化されている。
- 弱点: PaddlePaddle エコシステムに依存しているため、PaddlePaddle エコシステムで確立されたチームとの間に摩擦が生じる可能性がある。 PyTorchまたは TensorFlowエコシステム。中国以外のコミュニティーのサポートやサードパーティーのツールは、グローバルなYOLO コミュニティーと比べると、一般的にあまり充実していない。
パフォーマンス比較
これらのモデルを比較する場合、平均平均精度(mAP)と推論待ち時間のバランスを見ることが重要です。以下の表は、COCO データセットにおける主要メトリクスをハイライトしたものです。
| モデル | サイズ (ピクセル) | mAP値 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 |
分析
観察されたように、YOLOv7lは、TensorRT 速度6.84 msで51.4%のmAP 達成し、素晴らしい効率を示した。対照的に、PP-YOLOE+lは52.9%のmAP 達成しましたが、速度は8.36msと遅く、パラメータは52.2M対36.9Mと大幅に多くなっています。これは、YOLOv7同程度の精度レベルにおいて、パラメータの使用効率と推論速度において優れていることを示しています。PP-YOLOE+xは精度の限界を押し上げる一方で、同等のYOLO モデルの2倍近いパラメータを必要とします。
Ultralytics 優位性なぜモダナイズするのか?
YOLOv7 PP-YOLOE+は有能なモデルですが、コンピュータビジョンの分野は急速に進歩しています。Ultralytics 最新モデル、例えば YOLO11のような最新のUltralyticsモデルを採用することで、未加工の指標を超えた明確な利点が得られます。
1.合理化されたユーザー・エクスペリエンス
Ultralytics 使いやすさを優先しています。他のフレームワークでしばしば必要とされる複雑な設定ファイルや依存関係の管理とは異なり、Ultralytics モデルは数行のPython採用できます。これにより、開発者の参入障壁が低くなり、モデルのデプロイサイクルがスピードアップします。
2.統一されたエコシステムと多用途性
最新のUltralytics モデルは、物体検出に限定されない。単一のフレームワークの中で、幅広いタスクをネイティブにサポートしている:
- インスタンス分割:正確なピクセルレベルのオブジェクトマスキング。
- 姿勢推定:人体や動物のキーポイントを検出する。
- オリエンテッドオブジェクト検出(OBB):航空画像中の船舶のような回転したオブジェクトを扱う。
- 分類:画像全体の分類。
この汎用性により、チームは複数のコンピュータ・ビジョン・タスクに対して1つのライブラリを標準化することができ、メンテナンスが簡素化される。
3.トレーニングと記憶効率
Ultralytics モデルは、メモリ効率のために設計されています。一般的に、古いアーキテクチャや以下のようなトランスフォーマーベースのモデルと比べて、トレーニング時に必要なVRAMが少なくて済みます。 RT-DETR.これにより、標準的なコンシューマーGPUでより大きなバッチサイズのトレーニングが可能になり、より多くの研究者が高性能モデルの作成にアクセスできるようになります。
4.コードの例現代的な方法
最新のUltralytics モデルによる推論の実行は直感的です。以下はYOLO11使用した完全で実行可能な例で、事前訓練されたモデルをロードして予測を実行するのに必要なコードがいかに少ないかを示しています。
from ultralytics import YOLO
# Load the YOLO11n model (nano version for speed)
model = YOLO("yolo11n.pt")
# Run inference on a local image
# This automatically downloads the model weights if not present
results = model("https://ultralytics.com/images/bus.jpg")
# Process results
for result in results:
boxes = result.boxes # Boxes object for bbox outputs
result.show() # Display results on screen
result.save(filename="result.jpg") # Save results to disk
5.整備された生態系
Ultralytics 選択することは、活気あるコミュニティに参加することを意味します。頻繁なアップデート、豊富なドキュメント、Ultralytics HUBのようなMLOpsツールとの統合により、開発者はAIプロジェクトのライフサイクル全体を通してサポートされます。
結論
両方 YOLOv7とPP-YOLOE+は、物体検出の分野に大きく貢献してきた。YOLOv7 、その効率的なE-ELANアーキテクチャにより、GPU ハードウェア上で高速推論を行うことに優れています。PP-YOLOE+は、PaddlePaddle エコシステムの中で特に強力な、堅牢なアンカーフリーの代替手段を提供します。
しかし、最先端のパフォーマンスと比類のない使いやすさのバランスが取れた、将来性のあるソリューションを求めている開発者にとっては、Ultralyticsは非常に便利なソリューションです、 Ultralytics YOLO11をお勧めします。包括的なエコシステムへの統合、マルチモーダルなタスクのサポート、優れた効率性により、2025年以降にスケーラブルなコンピュータビジョンアプリケーションを構築するための理想的なプラットフォームとなっています。
その他のモデルを見る
これらの比較により、物体検出の状況について理解を深めてください: