Are you sure you want to delete this task? Once this task is deleted, it cannot be recovered.
Samit bc631ad66f | 1 year ago | |
---|---|---|
.. | ||
README.md | 1 year ago | |
README_CN.md | 1 year ago | |
ShuffleNetV1_Block.png | 1 year ago | |
shufflenet_v1_0.5_ascend.yaml | 1 year ago | |
shufflenet_v1_1.0_ascend.yaml | 1 year ago | |
shufflenet_v1_1.5_ascend.yaml | 1 year ago | |
shufflenet_v1_2.0_ascend.yaml | 1 year ago |
ShuffleNet: An Extremely Efficient Convolutional Neural Network for Mobile Devices
ShuffleNet is a computationally efficient CNN model proposed by KuangShi Technology in 2017, which, like MobileNet and SqueezeNet, etc., is mainly intended to be applied in mobile. Therefore, the design goal of ShuffleNet is also how to use limited computational resources to achieve the best model accuracy, which requires a good balance between speed and accuracy.ShuffleNet uses two operations at its core: pointwise group convolution and channel shuffle, which greatly reduces the model computation while maintaining accuracy. This greatly reduces the computational effort of the model while maintaining accuracy. The main design ideas of CNN models for mobile are mainly two: model structure design and model compression, ShuffleNet and MobileNet belong to the former, both of which design more efficient network structures to achieve smaller and faster models, instead of compressing or migrating a large trained model.
Model | Context | Top-1 (%) | Top-5 (%) | Params (M) | Train T. | Infer T. | Download | Config | Log |
---|---|---|---|---|---|---|---|---|---|
shufflenet_v1_g3_x0_5 | D910x8-G | 57.05 | 79.73 | 0.73 | 169s/epoch | model | cfg | log | |
shufflenet_v1_g3_x1_0 | D910x8-G | 67.77 | 87.73 | 1.89 | 192s/epoch | model | cfg | log | |
shufflenet_v1_g3_x1_5 | D910x8-G | 71.53 | 90.17 | 3.48 | 303s/epoch | model | cfg | log | |
shufflenet_v1_g3_x2_0 | D910x8-G | 74.02 | 91.74 | 5.50 | 232s/epoch | model | cfg | log |
Please refer to the installation instruction in MindCV.
Please download the ImageNet-1K dataset for model training and validation.
Hyper-parameters. The hyper-parameter configurations for producing the reported results are stored in the yaml files in mindcv/configs/shufflenetv1
folder. For example, to train with one of these configurations, you can run:
# train shufflenet_v1_g3_x2_0 on Ascend
cd mindcv/scripts
bash run_distribute_train_ascend.sh ./hccl_8p_01234567_123.60.231.9.json /tmp/dataset/imagenet ../configs/shufflenet_v1/shufflenet_v1_2.0_ascend.yaml
Note that the number of GPUs/Ascends and batch size will influence the training results. To reproduce the training result at most, it is recommended to use the same number of GPUs/Ascneds with the same batch size.
Detailed adjustable parameters and their default value can be seen in config.py.
To validate the model, you can use validate.py
. Here is an example for shufflenet_v1_g3_x2_0 to verify the accuracy of your training.
python validate.py -c configs/shufflenet_v1/shufflenet_v1_2.0_ascend.yaml
Please refer to the deployment tutorial in MindCV.
No Description
Jupyter Notebook Python Markdown Text
Dear OpenI User
Thank you for your continuous support to the Openl Qizhi Community AI Collaboration Platform. In order to protect your usage rights and ensure network security, we updated the Openl Qizhi Community AI Collaboration Platform Usage Agreement in January 2024. The updated agreement specifies that users are prohibited from using intranet penetration tools. After you click "Agree and continue", you can continue to use our services. Thank you for your cooperation and understanding.
For more agreement content, please refer to the《Openl Qizhi Community AI Collaboration Platform Usage Agreement》