YOLOv10とPP-YOLOE+の比較#
コンピュータービジョンでリアルタイム物体検出に適したアーキテクチャを選ぶには、精度、推論速度、デプロイ効率のバランスが重要です。注目すべき選択肢として、YOLOv10とPP-YOLOE+があります。どちらも高性能な検出器ですが、設計思想やエコシステムは異なります。
この技術ガイドでは、2つのアーキテクチャを分析し、性能指標、構造上の違い、実環境での理想的な用途を解説します。違いを理解することで、機械学習エンジニアや研究者は、デプロイパイプラインについて十分な情報に基づいた判断を下せます。
YOLOv10:NMSフリーのリアルタイム検出#
清華大学の研究者によって開発されたYOLOv10は、後処理で非最大値抑制(NMS)を不要にすることで、アーキテクチャを大きく転換しました。このエンドツーエンドのアプローチは、リアルタイム推論における長年のボトルネックを解消し、特に計算リソースが限られたデバイスで、より高速で予測しやすいデプロイを可能にします。
技術メタデータ#
- 著者: Ao Wang、Hui Chen、Lihao Liuほか
- 組織: 清華大学
- 日付: 2024-05-23
- arXiv: 2405.14458
- GitHub: THU-MIG/yolov10
- ドキュメント: YOLOv10 ドキュメント
アーキテクチャの強みと弱み#
YOLOv10の際立った特徴は、NMSフリーのトレーニングを可能にする、一貫性のあるデュアルアサインメントです。ヒューリスティックな閾値処理に頼らず、バウンディングボックスを直接予測できます。その結果、特に小型モデルで速度と精度の優れたバランスが得られます。また、アーキテクチャには効率と精度を総合的に重視した設計が採用され、計算の重複が最小限に抑えられています。
ただし、検出に特化したモデルであるため、標準でインスタンスセグメンテーションや姿勢推定をサポートするモデルのような、ネイティブな汎用性はありません。
PP-YOLOE+:PaddlePaddleによるアンカーフリー検出#
PP-YOLOE+は、BaiduのPaddlePaddleチームが開発した、PP-YOLOEのアップグレード版です。最適化されたアンカーフリー設計を基盤とし、標準ベンチマークにおける平均適合率(mAP)を高めるために、改善されたトレーニング戦略を取り入れています。
技術メタデータ#
- 著者: PaddlePaddle Authors
- 組織: Baidu
- 日付: 2022-04-02
- arXiv: 2203.16250
- GitHub: PaddlePaddle/PaddleDetection
- ドキュメント: PP-YOLOE+ GitHub README
アーキテクチャの強みと弱み#
PP-YOLOE+は、スケーラブルなCSPRepResNetバックボーンと、特徴抽出を強化するCSPPANネックを使用しています。トレーニングでは、Objects365などの大規模データセットでの事前学習に依存しており、特に大きいxおよびlバリアントの高い精度に貢献しています。
PP-YOLOE+の主な欠点は、PaddlePaddleフレームワークとの結びつきが強いことです。PyTorchや統一されたUltralyticsエコシステムに慣れているチームでは、PP-YOLOE+の導入に摩擦が生じる可能性があります。さらに、パラメーター数が多いため、同等のUltralytics YOLOモデルと比べ、トレーニング時に必要なメモリが増加します。
性能ベンチマーク#
次の表では、さまざまなスケールでYOLOv10とPP-YOLOE+を直接比較し、パラメーター効率、計算コスト(FLOPs)、精度のトレードオフを示します。
| モデル | サイズ (ピクセル) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | パラメーター (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv10n | 640 | 38.5 | - | 1.84 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.3 | - | 2.49 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.1 | - | 4.74 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.5 | - | 5.74 | 19.1 | 92.0 |
| YOLOv10l | 640 | 53.2 | - | 7.28 | 24.4 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 10.70 | 29.5 | 160.4 |
| 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 |
YOLOv10は、どのスケールでもT4 TensorRT上でPP-YOLOE+より高速で、パラメーター数も少ないため、エッジコンピューティング環境により適しています(例:YOLOv10mは15.4M個のパラメーターで51.1 mAPを4.74 msで達成するのに対し、PP-YOLOE+mは23.43M個で49.8 mAPを5.56 msで達成します)。PP-YOLOE+は両端のサイズで優位性があります。PP-YOLOE+tはYOLOv10nより高精度(39.9対38.5 mAP)で、PP-YOLOE+xはYOLOv10xをわずかに上回ります(54.7対54.4 mAP)が、パラメーター数は3倍以上です。
ユースケースと推奨事項#
YOLOv10とPP-YOLOE+のどちらを選ぶかは、プロジェクト固有の要件、デプロイの制約、エコシステムへの好みによって異なります。
YOLOv10を選ぶ場合#
YOLOv10は、次の用途に適しています:
- NMSを使用しないリアルタイム検出: 非最大抑制を使用しないエンドツーエンド検出によって、デプロイを簡素化できるアプリケーション。
- 速度と精度のバランス: さまざまなモデルスケールで、推論速度と検出精度の優れたバランスが必要なプロジェクト。
- レイテンシーが安定している必要のあるアプリケーション: ロボティクスや自律システムなど、予測可能な推論時間が重要なデプロイシナリオ。
PP-YOLOE+を選ぶ場合#
PP-YOLOE+は、次のような用途におすすめです。
- PaddlePaddleエコシステムとの統合: BaiduのPaddlePaddleフレームワークとツールを基盤とする既存インフラストラクチャを持つ組織。
- Paddle Liteによるエッジデプロイ: Paddle LiteまたはPaddle推論エンジン向けに特別に最適化された推論カーネルを備えるハードウェアへのデプロイ。
- サーバー側での高精度検出: フレームワークへの依存が問題にならない、強力なGPUサーバー上で検出精度を最大化することを優先するシナリオ。
Ultralytics (YOLO26)を選ぶ場合#
多くの新規プロジェクトにおいて、Ultralytics YOLO26はパフォーマンスと開発者体験を最適なバランスで提供します。
- NMSを使用しないエッジデプロイ: 非最大抑制の後処理を複雑化させずに、安定した低レイテンシー推論を必要とするアプリケーション。
- CPU-Only Environments: 専用GPUアクセラレーションを備えていないデバイスでは、YOLO26の最大43%高速なCPU推論(YOLO26n対YOLO11n)が大きな優位性をもたらします。
- 小物体検出: ドローンによる航空画像やIoTセンサー分析など、ProgLossとSTALによって小物体の精度が向上する難易度の高いシナリオに適しています。
Ultralyticsの強みと未来:YOLO26#
YOLOv10とPP-YOLOE+にはそれぞれ特化した利点がありますが、新たに本番品質のコンピュータービジョンプロジェクトを始める場合は、Ultralytics YOLO26を推奨します。2026年1月にリリースされたYOLO26は、YOLOv10がYOLOモデルに導入したNMSフリーデザインなど、実績のあるアーキテクチャ上のアイデアをマルチタスクフレームワークに採用しています。
Ultralyticsモデルは使いやすさを重視しています。統一されたPython APIにより、複雑な設定ファイルを扱う必要がありません。さらに、YOLOモデルは一般にTransformerベースの検出モデルよりCUDAメモリの使用量が少なく、より高速でコスト効率の高いトレーニングを実現します。
YOLO26の主な革新#
- エンドツーエンドのNMSフリーデザイン: オプションの1対1ヘッド(
nms=False)によりNMSの後処理レイテンシを解消し、YOLO26は安定した高速推論を実現します。これは自動運転車や高速ロボティクスに不可欠です。 - エッジファーストの最適化:Distribution Focal Loss(DFL)を除去することでモデルのエクスポート形式が簡素化され、YOLO26nはYOLO11nよりもCPU推論が最大43%高速になります。
- 高度なトレーニングダイナミクス:SGDとMuonのハイブリッドであるMuSGDオプティマイザーにより、YOLO26は大規模言語モデル(LLM)のトレーニング安定性をビジョンタスクにもたらし、より高速かつ安定して収束します。
- ProgLoss + STALによる精度向上:Progressive Lossと小物体を考慮したラベル割り当て(STAL)は、難しいシナリオに対応し、航空画像や農業における小物体検出を向上させます。
汎用性#
検出に特化したPP-YOLOE+とは異なり、YOLO26は単一の統一されたコードベースから、インスタンスセグメンテーション、セマンティックセグメンテーション、深度推定、画像分類、姿勢推定、回転バウンディングボックス(OBB)に対応します。データセットの管理、トレーニング、モデルのデプロイは、Ultralytics Platformから直接実行できます。
from ultralytics import YOLO
# YOLO26 nanoモデルを初期化します
model = YOLO("yolo26n.pt")
# Ultralyticsエンジンを使用してトレーニングします
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# GPUへのデプロイ用にTensorRTへエクスポートします
model.export(format="engine", quantize=16)実際の用途#
適切なモデルは、デプロイ時の制約によって異なります。
- PP-YOLOE+は、PaddlePaddleのハードウェアとソフトウェアのスタックがすでに確立されている産業環境でのデプロイに適しています。静的な高解像度の製造業における品質検査に適しています。
- YOLOv10は、密集した群衆管理や、NMSの除去によってレイテンシーのばらつきが抑えられ、リアルタイムトラッキングの一貫性が高まる環境に適しています。
- Ultralytics YOLO26は、企業全体へのスケーリングに推奨される選択肢です。スマートシティでの交通分析から、Raspberry Piなどの低消費電力エッジデバイスへのデプロイまで、メモリ使用量の少なさ、ドキュメント、統一されたトレーニングパイプラインによって、本番環境への移行を短縮できます。
エコシステムでサポートされている旧世代のアーキテクチャやTransformerの代替モデルについては、YOLO11またはRT-DETRのドキュメントをご覧ください。
充実したメンテナンス体制のエコシステムとシンプルなAPIにより、開発者は設定ファイルのデバッグに費やす時間を減らし、現実のビジョンAIの課題解決により多くの時間を使えます。