PP-YOLOE+ vs YOLOX#
コンピュータービジョンの分野は、物体検出モデルの急速な進化によって大きく形作られてきました。この進展における注目すべきマイルストーンとして、PP-YOLOE+とYOLOXという、リアルタイム性能と精度の限界を押し広げた2つのアーキテクチャが挙げられます。次世代の画像認識システムを構築する研究者や開発者にとって、両者のアーキテクチャ上の特徴、性能面でのトレードオフ、理想的なデプロイシナリオを理解することは重要です。
モデルの系譜と詳細#
技術的なアーキテクチャを詳しく見ていく前に、両モデルの起源を整理しておくとよいでしょう。どちらも、支援組織の影響を強く受けながら、物体検出における特定のボトルネックに対処するために開発されました。
PP-YOLOE+ の詳細:
- 著者: PaddlePaddle Authors
- 組織: Baidu
- 日付: 2022-04-02
- Arxiv: https://arxiv.org/abs/2203.16250
- GitHub: https://github.com/PaddlePaddle/PaddleDetection/
- ドキュメント: PaddleDetection PP-YOLOE+ README
YOLOXの詳細:
- 著者: Zheng Ge、Songtao Liu、Feng Wang、Zeming Li、Jian Sun
- 組織: Megvii
- 日付: 2021-07-18
- Arxiv: https://arxiv.org/abs/2107.08430
- GitHub: https://github.com/Megvii-BaseDetection/YOLOX
- ドキュメント: YOLOX公式ドキュメント
アーキテクチャのイノベーション#
これら2つの検出器の主な違いは、特徴抽出とバウンディングボックス予測へのアプローチにあります。
YOLOXは、YOLOファミリーをアンカーフリー設計に適応させることに成功し、2021年に大きな注目を集めました。アンカーボックスを排除することで、YOLOXはカスタムデータセットに必要な設計パラメーターとヒューリスティックなチューニングの数を大幅に削減しました。さらに、分類タスクとローカリゼーションタスクを別々のニューラルパスウェイに分離する、デカップルドヘッドを導入しました。この分離により、オブジェクトの分類と空間座標の回帰の間にある本質的な競合が解消され、トレーニング中の収束が高速化されました。
Baiduが開発した**PP-YOLOE+**は、PaddlePaddleエコシステム向けに高度に最適化されています。前身のPP-YOLOv2を基盤として、動的ラベル割り当て戦略(TAL)と、CSPRepResNetと呼ばれる新しいバックボーンを導入しています。このバックボーンは構造的再パラメーター化を活用し、トレーニング中は複雑なマルチブランチアーキテクチャの利点を生かしながら、推論時には高速なシングルパスネットワークへシームレスに統合できます。
構造的再パラメーター化により、モデルは複数の並列ブランチでトレーニングして勾配フローを改善し、その後、デプロイ時にはそれらのブランチを数学的に単一の畳み込み層へ統合できます。これにより、精度を犠牲にすることなく推論速度を向上させられます。
パフォーマンスとメトリクスの比較#
これらのモデルを直接比較すると、性能スペクトル上でそれぞれがわずかに異なる目的に適していることが明らかになります。一般にPP-YOLOE+は絶対精度で上回る一方、YOLOXはハードウェアの制約が非常に厳しい環境に適した、極めて軽量なバリアントの提供に優れています。
| モデル | サイズ (ピクセル) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | パラメーター数 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| YOLOXnano | 416 | 25.8 | - | - | 0.91 | 1.08 |
| YOLOXtiny | 416 | 32.8 | - | - | 5.06 | 6.45 |
| YOLOXs | 640 | 40.5 | - | 2.56 | 9.0 | 26.8 |
| YOLOXm | 640 | 46.9 | - | 5.43 | 25.3 | 73.8 |
| YOLOXl | 640 | 49.7 | - | 9.04 | 54.2 | 155.6 |
| YOLOXx | 640 | 51.1 | - | 16.1 | 99.1 | 281.9 |
注: 各該当列セグメントで最も高い性能値を太字で示しています。
YOLOXにはディスク容量やCUDAメモリをほとんど消費しないnanoおよびtinyバリアントがある一方、PP-YOLOE+はサーバーグレードのハードウェアに対して非常に優れたスケーリングを発揮するため、Baiduエコシステム内の大規模な産業用途に適した堅牢な選択肢となります。
実世界での用途#
これらのフレームワークのどちらを選ぶかは、多くの場合、統合要件と対象ハードウェアによって決まります。
YOLOXが優れている分野#
アンカーフリーという特性と、エッジ向けの極小バリアントが利用できることから、YOLOXはロボティクスやマイクロコントローラーへのデプロイで広く利用されています。シンプルな後処理パイプラインにより、TensorRTやNCNNのようなカスタマイズされたNPUハードウェア形式へ容易に移植できます。
PP-YOLOE+が優れている分野#
Baiduのテクノロジースタックを活用するアジアの製造拠点に深く統合された組織にとって、PP-YOLOE+はデプロイまでの事前最適化された道筋を提供します。高精度の品質検査シナリオで特に力を発揮し、厳格なリアルタイム制約によって多少大きなモデルウェイトが許容される、強力なサーバーラック上での運用に適しています。
ユースケースと推奨事項#
PP-YOLOE+とYOLOXのどちらを選ぶかは、具体的なプロジェクト要件、デプロイ上の制約、エコシステムに関する選好によって決まります。
PP-YOLOE+ を選択するケース#
PP-YOLOE+ は、次の用途に適しています。
- PaddlePaddle エコシステムとの統合: 既存のインフラストラクチャがBaidu の PaddlePaddleフレームワークとツールで構築されている組織。
- Paddle Lite エッジデプロイ: Paddle Lite または Paddle 推論エンジン向けに特別に最適化された推論カーネルを備えるハードウェアへのデプロイ。
- 高精度なサーバーサイド検出: フレームワークへの依存が問題にならず、高性能 GPU サーバー上で最大限の検出精度を優先するシナリオ。
YOLOX を選択するタイミング#
YOLOX は次の用途に推奨されます。
- アンカーフリー検出の研究: 新しい検出ヘッドや損失関数を試すためのベースラインとして、YOLOX の簡潔なアンカーフリーアーキテクチャを使用する学術研究。
- 超軽量エッジデバイス: YOLOX-Nano バリアントの非常に小さなフットプリント(0.91Mパラメータ)が重要となる、マイクロコントローラーや従来型モバイルハードウェアへのデプロイ。
- SimOTA ラベル割り当て研究: 最適輸送に基づくラベル割り当て戦略と、それがトレーニングの収束に与える影響を調査する研究プロジェクト。
Ultralytics (YOLO26)を選ぶタイミング#
ほとんどの新規プロジェクトでは、Ultralytics YOLO26が性能と開発者エクスペリエンスの最適な組み合わせを提供します。
- NMSフリーのエッジデプロイ: Non-Maximum Suppressionの後処理を複雑にすることなく、一貫した低レイテンシー推論が必要なアプリケーション。
- CPUのみの環境: 専用GPUアクセラレーションを持たないデバイスで、YOLO26の最大43%高速なCPU推論が決定的な優位性となる場合。
- 小さな物体の検出: aerial drone imageryやIoTセンサー分析など、ProgLossとSTALによって微小物体の精度が大幅に向上する難しいシナリオ。
Ultralyticsの優位性:YOLO26の登場#
PP-YOLOE+とYOLOXは優れた研究上のマイルストーンですが、現代のデプロイ環境では、より高い効率性を備えた、より一貫性のある開発者向けエクスペリエンスが求められています。そこで、Ultralytics YOLO26は現代のビジュアルAIにおける標準を完全に再定義します。
分離された研究リポジトリからプロダクション対応システムへの移行を目指すチームに、Ultralyticsは堅牢で十分にメンテナンスされたエコシステムを提供します。モデルのトレーニングに複雑な環境設定はもはや必要なく、統合されたPython APIにアクセスするだけで簡単に実行できます。
Ultralytics YOLO26の主な利点:
- エンドツーエンドのNMSフリー設計: 冗長なバウンディングボックスをフィルタリングするために非最大抑制(NMS)が必要なPP-YOLOE+やYOLOXとは異なり、YOLO26はネイティブでエンドツーエンドに対応しています。これにより、レイテンシーのボトルネックが解消され、デプロイロジックが大幅に簡素化されます。
- CPU推論が最大43%高速: Distribution Focal Loss(DFL)を戦略的に削除することで、YOLO26はCPUハードウェア上で比類のない推論速度を実現し、エッジコンピューティングや低消費電力デバイスにおいてはるかに優れた性能を発揮します。
- MuSGDオプティマイザ: Moonshot AIのKimi K2にインスピレーションを得たこのハイブリッドオプティマイザは、大規模言語モデル学習の安定性をコンピュータビジョンにもたらし、学習段階における収束を大幅に早め、メモリ要件を最小限に抑えます。
- ProgLoss + STAL: これらの高度な損失関数は、小さなオブジェクトの認識を大幅に改善します。これは、ドローン運用や非常に詳細な航空画像にとって重要な機能です。
- 汎用性: PP-YOLOE+とYOLOXが検出のみに特化しているのに対し、YOLO26はまったく同じ直感的な構文で、インスタンスセグメンテーション、姿勢推定、方向付きバウンディングボックス(OBB)をシームレスに処理できます。
Ultralyticsによる効率的なトレーニング#
Ultralyticsモデルのメモリ効率とトレーニング速度は他に類を見ないものであり、膨大なCUDAメモリのオーバーヘッドを必要とするTransformerベースの代替手法を完全に上回ります。わずか数行のコードでYOLO26の能力を活用できます。
from ultralytics import YOLO
# Load the highly efficient, end-to-end YOLO26 nano model
model = YOLO("yolo26n.pt")
# Train on a custom dataset with built-in auto-batching and MuSGD optimization
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Validate the model's performance
metrics = model.val()
# Export seamlessly to ONNX or TensorRT
model.export(format="engine")コード不要のソリューションを探しているチームに、Ultralytics Platformは、クラウドベースのトレーニング、統合されたデータセットアノテーション、すべてのYOLOモデルへのワンクリックデプロイを提供します。
まとめ#
PP-YOLOE+とYOLOXはそれぞれ、高精度と軽量なアンカーフリー設計を提供し、コンピュータービジョンの歴史における地位を確立してきました。しかし、農業におけるAI、スマートシティ、小売の未来を構築する組織にとって、Ultralytics YOLO26の継続的なメンテナンス、使いやすさ、ネイティブなNMSフリーアーキテクチャは、他の追随を許さない選択肢となります。
特定のベンチマーク向けに代替アーキテクチャを検討している場合は、包括的なUltralyticsドキュメントを通じて、旧世代のYOLO11や、RT-DETRのようなTransformerベースの選択肢を比較することも有用です。統合されたUltralyticsエコシステムへ移行することで、開発者は貴重な時間とリソースを節約しながら、エッジまたはクラウドのあらゆるデプロイ環境で最先端の結果を達成できます。