Training Techniques | Weight Decay, SGD with Momentum |
---|---|
Architecture | 1x1 Convolution, Channel Shuffle, Depthwise Convolution, Squeeze-and-Excitation Block, ShuffleNet V2 Downsampling Block, Batch Normalization, Convolution, Global Average Pooling, ShuffleNet V2 Block, Residual Connection, ReLU, Max Pooling, Softmax |
ID | shufflenet_v2_x1_0 |
SHOW MORE |
ShuffleNet v2 is a convolutional neural network optimized for a direct metric (speed) rather than indirect metrics like FLOPs. It builds upon ShuffleNet v1, which utilised pointwise group convolutions, bottleneck-like structures, and a channel shuffle operation. Differences are shown in the model Figure, including a new channel split operation and moving the channel shuffle operation further down the block. The main building block is a ShuffleNet v2 Block.
To load a pretrained model:
import torchvision.models as models
shufflenet = models.shufflenet_v2_x1_0(pretrained=True)
Replace the model name with the variant you want to use, e.g. shufflenet_v2_x1_0
. You can find the IDs in the model summaries at the top of this page.
To evaluate the model, use the image classification recipes from the library.
python train.py --test-only --model='<model_name>'
You can follow the torchvision recipe on GitHub for training a new model afresh.
@article{DBLP:journals/corr/abs-1807-11164,
author = {Ningning Ma and
Xiangyu Zhang and
Hai{-}Tao Zheng and
Jian Sun},
title = {ShuffleNet {V2:} Practical Guidelines for Efficient {CNN} Architecture
Design},
journal = {CoRR},
volume = {abs/1807.11164},
year = {2018},
url = {http://arxiv.org/abs/1807.11164},
archivePrefix = {arXiv},
eprint = {1807.11164},
timestamp = {Thu, 14 Mar 2019 14:56:07 +0100},
biburl = {https://dblp.org/rec/journals/corr/abs-1807-11164.bib},
bibsource = {dblp computer science bibliography, https://dblp.org}
}
BENCHMARK | MODEL | METRIC NAME | METRIC VALUE | GLOBAL RANK |
---|---|---|---|---|
ImageNet | ShuffleNet V2 | Top 1 Accuracy | 69.36% | # 281 |
Top 5 Accuracy | 88.32% | # 281 |