README.md 3.06 KB
Newer Older
sugon_cxj's avatar
sugon_cxj committed
1
# mobilenet_prune
chenxj's avatar
chenxj committed
2
3
4
5
6
7
8
## 论文
EfficientNet
https://arxiv.org/pdf/1905.11946.pdf
mobilenetv2
https://arxiv.org/pdf/1801.04381.pdf
mobilenetv3
https://arxiv.org/pdf/1905.02244.pdf
sugon_cxj's avatar
sugon_cxj committed
9
## 模型结构
chenxj's avatar
chenxj committed
10
11
mobilenetv2:

chenxj's avatar
chenxj committed
12
![image](https://developer.hpccube.com/codes/modelzoo/mobilenet_prune/-/raw/main/mobilenetv2.png)
chenxj's avatar
chenxj committed
13
14

详细模型结构见官方论文:
sugon_cxj's avatar
sugon_cxj committed
15
16
17
18
19
20
EfficientNet
https://arxiv.org/pdf/1905.11946.pdf
mobilenetv2
https://arxiv.org/pdf/1801.04381.pdf
mobilenetv3
https://arxiv.org/pdf/1905.02244.pdf
chenxj's avatar
chenxj committed
21
22
## 算法原理
CNN原理
sugon_cxj's avatar
sugon_cxj committed
23
24
## 数据集
torchvision.datasets.CIFAR10
chenxj's avatar
chenxj committed
25
## 环境配置
chenxj's avatar
chenxj committed
26
[光源](https://sourcefind.cn/#/main-page)可拉取剪枝及微调的docker镜像,在[光合开发者社区](https://cancon.hpccube.com:65024/4/main/)可下载torch安装包。mobilenet_prune推荐的镜像如下:
sugon_cxj's avatar
sugon_cxj committed
27
```
chenxj's avatar
chenxj committed
28
docker pull image.sourcefind.cn:5000/dcu/admin/base/pytorch:1.13.1-centos7.6-dtk-23.04.1-py37-latest
sugon_cxj's avatar
sugon_cxj committed
29
```
chenxj's avatar
chenxj committed
30
安装依赖
sugon_cxj's avatar
sugon_cxj committed
31
32
33
34
35
```
cd mobilenet_prune
pip3 install -r requirements.txt
```

chenxj's avatar
chenxj committed
36
## 剪枝
sugon_cxj's avatar
sugon_cxj committed
37
38
39
40
41
42
43
44
45
46
47
48
efficientnet
```
python3 main.py --mode prune --model efficientnet --batch-size 128 --restore ./checkpoints/efficientnet.pt --dataset cifar10  --method l1 --speed-up 2.11 --global-pruning
```
mobilenetv2
```
python3 main.py --mode prune --model mobilenetv2 --batch-size 128 --restore ./checkpoints/mobilenetv2.pt --dataset cifar10  --method l1 --speed-up 2.11 --global-pruning
```
mobilenetv3
```
python3 main.py --mode prune --model mobilenetv3 --batch-size 128 --restore ./checkpoints/mobilenetv3.pt --dataset cifar10  --method l1 --speed-up 2.11 --global-pruning
```
chenxj's avatar
chenxj committed
49
## 测试
sugon_cxj's avatar
sugon_cxj committed
50
51
52
53
54
55
56
57
58
59
60
61
efficientnet
```
python3 main.py --mode test --model efficientnet --batch-size 128 --restore ./run/cifar10/prune/cifar10-global-l1-efficientnet/cifar10_efficientnet_l1.pt --dataset cifar10  --method l1 --speed-up 2.11 --global-pruning
```
mobilenetv2
```
python3 main.py --mode test --model mobilenetv2 --batch-size 128 --restore ./run/cifar10/prune/cifar10-global-l1-mobilenetv2/cifar10_mobilenetv2_l1.pt --dataset cifar10  --method l1 --speed-up 2.11 --global-pruning
```
mobilenetv3
```
python3 main.py --mode test --model mobilenetv3 --batch-size 128 --restore ./run/cifar10/prune/cifar10-global-l1-mobilenetv3/cifar10_mobilenetv3_l1.pt --dataset cifar10  --method l1 --speed-up 2.11 --global-pruning
```
chenxj's avatar
chenxj committed
62
63
## result
### 精度
sugon_cxj's avatar
sugon_cxj committed
64
method l1
chenxj's avatar
chenxj committed
65
66
67
68
69
| model | Base Acc | Pruned Acc | 
| :------: | :------: |:------: |
| efficientnet | 0.9300 | 0.9248 | 
| mobilenetv2 | 0.9222 | 0.9205 | 
| mobilenetv3 | 0.9034 | 0.8963 | 
sugon_cxj's avatar
sugon_cxj committed
70
71

method lamp
chenxj's avatar
chenxj committed
72
73
74
75
76
| model | Base Acc | Pruned Acc | 
| :------: | :------: |:------: |
| efficientnet | 0.9300 | 0.9256 | 
| mobilenetv2 | 0.9222 | 0.9225 | 
| mobilenetv3 | 0.9034 | 0.9044 | 
sugon_cxj's avatar
sugon_cxj committed
77
78

method group_norm
chenxj's avatar
chenxj committed
79
80
81
82
83
| model | Base Acc | Pruned Acc | 
| :------: | :------: |:------: |
| efficientnet | 0.9300 | 0.8977 | 
| mobilenetv2 | 0.9222 | 0.8953 | 
| mobilenetv3 | 0.9034 | 0.8852 | 
sugon_cxj's avatar
sugon_cxj committed
84

chenxj's avatar
chenxj committed
85
86
87
88
89
## 应用场景
### 算法类别
图像分类
### 热点应用行业
交通,金融,医疗,教育,家居
sugon_cxj's avatar
sugon_cxj committed
90
91
## 源码仓库及问题反馈
https://developer.hpccube.com/codes/modelzoo/mobilenet_prune
chenxj's avatar
chenxj committed
92
## 参考资料
sugon_cxj's avatar
sugon_cxj committed
93
* [Torch-Pruning](https://github.com/VainF/Torch-Pruning)
sugon_cxj's avatar
sugon_cxj committed
94