All Projects → kuan-wang → Pytorch Mobilenet V3

kuan-wang / Pytorch Mobilenet V3

Licence: apache-2.0
MobileNetV3 in pytorch and ImageNet pretrained models

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Pytorch Mobilenet V3

Efficientnet
Implementation of EfficientNet model. Keras and TensorFlow Keras.
Stars: ✭ 1,920 (+211.69%)
Mutual labels:  classification, imagenet, mobilenet
Mobilenet Caffe
Caffe Implementation of Google's MobileNets (v1 and v2)
Stars: ✭ 1,217 (+97.56%)
Mutual labels:  imagenet, mobilenet, mobilenetv2
mobilenet-v2-tensorflow
No description or website provided.
Stars: ✭ 66 (-89.29%)
Mutual labels:  mobilenet, mobilenetv2
simpleAICV-pytorch-ImageNet-COCO-training
SimpleAICV:pytorch training example on ImageNet(ILSVRC2012)/COCO2017/VOC2007+2012 datasets.Include ResNet/DarkNet/RetinaNet/FCOS/CenterNet/TTFNet/YOLOv3/YOLOv4/YOLOv5/YOLOX.
Stars: ✭ 276 (-55.19%)
Mutual labels:  classification, imagenet
LightNet
LightNet: Light-weight Networks for Semantic Image Segmentation (Cityscapes and Mapillary Vistas Dataset)
Stars: ✭ 710 (+15.26%)
Mutual labels:  mobilenet, mobilenetv2
SAN
[ECCV 2020] Scale Adaptive Network: Learning to Learn Parameterized Classification Networks for Scalable Input Images
Stars: ✭ 41 (-93.34%)
Mutual labels:  imagenet, mobilenetv2
MobileNet V2 Keras
No description or website provided.
Stars: ✭ 29 (-95.29%)
Mutual labels:  mobilenet, mobilenetv2
ModelZoo.pytorch
Hands on Imagenet training. Unofficial ModelZoo project on Pytorch. MobileNetV3 Top1 75.64🌟 GhostNet1.3x 75.78🌟
Stars: ✭ 42 (-93.18%)
Mutual labels:  imagenet, mobilenet
Imgclsmob
Sandbox for training deep learning networks
Stars: ✭ 2,405 (+290.42%)
Mutual labels:  classification, imagenet
Pytorch Randaugment
Unofficial PyTorch Reimplementation of RandAugment.
Stars: ✭ 323 (-47.56%)
Mutual labels:  classification, imagenet
yolo3 tensorflow
yolo3 implement by tensorflow, including mobilenet_v1, mobilenet_v2
Stars: ✭ 48 (-92.21%)
Mutual labels:  mobilenet, mobilenetv2
Php Opencv Examples
Tutorial for computer vision and machine learning in PHP 7/8 by opencv (installation + examples + documentation)
Stars: ✭ 333 (-45.94%)
Mutual labels:  imagenet, mobilenet
Mmclassification
OpenMMLab Image Classification Toolbox and Benchmark
Stars: ✭ 532 (-13.64%)
Mutual labels:  imagenet, mobilenet
MobileNet-SSD-windows
No description or website provided.
Stars: ✭ 91 (-85.23%)
Mutual labels:  mobilenet, mobilenetv2
caffe-mobilenet v2
caffe based mobilenet v2 deploy
Stars: ✭ 29 (-95.29%)
Mutual labels:  mobilenet, mobilenetv2
Mobilenet V2
A Complete and Simple Implementation of MobileNet-V2 in PyTorch
Stars: ✭ 206 (-66.56%)
Mutual labels:  classification, mobilenetv2
NIPS-Global-Paper-Implementation-Challenge
Selective Classification For Deep Neural Networks.
Stars: ✭ 11 (-98.21%)
Mutual labels:  classification, imagenet
Mobilenetv2 Ssdlite
Caffe implementation of SSD and SSDLite detection on MobileNetv2, converted from tensorflow.
Stars: ✭ 435 (-29.38%)
Mutual labels:  mobilenet, mobilenetv2
Shufflenet V2 Tensorflow
A lightweight convolutional neural network
Stars: ✭ 145 (-76.46%)
Mutual labels:  classification, imagenet
CvT
This is an official implementation of CvT: Introducing Convolutions to Vision Transformers.
Stars: ✭ 262 (-57.47%)
Mutual labels:  classification, imagenet

A PyTorch implementation of MobileNetV3

This is a PyTorch implementation of MobileNetV3 architecture as described in the paper Searching for MobileNetV3.

Some details may be different from the original paper, welcome to discuss and help me figure it out.

  • [NEW] The pretrained model of small version mobilenet-v3 is online, accuracy achieves the same as paper.
  • [NEW] The paper updated on 17 May, so I renew the codes for that, but there still are some bugs.
  • [NEW] I remove the se before the global avg_pool (the paper may add it in error), and now the model size is close to paper.

Training & Accuracy

training setting:

  1. number of epochs: 150
  2. learning rate schedule: cosine learning rate, initial lr=0.05
  3. weight decay: 4e-5
  4. remove dropout
  5. batch size: 256

MobileNetV3 large

Madds Parameters Top1-acc Pretrained Model
Offical 1.0 219 M 5.4 M 75.2% -
Offical 0.75 155 M 4 M 73.3% -
Ours 1.0 224 M 5.48 M 72.8% -
Ours 0.75 148 M 3.91 M - -

MobileNetV3 small

Madds Parameters Top1-acc Pretrained Model
Offical 1.0 66 M 2.9 M 67.4% -
Offical 0.75 44 M 2.4 M 65.4% -
Ours 1.0 63 M 2.94 M 67.4% [google drive]
Ours 0.75 46 M 2.38 M - -

Usage

Pretrained models are still training ...

    # pytorch 1.0.1
    # large
    net_large = mobilenetv3(mode='large')
    # small
    net_small = mobilenetv3(mode='small')
    state_dict = torch.load('mobilenetv3_small_67.4.pth.tar')
    net_small.load_state_dict(state_dict)

Data Pre-processing

I used the following code for data pre-processing on ImageNet:

normalize = transforms.Normalize(mean=[0.485, 0.456, 0.406],
                                 std=[0.229, 0.224, 0.225])

input_size = 224
train_loader = torch.utils.data.DataLoader(
    datasets.ImageFolder(
    traindir, transforms.Compose([
        transforms.RandomResizedCrop(input_size),
        transforms.RandomHorizontalFlip(),
        transforms.ToTensor(),
        normalize,
    ])),
    batch_size=batch_size, shuffle=True,
    num_workers=n_worker, pin_memory=True)

val_loader = torch.utils.data.DataLoader(
    datasets.ImageFolder(valdir, transforms.Compose([
        transforms.Resize(int(input_size/0.875)),
        transforms.CenterCrop(input_size),
        transforms.ToTensor(),
        normalize,
    ])),
    batch_size=batch_size, shuffle=False,
    num_workers=n_worker, pin_memory=True)
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].