Are you sure you want to delete this task? Once this task is deleted, it cannot be recovered.
|
|
4 years ago | |
|---|---|---|
| .. | ||
| scripts | 5 years ago | |
| src | 5 years ago | |
| README.md | 4 years ago | |
| eval.py | 5 years ago | |
| export.py | 4 years ago | |
| mindspore_hub_conf.py | 4 years ago | |
| train.py | 5 years ago | |
ShuffleNetV2 is a much faster and more accurate network than the previous networks on different platforms such as Ascend or GPU.
Paper Ma, N., Zhang, X., Zheng, H. T., & Sun, J. (2018). Shufflenet v2: Practical guidelines for efficient cnn architecture design. In Proceedings of the European conference on computer vision (ECCV) (pp. 116-131).
The overall network architecture of ShuffleNetV2 is show below:
Dataset used: imagenet
+-- ShuffleNetV2
+-- Readme.md # descriptions about ShuffleNetV2
+-- scripts
+--run_distribute_train_for_gpu.sh # shell script for distributed training
+--run_eval_for_gpu.sh # shell script for evaluation
+--run_standalone_train_for_gpu.sh # shell script for standalone training
+-- src
+--config.py # parameter configuration
+--dataset.py # creating dataset
+--loss.py # loss function for network
+--lr_generator.py # learning rate config
+-- train.py # training script
+-- eval.py # evaluation script
+-- blocks.py # ShuffleNetV2 blocks
+-- network.py # ShuffleNetV2 model network
You can start training using python or shell scripts. The usage of shell scripts as follows:
# training example
python:
GPU: mpirun --allow-run-as-root -n 8 --output-filename log_output --merge-stderr-to-stdout python train.py --is_distributed=True --platform='GPU' --dataset_path='~/imagenet/train/' > train.log 2>&1 &
shell:
GPU: cd scripts & sh run_distribute_train_for_gpu.sh 8 0,1,2,3,4,5,6,7 ~/imagenet/train/
Training result will be stored in the example path. Checkpoints will be stored at ./checkpoint by default, and training log will be redirected to ./train/train.log.
You can start evaluation using python or shell scripts. The usage of shell scripts as follows:
# infer example
python:
GPU: CUDA_VISIBLE_DEVICES=0 python eval.py --platform='GPU' --dataset_path='~/imagenet/val/' > eval.log 2>&1 &
shell:
GPU: cd scripts & sh run_eval_for_gpu.sh '~/imagenet/val/' 'checkpoint_file'
checkpoint can be produced in training process.
Inference result will be stored in the example path, you can find result in eval.log.
| Parameters | ShuffleNetV2 |
|---|---|
| Resource | NV SMX2 V100-32G |
| uploaded Date | 09/24/2020 |
| MindSpore Version | 1.0.0 |
| Dataset | ImageNet |
| Training Parameters | src/config.py |
| Optimizer | Momentum |
| Loss Function | CrossEntropySmooth |
| Accuracy | 69.4%(TOP1) |
| Total time | 49 h 8ps |
| Parameters | |
|---|---|
| Resource | NV SMX2 V100-32G |
| uploaded Date | 09/24/2020 |
| MindSpore Version | 1.0.0 |
| Dataset | ImageNet, 1.2W |
| batch_size | 128 |
| outputs | probability |
| Accuracy | acc=69.4%(TOP1) |
Please check the official homepage.
MindSpore is a new open source deep learning training/inference framework that could be used for mobile, edge and cloud scenarios.
C++ Python Text Unity3D Asset C other