Skip to content

Latest commit

 

History

History

cls

CLS (Classification)

Please install py-RFCN-priv for evaluating and finetuning.

Disclaimer

Most of the models are converted from other projects, the main contribution belongs to the original authors.

Project links:

mxnet-model-gallerytensorflow slimcraftGBDResNeXtDenseNetwide-residual-networkskeras deep-learning-modelsademxappDPNsSenet

Performance on imagenet validation.

1. Top-1/5 error of pre-train models in this repository.

Network 224/299
(single-crop)
224/299
(12-crop)
320/395
(single-crop)
320/395
(12-crop)
resnet18-priv 29.62/10.38 26.69/8.64 27.54/8.98 26.23/8.21
resnext26-32x4d-priv 24.93/7.75 23.54/6.89 24.20/7.21 23.19/6.60
resnet101-v2 21.95/6.12 19.99/5.04 20.37/5.16 19.29/4.57
resnet152-v2 20.85/5.42 19.24/4.68 19.66/4.73 18.84/4.32
resnet269-v2 19.71/5.00 18.25/4.20 18.70/4.33 17.87/3.85
resnet38a 20.66/5.27 ../.. 19.25/4.66 ../..
inception-v3 21.67/5.75 19.60/4.73 20.10/4.82 19.25/4.24
xception 20.90/5.49 19.68/4.90 19.58/4.77 18.91/4.39
inception-v4 20.03/5.09 18.60/4.30 18.68/4.32 18.12/3.92
inception-resnet-v2 19.86/4.83 18.46/4.08 18.75/4.02 18.15/3.71
resnext50-32x4d 22.37/6.31 20.53/5.35 21.10/5.53 20.37/5.03
resnext101-32x4d 21.30/5.79 19.47/4.89 19.91/4.97 19.19/4.59
resnext101-64x4d 20.60/5.41 18.88/4.59 19.26/4.63 18.48/4.31
wrn50-2
(resnet50-1x128d)
22.13/6.13 20.09/5.06 20.68/5.28 19.83/4.87
airx50-24x4d 22.39/6.23 20.36/5.19 20.88/5.33 19.97/4.92
air101 21.32/5.76 19.36/4.84 19.92/4.75 19.05/4.43
air152 20.38/5.11 18.46/4.26 19.08/4.40 18.53/4.00
airx101-32x4d 21.15/5.74 19.43/4.86 19.61/4.93 18.90/4.49
dpn-68-extra 22.56/6.24 20.48/4.99 20.99/5.25 20.09/4.73
dpn-92 20.81/5.47 18.99/4.59 19.23/4.64 18.68/4.24
dpn-98 20.27/5.28 18.57/4.42 18.87/4.43 18.21/4.11
dpn-131 20.00/5.24 18.52/4.28 18.63/4.31 17.99/3.92
dpn-107-extra 19.70/5.06 ../.. 18.41/4.25 ../..
se-inception-v2
(se-inception-bn)
23.64/7.04 21.57/5.86 21.61/5.87 20.85/5.38
se-resnet50 22.39/6.37 20.61/5.34 20.49/5.22 20.02/4.85
se-resnet50-hik 21.98/5.80 20.06/4.88 20.51/5.04 19.92/4.68
se-resnet101 21.76/5.72 19.96/4.79 19.97/4.78 19.34/4.41
se-resnet152 21.34/5.54 19.56/4.66 19.34/4.59 18.83/4.32
se-resnext50-32x4d 20.96/5.53 19.39/4.69 19.36/4.66 18.70/4.38
se-resnext101-32x4d 19.83/4.95 18.44/4.16 18.14/4.08 17.68/3.86
senet
(se-resnext152-64x4d)
18.67/4.47 17.40/3.69 17.28/3.78 16.80/3.47
  • The resnet18-priv, resnext26-32x4d-priv are trained under pytorch by bupt-priv.
  • The pre-train models are tested on original caffe by evaluation_cls.py, but ceil_mode:false(pooling_layer) is used for the models converted from torch, the detail in https://github.com/BVLC/caffe/pull/3057/files. If you remove ceil_mode:false, the performance will decline about 1% top1.
  • 224x224(base_size=256) and 320x320(base_size=320) crop size for resnet-v2/resnext/wrn, 299x299(base_size=320) and 395x395(base_size=395) crop size for inception.

