Link to this sectionYOLOv9 vs PP-YOLOE+ の比較#
リアルタイム物体検出の分野は急速に進歩し続けており、コンピュータビジョンエンジニアは、エッジおよびクラウドインフラストラクチャ上で高精度なモデルを展開するための幅広い選択肢を手に入れています。この分野における2つの主要なモデルが YOLOv9 と PP-YOLOE+ です。どちらも精度と速度の限界を押し広げていますが、それぞれ異なる研究系統とソフトウェアエコシステムから誕生しています。
本技術比較では、両モデルのアーキテクチャ、トレーニング手法、パフォーマンス指標、および理想的な実世界でのアプリケーションについて包括的に解説します。また、使いやすさ、メモリ効率、汎用的なデプロイを重視する開発者にとって、より広範な Ultralytics エコシステム がどのように大きな利点をもたらすかについても触れます。
Link to this sectionモデルの起源と技術仕様#
これらのモデルの背景を理解することは、アーキテクチャ上の決定やフレームワークの依存関係を文脈化するのに役立ちます。
Link to this sectionYOLOv9: 情報ボトルネックの解決#
2024年初頭に導入されたYOLOv9は、ディープニューラルネットワーク内を情報が流れる際に発生するデータ損失の問題に取り組みます。これは、パラメータ効率を最大化するために設計された、高度に最適化された 畳み込みニューラルネットワーク (CNN) です。
- 著者: Chien-Yao Wang, Hong-Yuan Mark Liao
- 組織: 台湾 中央研究院 情報科学研究所
- 日付: 2024年2月21日
- Arxiv: 2402.13616
- GitHub: WongKinYiu/yolov9
- ドキュメント: Ultralytics YOLOv9 ドキュメント
Link to this sectionPP-YOLOE+: Paddleエコシステムの推進#
2022年にBaiduによってリリースされたPP-YOLOE+は、PP-YOLOv2の反復的な改善版です。アンカーフリーのパラダイムを採用し、PaddlePaddleフレームワーク 内での収束性と精度を向上させるために、動的なラベル割り当て戦略を導入しています。
- 著者: PaddlePaddle 著者陣
- 組織: Baidu
- 日付: 2022年4月2日
- Arxiv: 2203.16250
- GitHub: PaddleDetection
- ドキュメント: PP-YOLOE+ 設定
Link to this sectionアーキテクチャの比較#
Link to this sectionProgrammable Gradient Information vs. CSPRepResStage#
YOLOv9の核となるイノベーションは Programmable Gradient Information (PGI) です。PGIは補助的な教師フレームワークとして機能し、トレーニング中に重要な勾配情報が保持され、浅いレイヤーまで正確に伝播されることを保証します。これに、CSPNet と ELAN の強みを組み合わせた Generalized Efficient Layer Aggregation Network (GELAN) が組み合わされており、計算コスト (FLOPs) を劇的に削減しながら高い精度を実現します。
PP-YOLOE+は CSPRepResStage と呼ばれる特化されたバックボーンに依存しています。これは、デプロイ時に畳み込み層をマージすることで推論を高速化する、(RepVGGに見られるような) 再パラメータ化技術を活用しています。さらに、Efficient Task-aligned head (ET-head) を使用して、分類タスクと回帰タスクのバランスをとっています。
PP-YOLOE+は堅牢ですが、YOLOv9のGELANアーキテクチャは通常、トレーニングと推論の両方で メモリフットプリントが小さく、エッジAIデバイス に非常に適しています。
Link to this sectionパフォーマンスの比較#
本番環境向けにモデルを評価する際、mAP (mean Average Precision)、推論速度、およびモデルサイズの間のトレードオフは極めて重要です。
| モデル | サイズ (ピクセル) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | パラメータ (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
| 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 |
Link to this section分析#
- パラメータ効率: YOLOv9は非常に高い効率を実現しています。例えば、YOLOv9cはわずか25.3Mのパラメータで53.0%のmAPを達成しますが、PP-YOLOE+lは52.9%というわずかに低いmAPを達成するためにその2倍以上のパラメータ (52.2M) を必要とします。これにより、YOLOv9はメモリ要件を劇的に引き下げます。
- 推論速度: YOLOv9モデルは、TensorRT などのハードウェアアクセラレータ向けに優れた最適化が施されており、NVIDIA T4 GPU上で リアルタイム推論 に不可欠な競争力のある推論速度を実現します。
Link to this sectionトレーニング方法論とエコシステム#
これらのモデルのどちらを選択するかは、多くの場合、ソフトウェアエコシステムにかかっています。
Link to this sectionPP-YOLOE+ と PaddlePaddle#
PP-YOLOE+ は PaddleDetection スイートと密接に統合されています。強力ではありますが、設定が複雑でコマンドライン主導の環境を操作する必要があります。PyTorch や TensorFlow エコシステムに深く根ざしたチームにとって、PaddlePaddleへの移行は大きな摩擦と高い学習コストをもたらします。
Link to this sectionUltralyticsの利点: 洗練されたワークフロー#
対照的に、YOLOv9は非常に洗練された Ultralytics エコシステム 内で動作します。開発者や研究者のために設計されたUltralyticsは、卓越した使いやすさを優先しています。Python API は、複雑な定型コードを完全に抽象化します。
from ultralytics import YOLO
# Load a pre-trained YOLOv9 model
model = YOLO("yolov9c.pt")
# Train on a custom dataset effortlessly
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, device=0)
# Run inference and visualize results
results = model("https://ultralytics.com/images/bus.jpg")
# Export to ONNX for production deployment
model.export(format="onnx")このワークフローは、Ultralyticsモデルの優れた トレーニング効率 を際立たせています。データ拡張、分散トレーニング、および Weights & Biases や MLflow などのプラットフォームへの自動ログ記録が標準でサポートされています。
YOLOv9は卓越したパフォーマンスを提供しますが、新規プロジェクトにはリリースされたばかりの Ultralytics YOLO26 の採用を強く推奨します。YOLO26はネイティブな エンドツーエンドのNMSフリー設計 を特徴としており、デプロイを劇的に簡素化します。DFL Removal (エクスポートの簡素化とエッジ/低電力デバイスとの互換性向上のためにDistribution Focal Lossを削除) により、エッジコンピューティングにおいて最大 43%高速なCPU推論 を実現します。MuSGD オプティマイザ を搭載し、安定したトレーニングと高速な収束を保証します。さらに、ProgLoss + STAL は、IoT、ロボティクス、航空写真にとって重要な小物体認識において顕著な改善を伴う改良された損失関数を提供します。
Link to this section汎用性とタスクサポート#
現代のコンピュータビジョンプロジェクトで、単純なバウンディングボックスだけで完結することは稀です。
PP-YOLOE+ は主に標準的な物体検出向けに設計されています。そのアーキテクチャを他のタスクに適応させるには、広範なカスタムエンジニアリングが必要です。
逆に、Ultralyticsフレームワークはマルチタスクの強力なツールです。統合されたAPIを利用することで、開発者は標準的な物体検出から、複雑な インスタンスセグメンテーション、高精度な 姿勢推定、航空写真用の 指向性バウンディングボックス (OBB) 検出、および画像 分類 へと楽に切り替えることができます。この比類のない汎用性こそが、エンタープライズチームがUltralyticsモデル (YOLOv9、YOLO11、YOLO26など) を一貫して選択する理由です。
Link to this section理想的なユースケースとアプリケーション#
- スマートシティ分析および交通管理: YOLOv9 (および後継のYOLO26) の高いパラメータ効率と低遅延は、交通流 や都市のセキュリティを監視するために、制約のあるエッジハードウェア (NVIDIA Jetsonデバイスなど) に展開するのに最適です。
- 小売在庫システム: 棚上の小さなアイテムの密集状態を検出する場合、YOLOv9のPGIはきめ細かな空間の詳細を効果的に維持し、小物体検出タスクにおいてPP-YOLOE+を上回ります。
- レガシーデプロイ: PP-YOLOE+ は、既存のレガシーインフラストラクチャ内でBaidu/PaddlePaddleソフトウェアスタックの使用を明示的に義務付けられているチームにとって、依然として実行可能な選択肢です。
Transformerベースのアーキテクチャを研究している研究者向けに、Ultralyticsは全く同じ使いやすいAPI内で RT-DETR をネイティブサポートしており、特定のデプロイ要件に最適なモデルに常にアクセスできるようにしています。