An implementation of MobileNetv2
in PyTorch. MobileNetv2
is an efficient convolutional neural network architecture for mobile devices. For more information check the paper:
Inverted Residuals and Linear Bottlenecks: Mobile Networks for Classification, Detection and Segmentation
Clone the repo:
git clone https://github.com/Randl/MobileNetV2-pytorch
pip install -r requirements.txt
Use the model defined in model.py
to run ImageNet example:
python imagenet.py --dataroot "/path/to/imagenet/"
To run continue training from checkpoint
python imagenet.py --dataroot "/path/to/imagenet/" --resume "/path/to/checkpoint/folder"
For x1.0 model I achieved 0.3% higher top-1 accuracy than claimed.
Classification Checkpoint | MACs (M) | Parameters (M) | Top-1 Accuracy | Top-5 Accuracy | Claimed top-1 | Claimed top-5 |
---|---|---|---|---|---|---|
[mobilenet_v2_1.0_224] | 300 | 3.47 | 72.1 | 90.48 | 71.8 | 91.0 |
You can test it with
python imagenet.py --dataroot "/path/to/imagenet/" --resume "results/mobilenet_v2_1.0_224/model_best.pth.tar" -e
- TODO: x0.35 model
- TODO: x1.4 model
- TODO: 96 input size model
- TODO: INT8 model (pytorch)