2. Top-1/5 accuracy with different crop sizes. teaser

  • Figure: Accuracy curves of inception_v3(left) and resnet101_v2(right) with different crop sizes.

3. Download url and forward/backward time cost for each model.

Forward/Backward time cost is evaluated with one image/mini-batch using cuDNN 5.1 on a Pascal Titan X GPU.

We use

  ~/caffe/build/tools/caffe -model deploy.prototxt time -gpu -iterations 1000

to test the forward/backward time cost, the result is really different with time cost of evaluation_cls.py

Network F/B(224/299) F/B(320/395) Download
(BaiduCloud)
Download
(GoogleDrive)
Source
resnet18-priv 4.48/5.07ms 4.99/7.01ms 44.6MB 44.6MB pytorch-cls
resnext26-32x4d-priv 8.53/10.12ms 10.55/13.46ms 58.9MB 58.9MB pytorch-cls
resnet101-v2 22.31/22.75ms 26.02/29.50ms 170.3MB 170.3MB craftGBD
resnet152-v2 32.11/32.54ms 37.46/41.84ms 230.2MB 230.2MB craftGBD
resnet269-v2 58.20/59.15ms 69.43/77.26ms 390.4MB 390.4MB craftGBD
inception-v3 21.79/19.82ms 22.14/24.88ms 91.1MB 91.1MB mxnet
xception 14.03/30.39ms 19.46/48.64ms 87.4MB 87.4MB keras-models
inception-v4 32.96/32.19ms 36.04/41.91ms 163.1MB 163.1MB tf-slim
inception-resnet-v2 49.06/54.83ms 54.06/66.38ms 213.4MB 213.4MB tf-slim
resnext50-32x4d 17.29/20.08ms 19.02/23.81ms 95.8MB 95.8MB facebookresearch
resnext101-32x4d 30.73/35.75ms 34.33/41.02ms 169.1MB 169.1MB facebookresearch
resnext101-64x4d 42.07/64.58ms 51.99/77.71ms 319.2MB 319.2MB facebookresearch
wrn50-2
(resnet50_1x128d)
16.48/25.28ms 20.99/35.04ms 263.1MB 263.1MB szagoruyko
airx50-24x4d 23.59/24.80ms 26.64/30.92ms .. .. pytorch-cls
air101 35.78/35.94ms 39.69/45.52ms .. .. pytorch-cls
airx101-32x4d 49.43/55.52ms 54.64/66.31ms .. .. pytorch-cls
dpn-68 ../..ms ../..ms 48.4MB .. DPNs
dpn-92 29.71/30.68ms 35.19/37.13ms 144.2MB 144.2MB DPNs
dpn-98 36.24/44.06ms 42.84/53.50ms 235.6MB .. DPNs
dpn-107 45.21/59.77ms 56.12/77.78ms 332.4MB .. DPNs
dpn-131 48.20/59.43ms 57.66/72.43ms 303.3MB .. DPNs
se-inception-v2 14.66/10.63ms 15.71/13.52ms .. .. senet
se-resnet50 15.29/14.20ms 17.96/19.69ms .. .. senet

Check the performance

1. Download the ILSVRC 2012 classification val set 6.3GB, and put the extracted images into the directory:

  ~/Database/ILSVRC2012

2. Modify the parameter settings

Network val_file mean_value std
resnet-v2(101/152/269) ILSVRC2012_val [102.98, 115.947, 122.772] [1.0, 1.0, 1.0]
resnet10/18/, resnext, air(x) ILSVRC2012_val [103.52, 116.28, 123.675] [57.375, 57.12, 58.395]
inception-v3 ILSVRC2015_val [128.0, 128.0, 128.0] [128.0, 128.0, 128.0]
inception-v2, xception
inception-v4, inception-resnet-v2
ILSVRC2012_val [128.0, 128.0, 128.0] [128.0, 128.0, 128.0]
dpn(68/92/98/131/107) ILSVRC2012_val [104.0, 117.0, 124.0] [59.88, 59.88, 59.88]
official senet ILSVRC2015_val [104.0, 117.0, 123.0] [1.0, 1.0, 1.0]

3. then run evaluation_cls.py

python evaluation_cls.py