• Stars
    star
    514
  • Rank 85,460 (Top 2 %)
  • Language
    Python
  • License
    MIT License
  • Created over 5 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

74.3% MobileNetV3-Large and 67.2% MobileNetV3-Small model on ImageNet

PyTorch Implementation of MobileNet V3

Reproduction of MobileNet V3 architecture as described in Searching for MobileNetV3 by Andrew Howard, Mark Sandler, Grace Chu, Liang-Chieh Chen, Bo Chen, Mingxing Tan, Weijun Wang, Yukun Zhu, Ruoming Pang, Vijay Vasudevan, Quoc V. Le, Hartwig Adam on ILSVRC2012 benchmark with PyTorch framework.

Requirements

Dataset

Download the ImageNet dataset and move validation images to labeled subfolders. To do this, you can use the following script: https://raw.githubusercontent.com/soumith/imagenetloader.torch/master/valprep.sh

Training recipe

  • batch size 1024
  • epoch 150
  • learning rate 0.4 (ramps up from 0.1 to 0.4 in the first 5 epochs)
  • LR decay strategy cosine
  • weight decay 0.00004
  • dropout rate 0.2 (0.1 for Small-version 0.75)
  • no weight decay biases and BN
  • label smoothing 0.1 (only for Large-version)

Models

Architecture # Parameters MFLOPs Top-1 / Top-5 Accuracy (%)
MobileNetV3-Large 1.0 5.483M 216.60 74.280 / 91.928
MobileNetV3-Large 0.75 3.994M 154.57 72.842 / 90.846
MobileNetV3-Small 1.0 2.543M 56.52 67.214 / 87.304
MobileNetV3-Small 0.75 2.042M 43.40 64.876 / 85.498
from mobilenetv3 import mobilenetv3_large, mobilenetv3_small

net_large = mobilenetv3_large()
net_small = mobilenetv3_small()

net_large.load_state_dict(torch.load('pretrained/mobilenetv3-large-1cd25616.pth'))
net_small.load_state_dict(torch.load('pretrained/mobilenetv3-small-55df8e1f.pth'))

Citation

@InProceedings{Howard_2019_ICCV,
author = {Howard, Andrew and Sandler, Mark and Chu, Grace and Chen, Liang-Chieh and Chen, Bo and Tan, Mingxing and Wang, Weijun and Zhu, Yukun and Pang, Ruoming and Vasudevan, Vijay and Le, Quoc V. and Adam, Hartwig},
title = {Searching for MobileNetV3},
booktitle = {The IEEE International Conference on Computer Vision (ICCV)},
month = {October},
year = {2019}
}

If you find this implementation helpful in your research, please also consider citing:

@InProceedings{Li_2019_ICCV,
author = {Li, Duo and Zhou, Aojun and Yao, Anbang},
title = {HBONet: Harmonious Bottleneck on Two Orthogonal Dimensions},
booktitle = {The IEEE International Conference on Computer Vision (ICCV)},
month = {October},
year = {2019}
}

More Repositories

1

involution

[CVPR 2021] Involution: Inverting the Inherence of Convolution for Visual Recognition, a brand new neural operator
Python
1,307
star
2

mobilenetv2.pytorch

72.8% MobileNetV2 1.0 model on ImageNet and a spectrum of pre-trained MobileNetV2 models
Python
663
star
3

efficientnetv2.pytorch

PyTorch implementation of EfficientNetV2 family
Python
450
star
4

octconv.pytorch

PyTorch implementation of Octave Convolution with pre-trained Oct-ResNet and Oct-MobileNet models
Python
290
star
5

PSConv

[ECCV 2020] PSConv: Squeezing Feature Pyramid into One Compact Poly-Scale Convolutional Layer
Python
175
star
6

face-attribute-prediction

Face Attribute Prediction on CelebA benchmark with PyTorch Implementation
Python
139
star
7

HBONet

[ICCV 2019] Harmonious Bottleneck on Two Orthogonal Dimensions, surpassing MobileNetV2
Python
103
star
8

ghostnet.pytorch

73.6% GhostNet 1.0x pre-trained model on ImageNet
Python
88
star
9

DHM

[CVPR 2020] Dynamic Hierarchical Mimicking Towards Consistent Optimization Objectives
Python
84
star
10

dgconv.pytorch

PyTorch implementation of Dynamic Grouping Convolution and Groupable ConvNet with pre-trained G-ResNeXt models
Python
69
star
11

regnet.pytorch

PyTorch-style and human-readable RegNet with a spectrum of pre-trained models
Python
68
star
12

lambda.pytorch

PyTorch implementation of Lambda Network and pretrained Lambda-ResNet
Python
54
star
13

SAN

[ECCV 2020] Scale Adaptive Network: Learning to Learn Parameterized Classification Networks for Scalable Input Images
Python
43
star
14

mlp-mixer.pytorch

PyTorch implementation of MLP-Mixer
Python
36
star
15

condconv.pytorch

PyTorch implementation of CondConv and MobileNetV2 model
Python
34
star
16

mobilenext.pytorch

Rethinking Bottleneck Structure for Efficient Mobile Network Design
Python
13
star
17

dot-product-attention

A collection of self-attention modules and pre-trained backbones
Python
13
star
18

mobilenetv4.pytorch

PyTorch implementation of MobileNetV4 family
Python
12
star
19

efficientnet-lite.pytorch

PyTorch implementation of EfficientNet-lite and a spectrum of pre-trained models on ImageNet
Python
10
star
20

deeplearning.ai-CNN

Implementation of course Convolutional Neural Networks created by deeplearning.ai on Coursera
Jupyter Notebook
3
star