コンテンツにスキップ

PP-YOLOE+ vsYOLO11:高性能物体検出の進化を導く

急速に進歩するコンピュータビジョン分野において、精度・速度・導入制約のバランスを取るには適切なモデルアーキテクチャの選択が極めて重要である。本比較では検出技術史における二つの重要なマイルストーン、PaddlePaddle 生まれた改良型アンカーフリー検出器PP-YOLOE+とYOLO11(効率性と汎用性の向上を目的に設計されたUltralyticsの最新世代モデル)をUltralytics 。

PP-YOLOE+は特定のフレームワーク内における産業用途向けの成熟したソリューションである一方、YOLO11 アーキテクチャの改良によりエッジデバイスで実現可能な限界をYOLO11 。さらに、ネイティブなエンドNMS検出を実現する最新のブレークスルーであるYOLO26にも注目していきます。

性能指標の比較

以下の表は主要業績評価指標の直接比較を示しています。 YOLO11 は効率性において明らかな優位性を示し、同等またはそれ以上の精度を保ちながら、パラメータ数を大幅に削減し、推論速度を向上させています。

モデルサイズ
(ピクセル)
mAPval
50-95
速度
CPU ONNX
(ms)
速度
T4 TensorRT10
(ms)
params
(M)
FLOPs
(B)
PP-YOLOE+t64039.9-2.844.8519.15
PP-YOLOE+s64043.7-2.627.9317.36
PP-YOLOE+m64049.8-5.5623.4349.91
PP-YOLOE+l64052.9-8.3652.2110.07
PP-YOLOE+x64054.7-14.398.42206.59
YOLO11n64039.556.11.52.66.5
YOLO11s64047.090.02.59.421.5
YOLO11m64051.5183.24.720.168.0
YOLO11l64053.4238.66.225.386.9
YOLO11x64054.7462.811.356.9194.9

PP-YOLOE+:PaddlePaddle

PP-YOLOE+は、百度の研究者によってPaddleDetectionツールキットの一部として開発されたPP-YOLOEのアップグレード版です。これは、前身のトレーニング収束速度と下流タスクの性能向上に焦点を当てています。

技術アーキテクチャ

PP-YOLOE+は、CSPRepResNetバックボーンとラベル割り当てのためのタスクアラインメント学習(TAL)戦略を活用するアンカーフリーモデルである。ネック部において独自のESE(Effective Squeeze-and-Excitation)アテンション機構を利用し、特徴表現を強化する。 重要なアーキテクチャ上の選択として、RepVGGスタイルの再パラメータ化を採用している。これにより、モデルは複雑な学習ダイナミクスを持ちつつ、推論時にはより単純で高速な構造へと収束する。

主要な機能は以下の通りです。

  • アンカーフリーヘッド:事前定義されたアンカーボックスが不要になることで設計を簡素化します。
  • タスクアラインメント学習(TAL):分類タスクと回帰タスクを動的に整合させ、精度を向上させる。
  • Object365事前学習:「プラス」(+)バージョンは、大規模なObjects365データセットでの強力な事前学習を大きく活用しており、これにより小規模データセットでの収束速度が大幅に向上します。

メタデータ:

生態系の制約

PP-YOLOE+は強力なパフォーマンスを提供しますが、 PaddlePaddle ディープラーニングフレームワークと密接に連携しています。PyTorch TensorFlow に慣れた開発者は、Paddle Inferenceをネイティブサポートしない既存のMLOpsパイプラインに統合する際、急峻な学習曲線と摩擦に直面するTensorFlow

PP-YOLOE+の詳細について。

Ultralytics YOLO11:効率性の再定義

リリース元 Ultralytics 2024年末にUltralyticsよりYOLO11 、YOLO の重要な改良版YOLO11 、パラメータ効率と特徴抽出能力を優先しています。一部のアーキテクチャが研究志向であるのとは異なり、YOLO11 実環境での展開をYOLO11 、純粋な精度と運用速度のバランスを実現しています。

アーキテクチャの革新

YOLO11 、CSPボトルネックの軽量化・高速化を実現したC3k2ブロックYOLO11 、C2PSA(空間的注意機構を備えたクロスステージ部分積分)を統合することで、画像の重要領域へのモデル集中度を高めています。これらの改良により、計算コストを従来版より低減しつつ、競争力mAP を維持するモデルが実現しました。

開発者にとっての利点には以下が含まれます:

  • メモリ使用量の削減: YOLO11 、同等の精度を実現しながらPP-YOLOE+よりも大幅に少ないパラメータYOLO11 (例:YOLO11xはPP-YOLOE+xよりも約42%少ないパラメータ)。これにより、RAMが限られたエッジデバイスに最適です。
  • 統合フレームワーク: 検出セグメンテーション分類姿勢推定、およびOBBをシームレスにサポートします。
  • PyTorch : PyTorch 基盤として構築されており、現代のAIツールやライブラリの大部分との互換性を保証します。

