Training code of ResNet on ImageNet, with pre-activation and squeeze-and-excitation. The pre-act ResNet follows the setup in fb.resnet.torch (except for the weight decay) and gets similar performance (with much fewer lines of code). Models can be downloaded here.
Model | Top 5 Error | Top 1 Error |
---|---|---|
ResNet18 | 10.55% | 29.73% |
ResNet34 | 8.51% | 26.50% |
ResNet50 | 7.24% | 23.91% |
ResNet50-SE | 6.42% | 22.94% |
ResNet101 | 6.26% | 22.53% |
To train, just run:
./imagenet-resnet.py --data /path/to/original/ILSVRC --gpu 0,1,2,3 -d 50
You should be able to see good GPU utilization (around 95%), if your data is fast enough. See the tutorial on how to speed up your data.
This script only converts and runs ImageNet-ResNet{50,101,152} Caffe models released by Kaiming.
Example usage:
# convert caffe model to npy format
python -m tensorpack.utils.loadcaffe PATH/TO/{ResNet-101-deploy.prototxt,ResNet-101-model.caffemodel} ResNet101.npy
# run on an image
./load-resnet.py --load ResNet-101.npy --input cat.jpg --depth 101
The converted models are verified on ILSVRC12 validation set. The per-pixel mean used here is slightly different from the original.
Model | Top 5 Error | Top 1 Error |
---|---|---|
ResNet 50 | 7.89% | 25.03% |
ResNet 101 | 7.16% | 23.74% |
ResNet 152 | 6.81% | 23.28% |
Reproduce pre-activation ResNet on CIFAR10.
Also see a DenseNet implementation of the paper Densely Connected Convolutional Networks.