Source-linked AI summary

PP-YOLO: An Effective and Efficient Implementation of Object Detector

Xiang Long, Kaipeng Deng, Guanzhong Wang, Yang Zhang, Qingqing Dang, Yuan Gao, Hui Shen, Jianguo Ren, Shumin Han, Errui Ding, Shilei Wen

arXiv:2007.12099v3cs.CV

TL;DR

Object detection requires balancing accuracy and inference speed under practical hardware constraints. The paper builds PP-YOLO from YOLOv3 by combining existing tricks that largely preserve efficiency, achieving 45.2% mAP and a reported practical speed advantage over YOLOv4.

  • Problem

    Object detection needs a practical balance between effectiveness and efficiency because hardware limitations can force accuracy–speed trade-offs.

  • Method

    PP-YOLO improves YOLOv3 by combining existing efficiency-preserving tricks and selected architectural, loss, regularization, and post-processing changes.

  • Results

    45.2% mAP is reported for PP-YOLO on COCO, with speed faster than YOLOv4.

  • Takeaways & Limitations

    PP-YOLO provides a practical recipe for combining tricks to improve YOLOv3 performance while largely maintaining inference efficiency.

  • Takeaways & Limitations

    The paper does not explore alternative backbones, data augmentation methods, or NAS-based hyperparameter search, which the authors state could further improve performance.

Abstract

from arXiv · show

Object detection is one of the most important areas in computer vision, which plays a key role in various practical scenarios. Due to limitation of hardware, it is often necessary to sacrifice accuracy to ensure the infer speed of the detector in practice. Therefore, the balance between effectiveness and efficiency of object detector must be considered. The goal of this paper is to implement an object detector with relatively balanced effectiveness and efficiency that can be directly applied in actual application scenarios, rather than propose a novel detection model. Considering that YOLOv3 has been widely used in practice, we develop a new object detector based on YOLOv3. We mainly try to combine various existing tricks that almost not increase the number of model parameters and FLOPs, to achieve the goal of improving the accuracy of detector as much as possible while ensuring that the speed is almost unchanged. Since all experiments in this paper are conducted based on PaddlePaddle, we call it PP-YOLO. By combining multiple tricks, PP-YOLO can achieve a better balance between effectiveness (45.2% mAP) and efficiency (72.9 FPS), surpassing the existing state-of-the-art detectors such as EfficientDet and YOLOv4.Source code is at https://github.com/PaddlePaddle/PaddleDetection.

1. Introduction

The paper develops PP-YOLO, an improved YOLOv3 implementation that combines efficiency-preserving tricks to improve detection accuracy. It targets a practical balance between speed and effectiveness, reporting 45.2% mAP and faster speed than YOLOv4.

  • Motivation: YOLO-series one-stage detectors are widely used because they balance detection speed and accuracy.The introduction identifies object detection as important and challenging, with YOLO among the prominent practical detector families.
  • Contribution: PP-YOLO improves YOLOv3 by combining tricks that largely preserve inference efficiency.The paper frames PP-YOLO as an implementation recipe rather than a novel detection model.
  • Design choices: The implementation uses ResNet as the backbone and basic MixUp augmentation instead of exploring alternative backbones or augmentation methods.The authors cite deployment convenience and inference speed as reasons for using ResNet, while following YOLOv3 manually set hyperparameters rather than NAS.
  • Scope: The authors state that stronger backbones, improved augmentation, and NAS-based hyperparameter search could further improve PP-YOLO.These approaches are outside the paper’s explored scope.
  • Results: 45.2% mAP is achieved on COCO, improving from the YOLOv3 baseline of 43.5%.The reported PP-YOLO model runs faster than YOLOv4.

2. Related Work

The related work situates PP-YOLO among anchor-based and anchor-free object detectors, emphasizing YOLO’s practical speed–accuracy balance. YOLOv4 is presented as a closely related detector that combines low-cost accuracy-improving strategies.

  • Anchor-based methods: Anchor-based detectors use predefined anchor boxes as priors for bounding-box regression and include one-stage and two-stage architectures.The passage lists YOLO, RetinaNet, RefineDet, EfficientDet, FreeAnchor, and Fast R-CNN among representative methods.
  • Anchor-free methods: Anchor-free methods avoid hand-crafted anchors and show potential for extreme object scales and aspect ratios.Some recently proposed anchor-free detectors can compete with state-of-the-art anchor-based detectors.
  • YOLO series: YOLO detectors are widely used in practice because they provide strong effectiveness and efficiency.YOLOv4 extends YOLOv3 with bag-of-freebies and bag-of-specials strategies, improving performance while limiting inference cost.

