PP-YOLOE+とYOLOv10#
コンピュータービジョンの分野は絶えず進化しており、新しいモデルがリアルタイム物体検出の可能性を広げています。この包括的な技術比較では、異なるエコシステム向けに設計された高性能な2つのアーキテクチャ、PP-YOLOE+とYOLOv10を検証します。また、分野全体がUltralytics Platformのような統合され使いやすいプラットフォームや、最先端のYOLO26モデルへと移行している状況も見ていきます。
モデルの概要#
コンピュータービジョンプロジェクトに適した基盤を選ぶには、各モデルのアーキテクチャ上のトレードオフ、デプロイ上の制約、エコシステムのサポートを深く理解する必要があります。
PP-YOLOE+の概要#
BaiduのPaddlePaddle開発者によって開発されたPP-YOLOE+は、PaddleDetectionエコシステムにおける従来モデルを発展させたものです。
- 著者: PaddlePaddle Authors
- 組織: Baidu
- 日付: 2022-04-02
- Arxiv: https://arxiv.org/abs/2203.16250
- GitHub: PaddleDetectionリポジトリ
- ドキュメント: PP-YOLOE+公式ドキュメント
強み: PP-YOLOE+は、PaddlePaddleフレームワークと深く統合された環境で高い性能を発揮します。高度なCSPRepResNetバックボーンを導入し、強力なラベル割り当て戦略(TAL)によって優れた平均適合率(mAP)を達成します。アジアの産業用途で一般的なサーバーグレードGPUへのデプロイに高度に最適化されています。
弱み: PP-YOLOE+の主な欠点は、PaddlePaddleエコシステムへの依存度が高く、PyTorchに慣れた開発者には直感的でない場合があることです。さらに、後処理には従来型のNon-Maximum Suppression(NMS)が必要なため、レイテンシとデプロイの複雑さが増します。
YOLOv10の概要#
清華大学の研究者がリリースしたYOLOv10は、推論パイプラインからNMSを排除し、アーキテクチャのパラダイムに大きな変革をもたらしました。
- 著者: Ao Wang、Hui Chen、Lihao Liuほか
- 組織: 清華大学
- 日付: 2024-05-23
- Arxiv: https://arxiv.org/abs/2405.14458
- GitHub: YOLOv10リポジトリ
- ドキュメント: YOLOv10 ドキュメント
強み: YOLOv10の際立った特徴は、NMSフリートレーニングを実現する一貫性のあるデュアル割り当てです。モデルは2次フィルタリングを必要とせずにネイティブにバウンディングボックスを予測するため、モデルデプロイが大幅に簡素化され、エッジデバイスでの実行も高速になります。また、パラメーター数の少なさと高い精度を優れたバランスで両立します。
弱み: 標準的な2Dの物体検出では非常に効率的ですが、YOLOv10はインスタンスセグメンテーションや姿勢推定など、ほかの重要なコンピュータービジョンタスクをネイティブにサポートしていません。そのため、複雑なマルチタスクパイプラインでの汎用性が限られます。
パフォーマンスと指標の比較#
標準化されたベンチマークでこれらのモデルがどのような性能を発揮するかを把握することは、適切なアーキテクチャを選ぶうえで重要です。以下では、モデルサイズ、精度、レイテンシを詳しく比較します。
| モデル | サイズ (ピクセル) | 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 |
| 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 |
技術分析#
データを分析すると、いくつかの重要な傾向が見えてきます。YOLOv10のnanoモデルとsmallモデルは、エッジでの効率性を重視しています。YOLOv10nのパラメーター数はわずか230万、FLOPsは6.7Bです。この軽量な設計とNMSフリーのアーキテクチャにより、TensorRTやOpenVINOを利用するプラットフォームでレイテンシが大幅に低減します。
一方、PP-YOLOE+は大型モデルのクラスで高い性能を発揮し、X-largeモデルはmAPでYOLOv10xをわずかに上回ります(54.7%対54.4%)。ただし、パラメーター数は3倍以上(98.42M対29.5M)になるため、メモリに制約のある環境ではYOLOv10xのほうが大幅に効率的です。
Ultralyticsエコシステムの利点#
PP-YOLOE+とYOLOv10はいずれも優れた技術的成果を示していますが、現代のMLエンジニアリングでは、優れたアーキテクチャだけでは不十分であり、適切にメンテナンスされたエコシステムが必要です。
Ultralyticsは、データ収集とアノテーション、トレーニング、デプロイを大幅に簡素化する、業界をリードするPython SDKを提供しています。大規模な研究用フレームワークや旧世代のTransformerモデルと比較すると、Ultralyticsのアーキテクチャはトレーニング中に必要なCUDAメモリがごくわずかで、バッチサイズを大きくし、イテレーションを高速化できます。さらに、Ultralyticsのスイートは高い汎用性を備えており、画像分類、OBB(回転バウンディングボックス)、堅牢な物体追跡をすぐに利用できます。
YOLO26の登場:次世代モデル#
2026年1月にリリースされたUltralytics YOLO26は、コンピュータービジョンの進化における最高峰であり、YOLOv10などのモデルから得られた知見を取り入れながら、その制約にも対処しています。
YOLO26の主なイノベーション:
- エンドツーエンドのNMSフリー設計: YOLOv10で先駆けて導入されたコンセプトを発展させ、YOLO26ではオプションのエンドツーエンドヘッド(
nms=False)を利用できます。これによりNMSの後処理が不要になり、多様なハードウェアへのデプロイがより高速かつ簡単になります。 - DFLの削除: Distribution Focal Loss(DFL)を削除することで、エクスポート時のモデルアーキテクチャが大幅に簡素化され、低消費電力のエッジAIデバイスとの高い互換性を実現します。
- MuSGDオプティマイザー: Moonshot AIのKimi K2など、大規模言語モデルのトレーニング手法に着想を得て、YOLO26はSGDとMuonを組み合わせたハイブリッド方式を採用しています。これにより、かつてないほど安定したトレーニングと大幅に高速な収束を実現します。
- CPU推論が最大43%高速化: 実環境を想定して徹底的に最適化されたYOLO26は、CPU処理に依存するアプリケーションで大幅な高速化を実現するため、スマート監視やモバイルへのデプロイに最適です。
- ProgLoss + STAL: これらの改良された損失関数により、小物体認識の性能が大幅に向上します。これは、航空画像やロボティクスにおいて重要な要素です。
- タスク固有の改良: YOLOv10とは異なり、YOLO26はセグメンテーション向けのマルチスケールprotoと、姿勢推定向けのResidual Log-Likelihood Estimation(RLE)をネイティブでサポートしています。
実践的な実装#
Ultralyticsモデルは、すぐに使い始められるよう設計されています。数行のコードで、最新のデータ拡張パイプラインを使用したトレーニングを開始できます。
from ultralytics import YOLO
# 特におすすめのYOLO26モデルを読み込む
model = YOLO("yolo26n.pt")
# COCO8データセットでモデルをトレーニングします
# Transformerアーキテクチャと比べて、メモリ使用量が大幅に最適化されています
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, device=0)
# エンドツーエンドのNMSフリー推論を実行する
inference_results = model("https://ultralytics.com/images/bus.jpg", nms=False)
# デプロイ用にONNXまたはTensorRTへ直接エクスポートする
model.export(format="onnx", simplify=True)ユースケースと推奨事項#
PP-YOLOE+とYOLOv10のどちらを選ぶかは、プロジェクト固有の要件、デプロイ上の制約、エコシステムに関する好みによって異なります。
PP-YOLOE+を選ぶ場合#
PP-YOLOE+は、次のような用途に適しています。
- PaddlePaddleエコシステムとの統合: BaiduのPaddlePaddleフレームワークとツールを基盤とする既存インフラストラクチャを持つ組織。
- Paddle Liteによるエッジデプロイ: Paddle LiteまたはPaddle推論エンジン向けに特別に最適化された推論カーネルを備えるハードウェアへのデプロイ。
- サーバー側での高精度検出: フレームワークへの依存が問題にならない、強力なGPUサーバー上で検出精度を最大化することを優先するシナリオ。
YOLOv10を選ぶ場合#
YOLOv10は、次のような用途に推奨されます。
- NMSを使用しないリアルタイム検出: 非最大抑制を使用しないエンドツーエンド検出によって、デプロイを簡素化できるアプリケーション。
- 速度と精度のバランス: さまざまなモデルスケールで、推論速度と検出精度の優れたバランスが必要なプロジェクト。
- レイテンシーが安定している必要のあるアプリケーション: ロボティクスや自律システムなど、予測可能な推論時間が重要なデプロイシナリオ。
Ultralytics (YOLO26)を選ぶ場合#
多くの新規プロジェクトにおいて、Ultralytics YOLO26はパフォーマンスと開発者体験を最適なバランスで提供します。
- NMSを使用しないエッジデプロイ: 非最大抑制の後処理を複雑化させずに、安定した低レイテンシー推論を必要とするアプリケーション。
- CPUのみの環境: 専用のGPUアクセラレーションを備えていないデバイスで、YOLO26の最大43%高速なCPU推論が大きな優位性を発揮します。
- 小物体検出: ドローンによる航空画像やIoTセンサーの分析など、ProgLossとSTALによって小さな物体の精度が大幅に向上する難しいシナリオ。
結論#
PP-YOLOE+は、Baiduのエコシステムや産業用サーバー環境に依存するチームにとって、引き続き有力な選択肢です。YOLOv10は、NMSフリーのリアルタイム検出が実現可能であることを示した、優れた学術的成果です。
ただし、精度、非常に高速な推論、シームレスなマルチタスク機能を最適なバランスで求める開発者には、Ultralytics YOLO26が最適な選択肢です。トレーニング効率とエッジ優先のデプロイアーキテクチャにおける革新により、2026年以降の本番環境向けコンピュータービジョンで、最も堅牢かつ汎用性の高いソリューションとなっています。