メタデータ:

YOLO11の詳細について。

批判的分析:適切なツールの選択

1. 使いやすさとエコシステム

この点が最も顕著な違いである。Ultralytics はその 使いやすさultralytics Python 、通常5行未満のコードでトレーニング、検証、デプロイが可能である。

一方、PP-YOLOE+ではPaddlePaddle インストールとPaddleDetectionリポジトリのクローンが必要となる。設定には複雑なYAMLファイルの修正やPythonic APIではなくコマンドラインスクリプトの利用が頻繁に発生し、迅速なプロトタイピングの妨げとなる。

2. 展開と汎用性

YOLO11 汎用性にYOLO11 。 ONNXTensorRT、CoreML、TFLite といった形式へ、単一のTFLite 簡単にエクスポートできます。これにより、NVIDIA モジュールからiOS 、多様なハードウェアへのデプロイにおいて優れた選択肢となります。

PP-YOLOE+はエクスポート可能ですが、そのプロセスではPaddle Inferenceが優先されることが多く、あるいは互換性の問題を引き起こす可能性のある中間変換ステップ(例:Paddle2ONNX)が必要となる場合があります。さらに、YOLO11 オリエンテッドバウンディングボックス(OBB)検出やインスタンスセグメンテーションなど、より幅広いタスクを標準でYOLO11 に対し、PP-YOLOE+は主に検出に特化したアーキテクチャです。

3. 訓練効率

Ultralytics トレーニング効率を最適化しており、スマートな事前設定ハイパーパラメータCUDA 使用量が少なく収束が早い傾向があります。また、このエコシステムは実験追跡ツールとのシームレスな連携を提供します。 CometWeights & Biasesなどの実験追跡ツールとのシームレスな統合を提供し、MLOpsライフサイクルを効率化します。

今後の展望: YOLO26の力

最先端を求める開発者のために、Ultralytics YOLO26をリリースしました。これはYOLO11とPP-YOLOE+の両方を凌駕するYOLO11 。

YOLO26は、ネイティブなエンドツーエンドNMS設計を特徴としており、YOLOv10 初めて実現された画期的な技術YOLOv10 実運用向けに完成されたYOLOv10 これにより、リアルタイムアプリケーションにおける遅延のボトルネックとなることが多い、非最大抑制(NMS)の後処理が不要となります。

YOLO26の主な進歩は以下の通りです:

  • 最大43%CPU :分布焦点損失(DFL)の除去とヘッドアーキテクチャの最適化により、YOLO26はエッジコンピューティングや高性能GPUのない環境向けに特別にチューニングされています。
  • MuSGDオプティマイザー: SGD (Moonshot AIのKimi K2に着想を得た)のハイブリッドであるこのオプティマイザーは、大規模言語モデル(LLM)のトレーニング安定性をコンピュータビジョンにもたらし、より速い収束を保証します。
  • ProgLoss + STAL: 小物体検出を改善する高度な損失関数。航空写真や品質管理などのタスクにおいて極めて重要。
  • タスク特化型改善点:マスク精度向上のためのセマンティックセグメンテーション損失と、境界不連続性を解決するOBB専用の角度損失を含む。

推奨事項

新規プロジェクトでは、YOLO26が推奨される選択肢です。そのNMSアーキテクチャは、後処理IoU 調整の複雑さを排除し、デプロイメントパイプラインを大幅に簡素化します。

YOLO26についてさらに詳しく

実装例

Ultralytics シンプルさを体感してください。以下のコードはモデルの読み込みとトレーニング方法を示しています。モデル名の文字列を変更するだけで、YOLO11 簡単に切り替えられます。

from ultralytics import YOLO

# Load the latest YOLO26 model (or use "yolo11n.pt")
model = YOLO("yolo26n.pt")

# Train the model on the COCO8 dataset
# The system automatically handles data augmentation and logging
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on an image
# NMS-free output is handled automatically for YOLO26
results = model("https://ultralytics.com/images/bus.jpg")

# Export to ONNX for simplified deployment
path = model.export(format="onnx")

他の特殊なアーキテクチャに関心のあるユーザー向けに、ドキュメントでは以下のようなモデルについても扱っています RT-DETR などのモデルや、オープンボキャブラリタスク向けのYOLOなどのモデルについても説明しています。

結論

PP-YOLOE+は百度エコシステムに深く関与しているユーザーにとって確かな選択肢であり続ける一方、 YOLO11 と新世代のYOLO26は、一般的な開発者コミュニティにとってより魅力的なパッケージを提供します。優れた使いやすさ、低いメモリ要件、豊富なエクスポートオプション、そして活発なコミュニティを兼ねUltralytics 、現代的でスケーラブルなコンピュータビジョンアプリケーションに必要な性能バランスを実現します。


コメント