YOLOv10 PP-YOLOE+の比較:包括的な技術比較
適切な物体検出モデルを選択することは、効率的なコンピュータ・ビジョン・アプリケーションを開発する上で極めて重要なステップである。その選択には、推論速度、検出精度、ハードウェアの制約の間のトレードオフを秤にかけることがしばしば含まれる。この技術比較では YOLOv10と、BaiduのPaddlePaddle エコシステムの高精度モデルであるPP-YOLOE+を分析する。両モデルともアーキテクチャに大きな革新を導入しているが、展開のニーズや開発環境は異なる。
YOLOv10:リアルタイムEnd-to-End検出の新基準
YOLOv10 、YOLO (You Only Look Once)シリーズの大きな飛躍を象徴するもので、従来のポストプロセッシングに関連するパフォーマンスのボトルネックを取り除くことに重点を置いています。清華大学の研究者によって開発され、NMSNon-Maximum Suppression)の必要性を排除することで、低レイテンシーと高効率を実現している。
著者Ao Wang, Hui Chen, Lihao Liu, et al.
所属機関:清華大学
Date:2024-05-23
ArXiv:https://arxiv.org/abs/2405.14458
GitHub:https://github.com/THU-MIG/yolov10
Docsultralytics
アーキテクチャと主な機能
YOLOv10 、学習時に一貫した二重割り当て戦略を導入している。この方法によって、推論中にモデルが各オブジェクトに対して単一の最適なボックスを予測し、NMS 後処理の必要性を効果的に取り除くことができる。このNMS"デザインは、特にオブジェクトクラスターが密集しているシーンにおいて、推論の待ち時間を大幅に短縮します。
主な建築上の進歩は以下の通り:
- 全体的な効率と精度の設計:このモデルは、精度を犠牲にすることなく計算コスト(FLOPs)を削減するために、軽量分類ヘッドと空間チャンネル非連結ダウンサンプリングを採用しています。
- ランク誘導型ブロック設計:スピードと精度のトレードオフを最適化するため、モデルの異なるステージで様々なブロックデザインを使用し、深いレイヤーでの冗長性を減らしている。
- ラージカーネル畳み込み:ラージカーネル畳み込みを戦略的に使用することで、受容野が強化され、文脈をよりよく理解し、小さな物体をdetect できるようになる。
長所と短所
YOLOv10 、最大限の効率を発揮するように設計されており、リアルタイム・アプリケーションにとって強力な選択肢となる。
- 長所: NMS 排除することで、より高速で決定論的な推論速度を実現。パラメータ効率に優れ、従来よりも少ないパラメータで高いmAP スコアを達成。Ultralytics エコシステムに統合されているため、シンプルなPython APIを使用して簡単にトレーニングおよびデプロイできます。
- 弱点: Ultralytics スイートの他のモデルは、セグメンテーションや ポーズ推定など、より幅広いタスクをサポートしているのに対し、特殊なオブジェクト検出器として、現在のところ主にバウンディングボックスの検出に焦点を当てている。
理想的なユースケース
- 自律型ロボット工学: YOLOv10 低遅延性は、ナビゲーションや障害物回避に瞬時の判断が要求されるロボット工学にとって極めて重要である。
- エッジAIの展開: YOLOv10ような小型のバリエーションは、NVIDIA JetsonやRaspberry Piのようなエッジデバイスに最適です。
- トラフィックのモニタリングこのモデルは、NMS オーバーヘッドなしに高密度のシーンを処理できるため、リアルタイムのトラフィック管理に最適です。
PP-YOLOE+:PaddlePaddle 精密工学
PP-YOLOE+は、百度が開発したPP-YOLOEシリーズの進化版である。高精度を優先し、スケーラブルでアンカーのない検出器として設計されている。PP-YOLOE+は PaddlePaddleフレームワークの礎となるモデルであり、その環境に特化して最適化されている。
著者 PaddlePaddle Authors
Organization:Baidu
Date:2022-04-02
ArXiv:https://arxiv.org/abs/2203.16250
GitHubPaddlePaddle
DocsPaddlePaddle
アーキテクチャと主な機能
PP-YOLOE+はアンカーフリーのアーキテクチャを採用しており、アンカーベースの先行技術と比較してハイパーパラメータの探索空間が単純化されている。
主な特徴は以下の通り:
- CSPRepResNetバックボーン:このバックボーンはCSPNetの勾配フローの利点と再パラメータ化ResNetブロックの推論効率を組み合わせたものである。
- タスク・アライメント学習(TAL):アンカー分類の品質とローカライズ精度を動的に整合させる、特殊なラベル割り当て戦略。
- 効率的タスクアラインドヘッド(ET-Head):分類とローカライゼーションの特徴を独立して処理し、競合を回避する分離型検出ヘッド。
長所と短所
PP-YOLOE+はロバストなモデルだが、採用に影響を及ぼす可能性のある依存性を抱えている。
- 長所:以下のようなベンチマークで優れた精度を発揮する。 COCOなどのベンチマークで優れた精度を実現。PaddlePaddle 推論エンジンがサポートするハードウェアに高度に最適化されている。
- 弱点:主な制限は、PaddlePaddle エコシステムへの依存である。に慣れている開発者にとっては PyTorchに慣れている開発者にとって、PP-YOLOE+への移行は、学習曲線がより険しくなり、ツールの統合に摩擦が生じる可能性がある。さらに、パラメータ数がYOLOv10 大幅に多いため、メモリ使用量が多くなります。
理想的なユースケース
- 工業用検査:精度が高いため、製造業における微細な欠陥の検出に適している。
- リテールアナリティクス: スマートな小売環境における在庫カウントや商品認識に効果的。
- 材料の選別:リサイクル施設で多様な材料の自動選別に使用される。
パフォーマンス分析:効率と精度
技術的な指標を比較すると、YOLOv10 効率性において明らかな優位性を示している。パラメータと計算リソース(FLOPs)を大幅に削減しながら、同等かそれ以上の精度mAP)を達成している。
| モデル | サイズ (ピクセル) | mAP値 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | params (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 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 |
主なポイント
- 効率:YOLOv10lは、PP-YOLOE+l(52.9%)よりも高いmAP (53.3%)を達成しながら、使用するパラメータは44%近く少ない。これにより、YOLOv10 、保管が大幅に軽くなり、読み込みが速くなります。
- スピード: YOLOv10 NMS設計は、全体的に低レイテンシーを実現します。例えば、YOLOv10nは1.56msと非常に高速で、高速ビデオ解析に優れています。
- スケーラビリティ:PP-YOLOE+xは、未加工のmAP わずかに優位(0.3%高い)であるものの、YOLOv10xと比較して、ほぼ2倍のパラメータ(98.42M対56.9M)とFLOPを必要とする。
メモリ効率
YOLOv10 YOLO11 ようなUltralytics 、古いアーキテクチャや重い変換器ベースのモデルと比較して、通常、学習と推論の両方でより低いメモリ要件を示します。この効率性により、標準的なGPU ハードウェア上で、より大きなバッチサイズとより高速なトレーニングサイクルが可能になります。
Ultralytics 優位性
どちらのモデルも有能ではあるが、Ultralytics エコシステム内のモデル、例えば YOLOv10 最先端の YOLO11-のようなUltralyticsエコシステム内のモデルを選択することは、開発者に明確な利点をもたらします。
- 使いやすさ: Ultralytics Python APIは、複雑な定型コードを抽象化します。わずか数行のPythonモデルのトレーニング、検証、デプロイが可能です。
- 整備されたエコシステム:ユーザーは、頻繁なアップデート、GitHub上の活気あるコミュニティ、Ultralytics HUBや以下のようなMLOpsツールとのシームレスな統合から恩恵を受ける。 Weights & Biases.
- 汎用性:標準的な物体検出だけでなく、Ultralytics フレームワークは、インスタンス分割、画像分類、姿勢推定、および方向バウンディングボックス(OBB)検出をサポートし、多様なコンピュータビジョンタスクのための統一されたソリューションを提供します。
コード例:Ultralytics YOLOv10 実行する
YOLOv10 ワークフローに統合するのは、Ultralytics ライブラリを使えば簡単です:
from ultralytics import YOLO
# Load a pre-trained YOLOv10n model
model = YOLO("yolov10n.pt")
# Run inference on an image
results = model.predict("path/to/image.jpg")
# Display the results
results[0].show()
結論
との比較では YOLOv10とPP-YOLOE+の比較では、YOLOv10 、ほとんどの汎用コンピューター・ビジョン・アプリケーションにとって優れた選択肢であることが明らかになった。そのNMSアーキテクチャは、物体検出のレイテンシーにおける長年のボトルネックを解決し、その非常に効率的なパラメータ使用により、エッジデバイスからクラウドサーバーまで、より幅広いハードウェアへの展開が可能です。
PP-YOLOE+は、PaddlePaddle フレームワークに厳密に縛られているユーザーや、計算効率よりも精度のわずかな向上を優先するユーザーにとっては、依然として強力な候補である。しかし、スピード、精度、使いやすさのバランスを求める開発者にとっては、YOLOv10より広範なUltralytics エコシステムが、より将来性があり、開発者に優しい道を提供する。
その他のモデルを見る
Ultralytics エコシステムの中でより多くのオプションを検討することに興味がある場合は、これらの比較をチェックアウトすることを検討してください:
- YOLO11 vsYOLOv10:最新のフラッグシップモデルと、効率性を重視したYOLOv10比較をご覧ください。
- YOLOv10 vsRT-DETR:リアルタイム変換器とCNNベースのYOLO アーキテクチャを比較する。
- YOLOv8 PP-YOLOE+の比較:広く採用されているYOLOv8 Baiduのモデルのパフォーマンスを比較。