[論文レビュー] PP-YOLOE: An evolved version of YOLO
PP-YOLOE はアンカーなし設計、CSPRepResNet バックボーン/ネック、ET ヘッド、TAL ラベル割り当てを備えた産業用のワンステージ検出器で、PP-YOLOv2 を発展させ、COCO の最先端結果と広い導入性を実現します。
In this report, we present PP-YOLOE, an industrial state-of-the-art object detector with high performance and friendly deployment. We optimize on the basis of the previous PP-YOLOv2, using anchor-free paradigm, more powerful backbone and neck equipped with CSPRepResStage, ET-head and dynamic label assignment algorithm TAL. We provide s/m/l/x models for different practice scenarios. As a result, PP-YOLOE-l achieves 51.4 mAP on COCO test-dev and 78.1 FPS on Tesla V100, yielding a remarkable improvement of (+1.9 AP, +13.35% speed up) and (+1.3 AP, +24.96% speed up), compared to the previous state-of-the-art industrial models PP-YOLOv2 and YOLOX respectively. Further, PP-YOLOE inference speed achieves 149.2 FPS with TensorRT and FP16-precision. We also conduct extensive experiments to verify the effectiveness of our designs. Source code and pre-trained models are available at https://github.com/PaddlePaddle/PaddleDetection.
研究の動機と目的
- リアルタイムアプリケーション向けに実用的なモデルファミリでワンステージ物体検出をスケーラブルに推進する。
- 分類と位置合わせの整合性をタスク指向のトレーニングで改善する。
- RepResBlock ベースの CSPRepResNet および CSPRepResStage によるバックボーンとネックの効率を向上させる。
- 動的ラベル割り当てと高速・効率的なヘッドを組み込み、変形演算や Matrix NMS に頼らず精度を向上させる。
提案手法
- FCOS に触発されたアンカーなし検出を採用し、ピクセルレベルの正サンプルを用いる。
- バックボーン/ネック用の RepResBlock と、効率的なクロスステージ接続の CSPRepResNet/CSPRepResStage を導入する。
- 動的ラベル割り当てを用いたタスク整列学習(TAL)を組み込み、正サンプル選択と定位の精度を改善する。
- ESE アテンション、VFL/DFL に基づく損失、分布ベースの境界ボックスモデリングを統合した Efficient Task-aligned Head(ET-head)を開発する。
- 幅・深度の倍率でモデルをスケールさせ、s/m/l/x のバリアントを作成し、柔軟な導入を可能にする。
- PaddleDetection、TensorRT、ONNX サポートを備えた導入済み実装を提供する。
実験結果
リサーチクエスチョン
- RQ1 TAL を用いたアンカーなしトレーニングは、アンカーベースの PP-YOLOv2 や競合モデルである YOLOX と比べて測定可能な改善をもたらすか。
- RQ2 CSPRepResNet/RepResBlock バックボーン-ネック設計が、モデル規模全体での速度と精度にどのような影響を与えるか。
- RQ3 ET-head と VFL/DFL 損失は、分類-定位の整合性と全体の AP にどのように影響するか。
- RQ4 提案された PP-YOLOE シリーズは、さまざまなバリアントで産業導入の制約(速度、メモリ、ハードウェア互換性)を満たせるか。
主な発見
| モデル | バックボーン | サイズ | FPS (v100) | AP | AP50 | AP75 | APs | APm | APl | |
|---|---|---|---|---|---|---|---|---|---|---|
| YOLOv3 + ASFF* | Darknet-53 | 320 | 60 | - | 38.1% | 57.4% | 42.1% | 16.1% | 41.6% | 53.6% |
| YOLOv3 + ASFF* | Darknet-53 | 416 | 54 | - | 40.6% | 60.6% | 45.1% | 20.3% | 44.2% | 54.1% |
| YOLOv4 | CSPDarknet-53 | 416 | 96 | - | 41.2% | 62.8% | 44.3% | 20.4% | 44.4% | 56.0% |
| YOLOv4 | CSPDarknet-53 | 512 | 83 | - | 43.0% | 64.9% | 46.5% | 24.3% | 46.1% | 55.2% |
| YOLOv4-CSP | Modified CSPDarknet-53 | 512 | 97 | - | 46.2% | 64.8% | 50.2% | 24.6% | 50.4% | 61.9% |
| YOLOv4-CSP | Modified CSPDarknet-53 | 640 | 73 | - | 47.5% | 66.2% | 51.7% | 28.2% | 51.2% | 59.8% |
| EfficientDet-D0 | Efficient-B0 | 512 | 98.0 | - | 33.8% | 52.2% | 35.8% | 12.0% | 38.3% | 51.2% |
| EfficientDet-D1 | Efficient-B1 | 640 | 74.1 | - | 39.6% | 58.6% | 42.3% | 17.9% | 44.3% | 56.0% |
| EfficientDet-D2 | Efficient-B2 | 768 | 56.5 | - | 43.0% | 62.3% | 46.2% | 22.5% | 47.0% | 58.4% |
| EfficientDet-D2 | Efficient-B3 | 896 | 34.5 | - | 45.8% | 65.0% | 49.3% | 26.6% | 49.4% | 59.8% |
| PP-YOLO | ResNet50-vd-dcn | 320 | 132.2+ | 242.2+ | 39.3% | 59.3% | 42.7% | 16.7% | 41.4% | 57.8% |
| PP-YOLO | ResNet50-vd-dcn | 416 | 109.6+ | 215.4+ | 42.5% | 62.8% | 46.5% | 21.2% | 45.2% | 58.2% |
| PP-YOLO | ResNet50-vd-dcn | 512 | 89.9+ | 188.4+ | 44.4% | 64.6% | 48.8% | 24.4% | 47.1% | 58.2% |
| PP-YOLO | ResNet50-vd-dcn | 608 | 72.9+ | 155.6+ | 45.9% | 65.2% | 49.9% | 26.3% | 47.8% | 57.2% |
| PP-YOLOv2 | ResNet50-vd-dcn | 320 | 123.3 | - | 43.1% | 61.7% | 46.5% | 19.7% | 46.3% | 61.8% |
| PP-YOLOv2 | ResNet50-vd-dcn | 416 | 102+ | - | 46.3% | 65.1% | 50.3% | 23.9% | 50.2% | 62.2% |
| PP-YOLOv2 | ResNet50-vd-dcn | 512 | 93.4+ | - | 48.2% | 67.1% | 52.7% | 27.7% | 52.1% | 62.1% |
| PP-YOLOv2 | ResNet50-vd-dcn | 640 | 68.9+ | - | 49.5% | 68.2% | 54.4% | 30.7% | 52.9% | 61.2% |
| PP-YOLOv2 | ResNet101-vd-dcn | 640 | 50.3+ | - | 50.3% | 69.0% | 55.3% | 31.6% | 53.9% | 62.4% |
| PP-YOLOE-s | CSPRepResNet | 640 | 208.3 | 43.1% | 60.5% | 46.6% | 23.2% | 46.4% | 56.9% | |
| PP-YOLOE-m | CSPRepResNet | 640 | 123.4 | 48.9% | 66.5% | 53.0% | 28.6% | 52.9% | 63.8% | |
| PP-YOLOE-l | CSPRepResNet | 640 | 78.1 | 51.4% | 68.9% | 55.6% | 31.4% | 55.3% | 66.1% | |
| PP-YOLOE-x | CSPRepResNet | 640 | 45.0 | 52.2% | 69.9% | 56.5% | 33.3% | 56.3% | 66.4% | |
| PP-YOLOE+-s | CSPRepResNet | 640 | 208.3 | 43.7% | 60.6% | 47.9% | 26.5% | 47.5% | 59.0% | |
| PP-YOLOE+-m | CSPRepResNet | 640 | 123.4 | 49.8% | 67.1% | 54.5% | 31.8% | 53.9% | 66.2% | |
| PP-YOLOE+-l | CSPRepResNet | 640 | 78.1 | 52.9% | 70.1% | 57.9% | 35.2% | 57.5% | 69.1% | |
| PP-YOLOE+-x | CSPRepResNet | 640 | 45.0 | 54.7% | 72.0% | 59.9% | 37.9% | 59.3% | 70.4% |
- PP-YOLOE-l は COCO test-dev で 51.4 mAP、Tesla V100 で 78.1 FPS。
- PP-YOLOE-l は PP-YOLOv2 および YOLOX と比較してそれぞれ 1.9 ポイントまたは 1.3 ポイントの AP 向上を示し、速度も向上。
- アンカーなし設計は、ベースラインの PP-YOLOv2 に対して AP の損失を最小限(0.3)に抑えつつ、手動で調整されたアンカーへの依存を減らす。
- TAL はアブレーションで最高 45.2 AP を提供し、他の要素と組み合わせるとベースラインとして 50.4 AP を生み出す。
- ET-head はベースに対して 0.5 AP を追加し、速度を良好に維持して 50.9 AP に寄与する。
- PP-YOLOE-s/i/m/x は、精度と導入ハードウェアに応じて 52.2–54.7 AP、95.2–149.2 FPS に到達する。
- PP-YOLOE ファミリーは、FP32/FP16/TensorRT 構成で YOLOv5/YOLOX と比較して速度/精度の競争力ある、または優れたトレードオフを達成する。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。