Command Palette
Search for a command to run...
SpineNet: Learning Scale-Permuted Backbone for Recognition and Localization
Xianzhi Du Tsung-Yi Lin Pengchong Jin Golnaz Ghiasi Mingxing Tan Yin Cui Quoc V. Le Xiaodan Song

Abstract
Convolutional neural networks typically encode an input image into a series of intermediate features with decreasing resolutions. While this structure is suited to classification tasks, it does not perform well for tasks requiring simultaneous recognition and localization (e.g., object detection). The encoder-decoder architectures are proposed to resolve this by applying a decoder network onto a backbone model designed for classification tasks. In this paper, we argue encoder-decoder architecture is ineffective in generating strong multi-scale features because of the scale-decreased backbone. We propose SpineNet, a backbone with scale-permuted intermediate features and cross-scale connections that is learned on an object detection task by Neural Architecture Search. Using similar building blocks, SpineNet models outperform ResNet-FPN models by ~3% AP at various scales while using 10-20% fewer FLOPs. In particular, SpineNet-190 achieves 52.5% AP with a MaskR-CNN detector and achieves 52.1% AP with a RetinaNet detector on COCO for a single model without test-time augmentation, significantly outperforms prior art of detectors. SpineNet can transfer to classification tasks, achieving 5% top-1 accuracy improvement on a challenging iNaturalist fine-grained dataset. Code is at: https://github.com/tensorflow/tpu/tree/master/models/official/detection.
Code Repositories
Benchmarks
| Benchmark | Methodology | Metrics |
|---|---|---|
| image-classification-on-imagenet | SpineNet-143 | GFLOPs: 9.1 Number of params: 60.5M Top 1 Accuracy: 79% |
| image-classification-on-inaturalist | SpineNet-143 | Top 1 Accuracy: 63.6% Top 5 Accuracy: 84.8% |
| instance-segmentation-on-coco | Mask R-CNN (SpineNet-190, 1536x1536) | mask AP: 46.1 |
| instance-segmentation-on-coco-minival | RetinaNet (SpineNet-190, 1536x1536) | mask AP: 46.1 |
| object-detection-on-coco | RetinaNet (SpineNet-96, 1024x1024) | AP50: 68.4 AP75: 52.5 APL: 62 APM: 52.3 APS: 32 box mAP: 48.6 |
| object-detection-on-coco | RetinaNet (SpineNet-49S, 640x640) | AP50: 60.5 AP75: 44.6 APL: 58 APM: 45 APS: 23.3 box mAP: 41.5 |
| object-detection-on-coco | RetinaNet (SpineNet-49, 896x896) | AP50: 66.3 AP75: 50.6 APL: 61.7 APM: 50.1 APS: 29.1 box mAP: 46.7 |
| object-detection-on-coco | RetinaNet (SpineNet-49, 640x640) | AP50: 63.8 AP75: 47.6 APL: 61.1 APM: 47.7 APS: 25.9 box mAP: 44.3 |
| object-detection-on-coco | SpineNet-49 (640, RetinaNet, single-scale) | AP50: 62.3 AP75: 46.1 APL: 57.3 APM: 45.2 APS: 23.7 box mAP: 42.8 |
| object-detection-on-coco | RetinaNet (SpineNet-143, 1280x1280) | AP50: 70.4 AP75: 54.9 APL: 62.1 APM: 53.9 APS: 33.6 box mAP: 50.7 |
| object-detection-on-coco | RetinaNet (SpineNet-190, 1280x1280) | AP50: 71.8 AP75: 56.5 APL: 63.6 APM: 55 APS: 35.4 box mAP: 52.1 |
| object-detection-on-coco-minival | RetinaNet (SpineNet-190, 1536x1536) | box AP: 52.2 |
Build AI with AI
From idea to launch — accelerate your AI development with free AI co-coding, out-of-the-box environment and best price of GPUs.