MobileNetV2-pytorch
MobileNetV2-pytorch copied to clipboard
Impementation of MobileNetV2 in pytorch
MobileNetv2 in PyTorch
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
Usage
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"
Results
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.10 | 90.48 | 71.8 | 91.0 |
[mobilenet_v2_0.5_160] | 50 | 1.95 | 60.61 | 82.87 | 61.0 | 83.2 |
You can test it with
python imagenet.py --dataroot "/path/to/imagenet/" --resume "results/mobilenet_v2_1.0_224/model_best.pth.tar" -e
python imagenet.py --dataroot "/path/to/imagenet/" --resume "results/mobilenet_v2_0.5_160/model_best.pth.tar" -e --scaling 0.5 --input-size 160