Dual Path Networks

show more

Implementations

Dual Path Networks

DPNs are implemented by MXNet @92053bd.

Normalization

The augmented input images are substrated by mean RGB = [ 124, 117, 104 ], and then multiplied by 0.0167.

Mean-Max Pooling

Here, we introduce a new testing technique by using Mean-Max Pooling which can further improve the performance of a well trained CNN in the testing phase without the need of any training/fine-tuining process. This testing technique is designed for the case when the testing images is larger than training crops. The idea is to first convert a trained CNN.

Results

Single Model, Single Crop Validation Error:   

ModelSizeGFLOPs224x224320x320320x320
( with mean-max pooling )
Top 1Top 5Top 1Top 5Top 1Top 5
DPN-6849 MB2.523.576.9322.155.9021.515.52
DPN-92145 MB6.520.735.3719.344.6619.044.53
DPN-98236 MB11.720.155.1518.944.4418.724.40
DPN-131304 MB16.019.935.1218.624.2318.554.16

As you can see here DualPathNetworks allows you to try different scales. The default one in this repo is 0.875 meaning that the original input size is 256 before croping to 224.

  • dpn68(num_classes=1000, pretrained='imagenet')
  • dpn98(num_classes=1000, pretrained='imagenet')
  • dpn131(num_classes=1000, pretrained='imagenet')
  • dpn68b(num_classes=1000, pretrained='imagenet+5k')
  • dpn92(num_classes=1000, pretrained='imagenet+5k')
  • dpn107(num_classes=1000, pretrained='imagenet+5k')

Github: https://github.com/cypw/DPNs

classificationmxnetdpn
How helpful was this page?