README.md 2.79 KB
Newer Older
dcuai's avatar
dcuai committed
1
# MobileNetV3
Sugon_ldc's avatar
Sugon_ldc committed
2
3
4
5
6
7
8
## 论文
`Searching for MobileNetV3`

- [https://arxiv.org/pdf/1905.02244.pdf ](https://arxiv.org/pdf/1905.02244.pdf)
## 模型结构
MobileNetv3模型采用轻量级的深度可分离卷积(depthwise separable convolution)结构,以减少模型参数量和计算复杂度。

Sugon_ldc's avatar
Sugon_ldc committed
9
![MobileNet_1](MobileNet_1.png)
Sugon_ldc's avatar
Sugon_ldc committed
10
11
12


## 算法原理
Sugon_ldc's avatar
Sugon_ldc committed
13
MobileNetv3模型采用混合使用轻量级深度可分离卷积和逆残差结构(Inverted Residuals)的算法原理,以实现高效计算和良好的模型性能。![MobileNet_2](MobileNet_2.png)
Sugon_ldc's avatar
Sugon_ldc committed
14
15
16
17
18
19


## 环境配置
### Docker(方法一)
此处提供[光源](https://www.sourcefind.cn/#/service-details)拉取docker镜像的地址与使用步骤
```
shantf's avatar
shantf committed
20
docker pull image.sourcefind.cn:5000/dcu/admin/base/pytorch:2.1.0-ubuntu20.04-dtk24.04.1-py3.10
Sugon_ldc's avatar
Sugon_ldc committed
21

shantf's avatar
shantf committed
22
docker run -it --name docker_name -v /path/your_code_data/:/path/your_code_data/ -v /opt/hyhal:/opt/hyhal:ro --network=host --shm-size=32G --privileged=true --device=/dev/kfd --ipc=host --device=/dev/dri/ --group-add video image.sourcefind.cn:5000/dcu/admin/base/pytorch:2.1.0-ubuntu20.04-dtk24.04.1-py3.10 /bin/bash
Sugon_ldc's avatar
Sugon_ldc committed
23
24
25
26
27
```
### Dockerfile(方法二)
此处提供dockerfile的使用方法
```
cd ./docker
Sugon_ldc's avatar
Sugon_ldc committed
28
docker build --no-cache -t mobilenetv3:1.0 .
shantf's avatar
shantf committed
29
docker run -it -v /path/your_code_data/:/path/your_code_data/ --shm-size=32G --privileged=true --device=/dev/kfd --device=/dev/dri/ --group-add video --name docker_name imageID /bin/bash
Sugon_ldc's avatar
Sugon_ldc committed
30
31
32
33
```
### Anaconda(方法三)
此处提供本地配置、编译的详细步骤,例如:

chenzk's avatar
chenzk committed
34
关于本项目DCU显卡所需的特殊深度学习库可从[光合](https://developer.sourcefind.cn/tool/)开发者社区下载安装。
Sugon_ldc's avatar
Sugon_ldc committed
35
```
shantf's avatar
shantf committed
36
37
38
39
DTK驱动:dtk24.04.1
python:python3.10
torch:2.1.0
torchvision:0.16.0
Sugon_ldc's avatar
Sugon_ldc committed
40
41
```
`Tips:以上dtk驱动、python、paddle等DCU相关工具版本需要严格一一对应`
Sugon_ldc's avatar
Sugon_ldc committed
42
43
44
45
另外需要安装如下三方库
```
pip install scipy
```
Sugon_ldc's avatar
Sugon_ldc committed
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
## 数据集
`cifar10`

- [CIFAR-10](https://www.cs.toronto.edu/~kriz/cifar.html)

```
├── cifar-10-batches-py
│   ├── batches.meta
│   ├── data_batch_1
│   ├── data_batch_2
│   ├── data_batch_3
│   ├── data_batch_4
│   ├── data_batch_5
│   ├── readme.html
│   └── test_batch
```
### 数据预处理



## 训练
### 单机多卡
```
shantf's avatar
shantf committed
69
运行前需设置一下数据集路径
Sugon_ldc's avatar
Sugon_ldc committed
70
71
72
73
bash train.sh
```

## result
Sugon_ldc's avatar
Sugon_ldc committed
74
![MobileNet_3](result.png)
Sugon_ldc's avatar
Sugon_ldc committed
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91


### 精度
测试数据:cifar10,使用的加速卡:Z100L。

根据测试结果情况填写表格:
| 卡数 | 准确率 |
| :------: | :------: |
| 4 | 91.44% |
## 应用场景
### 算法类别
`目标检测`

### 热点应用行业
`交通,政府,金融`

## 源码仓库及问题反馈
chenzk's avatar
chenzk committed
92
- https://developer.sourcefind.cn/codes/modelzoo/mobilenetv3_pytorch
Sugon_ldc's avatar
Sugon_ldc committed
93
94
## 参考资料
- https://github.com/showlo/mobilenetv3