PP-YOLOE+とYOLOXの比較#
コンピュータービジョンの分野は、物体検出モデルの急速な進化によって大きく形作られてきました。その重要なマイルストーンとして、リアルタイム性能と精度の限界を押し広げた2つのアーキテクチャ、PP-YOLOE+とYOLOXが挙げられます。視覚認識システムの次世代を担う研究者や開発者にとって、両モデルのアーキテクチャの違い、性能上のトレードオフ、理想的なデプロイシナリオを理解することが重要です。
モデルの系譜と詳細#
技術的なアーキテクチャを詳しく見る前に、両モデルの開発背景を把握しておくと役立ちます。どちらも、後援組織の影響を受けながら、物体検出における特定のボトルネックに対処するために開発されました。
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は2021年、YOLOファミリーをアンカーフリー設計に適応させ、大きな注目を集めました。アンカーボックスを取り除くことで、YOLOXはカスタムデータセット向けに必要となる設計パラメーターとヒューリスティックな調整の数を大幅に減らしました。さらに、分類タスクと位置特定タスクを別々のニューラルパスに分ける、分離型ヘッドを導入しました。この分離によって、物体の分類と空間座標の回帰との本質的な競合が解消され、学習時の収束が速くなりました。
Baiduが開発したPP-YOLOE+は、PaddlePaddleエコシステム向けに高度に最適化されています。前身であるPP-YOLOEと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を使用しないエッジデプロイ: 非最大抑制の後処理を複雑化させずに、安定した低レイテンシー推論を必要とするアプリケーション。
- CPUのみの環境: 専用のGPUアクセラレーションを備えていないデバイスで、YOLO26の最大43%高速なCPU推論が大きな優位性を発揮します。
- 小物体検出: ドローンによる航空画像やIoTセンサーの分析など、ProgLossとSTALによって小さな物体の精度が大幅に向上する難しいシナリオ。
Ultralyticsの強み:YOLO26の登場#
PP-YOLOE+とYOLOXは優れた研究上の成果ですが、現代のデプロイ環境では、効率性に優れた、より統一感のある開発者フレンドリーな体験が求められています。ここでUltralytics YOLO26は、現代のビジュアルAIの標準を根本から塗り替えます。
個別の研究リポジトリから本番環境に対応したシステムへの移行を検討しているチームに、Ultralyticsは堅牢で適切に保守されたエコシステムを提供します。モデルのトレーニングに複雑な環境設定は必要なくなり、統一されたPython APIにアクセスするだけで簡単に実行できます。
Ultralytics YOLO26の主な利点は次のとおりです:
- エンドツーエンドのNMSフリーデザイン: 重複するバウンディングボックスをフィルタリングするために非最大抑制(NMS)が必要なPP-YOLOE+やYOLOXとは異なり、YOLO26はネイティブのエンドツーエンドヘッド(
nms=False)を備えています。これにより、レイテンシのボトルネックが解消され、デプロイロジックが大幅に簡素化されます。 - CPU推論が最大43%高速: Distribution Focal Loss(DFL)を戦略的に除去することで、YOLO26はCPUハードウェア上で比類のない推論速度を実現し、エッジコンピューティングや低消費電力デバイスに最適なモデルとなっています。
- MuSGDオプティマイザー: Moonshot AIのKimi K2に着想を得たこのハイブリッドオプティマイザーは、LLMトレーニングの安定性をコンピュータービジョンにもたらし、収束を大幅に高速化するとともに、トレーニング中のメモリ要件を最小限に抑えます。
- ProgLoss + STAL: これらの高度な損失関数は、小物体認識を大幅に向上させます。これは、ドローン運用や高精細な航空画像に欠かせない機能です。
- 汎用性: 検出に特化したPP-YOLOE+やYOLOXとは異なり、YOLO26は同じ直感的な構文でインスタンスセグメンテーション、姿勢推定、回転バウンディングボックス(OBB)をシームレスに処理できます。
Ultralyticsによる効率的なトレーニング#
Ultralyticsモデルのメモリ効率とトレーニング速度は他に類を見ず、膨大なCUDAメモリを必要とするTransformerベースの代替モデルを大きく上回ります。わずか数行のコードでYOLO26の性能を活用できます:
from ultralytics import YOLO
# 高効率なエンドツーエンドYOLO26 nanoモデルを読み込みます
model = YOLO("yolo26n.pt")
# COCO8のサンプルデータセットでトレーニングする
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# モデルの性能を検証します
metrics = model.val()
# ONNXまたはTensorRTにシームレスにエクスポートする
model.export(format="engine")ノーコードのソリューションを求めるチームには、Ultralytics Platformがクラウドベースのトレーニング、統合データセットアノテーション、すべてのYOLOモデルのワンクリックデプロイを提供します。
結論#
PP-YOLOE+とYOLOXは、それぞれ高精度と軽量なアンカーフリーデザインを実現し、コンピュータービジョンの歴史に確かな足跡を残しました。しかし、農業分野のAI、スマートシティ、小売業の未来を築く組織にとって、継続的なメンテナンスのしやすさ、使いやすさ、ネイティブのNMSフリーアーキテクチャを備えたUltralytics YOLO26こそが、疑いなく最適な選択肢です。
特定のベンチマークに向けた代替アーキテクチャを検討している場合は、包括的なUltralyticsドキュメントを参照し、旧世代のYOLO11やTransformerベースのRT-DETRなどを比較することもできます。統一されたUltralyticsエコシステムに移行すれば、開発者は貴重な時間とリソースを節約しながら、エッジやクラウドのあらゆるデプロイ環境で最先端の成果を達成できます。