MODEL_ZOO.md

March 7, 2019 ยท View on GitHub

Model Zoo and Baselines

Hardware

  • 8 NVIDIA V100 GPUs

Software

  • PyTorch version: 1.0.0a0+dd2c487
  • CUDA 9.2
  • CUDNN 7.1
  • NCCL 2.2.13-1

End-to-end Faster and Mask R-CNN baselines

All the baselines were trained using the exact same experimental setup as in Detectron. We initialize the detection models with ImageNet weights from Caffe2, the same as used by Detectron.

The pre-trained models are available in the link in the model id.

backbonetypelr schedim / gputrain mem(GB)train time (s/iter)total train time(hr)inference time(s/im)box APmask APmodel id
R-50-C4Fast1x15.80.403620.20.1713034.8-6358800
R-50-FPNFast1x24.40.35308.80.1258036.8-6358793
R-101-FPNFast1x27.10.459111.50.14314939.1-6358804
X-101-32x8d-FPNFast1x17.60.700735.00.20996541.2-6358717
R-50-C4Mask1x15.80.452022.60.17796 + 0.02835.631.56358801
R-50-FPNMask1x25.20.453611.30.12966 + 0.03437.834.26358792
R-101-FPNMask1x27.90.566514.20.15384 + 0.03440.136.16358805
X-101-32x8d-FPNMask1x17.80.756237.80.21739 + 0.03442.237.86358718

For person keypoint detection:

backbonetypelr schedim / gputrain mem(GB)train time (s/iter)total train time(hr)inference time(s/im)box APkeypoint APmodel id
R-50-FPNKeypoint1x25.70.37719.40.1094153.764.39981060

Light-weight Model baselines

We provided pre-trained models for selected FBNet models.

  • All the models are trained from scratched with BN using the training schedule specified below.
  • Evaluation is performed on a single NVIDIA V100 GPU with MODEL.RPN.POST_NMS_TOP_N_TEST set to 200.

The following inference time is reported:

  • inference total batch=8: Total inference time including data loading, model inference and pre/post preprocessing using 8 images per batch.
  • inference model batch=8: Model inference time only and using 8 images per batch.
  • inference model batch=1: Model inference time only and using 1 image per batch.
  • inferenee caffe2 batch=1: Model inference time for the model in Caffe2 format using 1 image per batch. The Caffe2 models fused the BN to Conv and purely run on C++/CUDA by using Caffe2 ops for rpn/detection post processing.

The pre-trained models are available in the link in the model id.

backbonetyperesolutionlr schedim / gputrain mem(GB)train time (s/iter)total train time (hr)inference total batch=8 (s/im)inference model batch=8 (s/im)inference model batch=1 (s/im)inference caffe2 batch=1 (s/im)box APmask APmodel id
R-50-C4 (reference)Fast8001x15.80.403620.20.08750.07930.08310.062534.4-f35857197
fbnet_chamv1aFast6000.75x1213.60.544420.50.03150.02600.03760.018833.5-f100940543
fbnet_defaultFast6000.5x1611.10.487212.50.03160.02500.02970.013028.2-f101086388
R-50-C4 (reference)Mask8001x15.80.45222.60.09180.08480.0844-35.231.0f35858791
fbnet_xirb16dMask6000.5x1613.41.1732290.03860.03190.0356-30.726.9f101086394
fbnet_defaultMask6000.5x1613.00.903623.00.03270.02690.0385-29.026.1f101086385

Comparison with Detectron and mmdetection

In the following section, we compare our implementation with Detectron and mmdetection. The same remarks from mmdetection about different hardware applies here.

Training speed

The numbers here are in seconds / iteration. The lower, the better.

typeDetectron (P100)mmdetection (V100)maskrcnn_benchmark (V100)
Faster R-CNN R-50 C40.566-0.4036
Faster R-CNN R-50 FPN0.5440.5540.3530
Faster R-CNN R-101 FPN0.647-0.4591
Faster R-CNN X-101-32x8d FPN0.799-0.7007
Mask R-CNN R-50 C40.620-0.4520
Mask R-CNN R-50 FPN0.8890.6900.4536
Mask R-CNN R-101 FPN1.008-0.5665
Mask R-CNN X-101-32x8d FPN0.961-0.7562

Training memory

The lower, the better

typeDetectron (P100)mmdetection (V100)maskrcnn_benchmark (V100)
Faster R-CNN R-50 C46.3-5.8
Faster R-CNN R-50 FPN7.24.94.4
Faster R-CNN R-101 FPN8.9-7.1
Faster R-CNN X-101-32x8d FPN7.0-7.6
Mask R-CNN R-50 C46.6-5.8
Mask R-CNN R-50 FPN8.65.95.2
Mask R-CNN R-101 FPN10.2-7.9
Mask R-CNN X-101-32x8d FPN7.7-7.8

Accuracy

The higher, the better

typeDetectron (P100)mmdetection (V100)maskrcnn_benchmark (V100)
Faster R-CNN R-50 C434.8-34.8
Faster R-CNN R-50 FPN36.736.736.8
Faster R-CNN R-101 FPN39.4-39.1
Faster R-CNN X-101-32x8d FPN41.3-41.2
Mask R-CNN R-50 C435.8 & 31.4-35.6 & 31.5
Mask R-CNN R-50 FPN37.7 & 33.937.5 & 34.437.8 & 34.2
Mask R-CNN R-101 FPN40.0 & 35.9-40.1 & 36.1
Mask R-CNN X-101-32x8d FPN42.1 & 37.3-42.2 & 37.8