3. Method

PP-YOLO builds on YOLOv3 by combining efficiency-preserving architectural modifications and existing training, loss, and post-processing tricks. Its design uses a ResNet-based backbone, FPN neck, simple YOLOv3 head, and selectively injected enhancements.

  • Backbone: PP-YOLO replaces DarkNet-53 with a ResNet50-vd-dcn backbone, using deformable convolutions selectively to balance effectiveness and inference efficiency.Only 3 × 3 convolution layers in the last stage are replaced with DCNs; the resulting stages output C3, C4, and C5.
  • Detection Head: The YOLOv3 detection head uses sequential 3×3 and 1×1 convolutions to predict class probabilities, box localization, and objectness for three anchors per position.Its output has 3(K + 5) channels, with cross entropy, L1, and objectness losses supervising classification, localization, and objectness.
  • Selection of Tricks: PP-YOLO combines existing tricks rather than proposing a novel detector, adjusting them where necessary for YOLOv3's structure.The stated focus is stacking effective tricks that hardly affect efficiency and providing a step-by-step detector-building recipe.
  • Selection of Tricks: Additional modifications address receptive field, localization loss and confidence, grid-boundary centers, and parallel suppression through SPP, IoU losses, IoU-aware prediction, Grid Sensitive, and Matrix NMS.SPP uses max-pooling kernels {1, 5, 9, 13}; Grid Sensitive sets α to 1.05, and Matrix NMS is designed to avoid sequential suppression overhead.
  • Selection of Tricks: Training enhancements include distilled ResNet50-vd pretraining, batch size 192, EMA evaluation with decay 0.9998, and DropBlock applied only to the FPN.The authors report that larger batches improve training stability, while applying DropBlock to the backbone decreases performance.

4. Experiment

Experiments evaluate PP-YOLO on MS-COCO through incremental ablations and comparisons under different inference conditions. Combining training, loss, post-processing, architectural, and pretraining changes improves accuracy while preserving a favorable speed–accuracy balance.

  • Ablation Study: 41.4% mAP is reached after larger-batch training, EMA, and FPN-only DropBlock, without efficiency loss.The ablation attributes these strategies to improved training stability and overfitting prevention.
  • Ablation Study: 42.8% mAP is obtained after adding IoU Loss, IoU Aware, and Grid Sensitive modules to the 41.4% model.IoU Loss adds no parameters or inference time; IoU Aware and Grid Sensitive add 0.7 ms and 0.1 ms of post-processing time, respectively.
  • Ablation Study: Matrix NMS improves mAP by 0.6% and decreases overall inference time because it is more efficient than traditional NMS.The reported ablation inference time excludes NMS, so its effect is not shown there.
  • Ablation Study: CoordConv adds 0.03M parameters and 0.05G FLOPs for a 0.5% mAP gain, while SPP adds 1M parameters and 0.36G FLOPs for a further 0.3% gain.Together, these modules increase inference time by 0.3 ms.
  • Ablation Study: Distilled ResNet50-vd initialization further improves PP-YOLO mAP by 0.3% while retaining ImageNet pretraining for fair comparisons.The paper notes that other detection datasets could improve pretraining performance but are outside its scope.
  • Comparison with Other State-of-the-Art Detectors: 45.2% COCO mAP and 72.9 FPS are reported for PP-YOLO, compared with 43.5% and 62 FPS for YOLOv4.FPS comparisons use V100 hardware with batch size 1; results are reported with and without TensorRT under the paper’s comparison protocol.
  • Comparison with Other State-of-the-Art Detectors: Changing the input size to 320, 416, 512, or 608 produces a series of PP-YOLO speed–accuracy operating points.The paper states that these results have an advantageous balance compared with other detectors.

5. Conclusions

PP-YOLO combines multiple existing improvements with YOLOv3 in PaddlePaddle to improve practical object-detection effectiveness and efficiency. The resulting implementation is intended to help developers achieve better performance while reducing trial-and-error exploration.

  • Conclusions: PP-YOLO combines multiple tricks with YOLOv3 to improve detector accuracy while adding little inference cost.The implementation is based on PaddlePaddle and targets practical deployment.
  • Conclusions: The paper presents a recipe for combining effective tricks rather than a novel object-detection model.The recipe is intended to save developers’ and researchers’ exploration time.
Loading 2007.12099v3…