Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ModelZoo
MobileNetV2_mmcv
Commits
205ed3b1
Commit
205ed3b1
authored
Sep 04, 2024
by
dcuai
Browse files
Merge branch 'mmpretrain' into 'master'
updated readme See merge request
!3
parents
ea1bee47
aee9e871
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
71 additions
and
19 deletions
+71
-19
README.md
README.md
+70
-18
mmpretrain-mmcv
mmpretrain-mmcv
+1
-1
No files found.
README.md
View file @
205ed3b1
...
@@ -37,11 +37,12 @@ docker pull image.sourcefind.cn:5000/dcu/admin/base/pytorch:2.1.0-ubuntu20.04-dt
...
@@ -37,11 +37,12 @@ docker pull image.sourcefind.cn:5000/dcu/admin/base/pytorch:2.1.0-ubuntu20.04-dt
docker run
-it
--name
=
mobilenetv2
--network
=
host
--ipc
=
host
--shm-size
=
16g
--device
=
/dev/kfd
--device
=
/dev/dri
--device
=
/dev/mkfd
--group-add
video
--privileged
--cap-add
=
SYS_PTRACE
--security-opt
seccomp
=
unconfined
-v
/opt/hyhal:/opt/hyhal:ro
-v
$PWD
/mobilenetv2_mmcv:/home/mobilenetv2_mmcv <your IMAGE ID> bash
docker run
-it
--name
=
mobilenetv2
--network
=
host
--ipc
=
host
--shm-size
=
16g
--device
=
/dev/kfd
--device
=
/dev/dri
--device
=
/dev/mkfd
--group-add
video
--privileged
--cap-add
=
SYS_PTRACE
--security-opt
seccomp
=
unconfined
-v
/opt/hyhal:/opt/hyhal:ro
-v
$PWD
/mobilenetv2_mmcv:/home/mobilenetv2_mmcv <your IMAGE ID> bash
```
```
克隆git仓库,
并
安装相关依赖
克隆
并安装
git仓库,安装相关依赖
```
python
```
python
git
clone
--
recursive
http
:
//
developer
.
hpccube
.
com
/
codes
/
modelzoo
/
mobilenetv2_mmcv
.
git
git
clone
--
recursive
http
:
//
developer
.
hpccube
.
com
/
codes
/
modelzoo
/
mobilenetv2_mmcv
.
git
cd
mobilenetv2_mmcv
/
mmpretrain
-
mmcv
cd
mobilenetv2_mmcv
/
mmpretrain
-
mmcv
pip
install
-
e
.
pip
install
-
r
requirements
.
txt
pip
install
-
r
requirements
.
txt
```
```
...
@@ -51,7 +52,9 @@ pip install -r requirements.txt
...
@@ -51,7 +52,9 @@ pip install -r requirements.txt
cd
mobilenetv2_mmcv/docker
cd
mobilenetv2_mmcv/docker
docker build
--no-cache
-t
mobilenetv2_mmcv:latest
.
docker build
--no-cache
-t
mobilenetv2_mmcv:latest
.
docker run
-it
--name
=
mobilenetv2
--network
=
host
--ipc
=
host
--shm-size
=
16g
--device
=
/dev/kfd
--device
=
/dev/dri
--device
=
/dev/mkfd
--group-add
video
--privileged
--cap-add
=
SYS_PTRACE
--security-opt
seccomp
=
unconfined
-v
/opt/hyhal:/opt/hyhal:ro
-v
$PWD
/mobilenetv2_mmcv:/home/mobilenetv2_mmcv <your IMAGE ID> bash
docker run
-it
--name
=
mobilenetv2
--network
=
host
--ipc
=
host
--shm-size
=
16g
--device
=
/dev/kfd
--device
=
/dev/dri
--device
=
/dev/mkfd
--group-add
video
--privileged
--cap-add
=
SYS_PTRACE
--security-opt
seccomp
=
unconfined
-v
/opt/hyhal:/opt/hyhal:ro
-v
$PWD
/mobilenetv2_mmcv:/home/mobilenetv2_mmcv <your IMAGE ID> bash
# 若遇到Dockerfile启动的方式安装环境需要长时间等待,可注释掉里面的pip安装,启动容器后再安装python库:pip install -r requirements.txt
pip
install
-e
.
# 若遇到Dockerfile启动的方式安装环境需要长时间等待,可注释掉里面的pip安装,启动容器后再安装python库:
pip
install
-r
requirements.txt
```
```
### Anaconda(方法三)
### Anaconda(方法三)
...
@@ -67,7 +70,14 @@ mmcv==2.0.1+das1.1.gite58da25.abi1.dtk2404.torch2.1.0
...
@@ -67,7 +70,14 @@ mmcv==2.0.1+das1.1.gite58da25.abi1.dtk2404.torch2.1.0
Tips:以上dtk驱动、python、torch等DCU相关工具版本需要严格一一对应
Tips:以上dtk驱动、python、torch等DCU相关工具版本需要严格一一对应
```
```
2、其它非特殊库参照requirements.txt安装
2、安装mmpretrain仓库源码
```
shell
cd
mobilenetv2_mmcv/mmpretrain-mmcv
pip
install
-e
.
```
3、其它非特殊库参照requirements.txt安装
```
shell
```
shell
pip
install
-r
requirements.txt
pip
install
-r
requirements.txt
...
@@ -75,11 +85,55 @@ pip install -r requirements.txt
...
@@ -75,11 +85,55 @@ pip install -r requirements.txt
## 数据集
## 数据集
在本测试中可以使用ImageNet数据集。下载ImageNet数据集:https://image-net.org/
在本项目中可以使用ImageNet数据集。下载ImageNet数据集:https://image-net.org/
SCNet快速下载链接
[
imagenet-2012
](
http://113.200.138.88:18080/aidatasets/project-dependency/imagenet-2012
)
imagenet完整数据集较大,也可以使用
[
tiny-imagenet-200
](
http://cs231n.stanford.edu/tiny-imagenet-200.zip
)
,但此时需要对配置脚本进行一些修改,在mmpretrain-mmcv中提供了使用tinyimagenet进行训练的配置脚本。
### tiny-imagenet-200
由于imagenet完整数据集较大,可以使用
[
tiny-imagenet-200
](
http://cs231n.stanford.edu/tiny-imagenet-200.zip
)
进行测试,此时需要对配置脚本进行一些修改:
-
dataset配置文件(configs/
\_\_
base
\_\_
/datasets/xxx.py)中,需要对以下字段进行修改
```
python
# dataset settings
dataset_type
=
'CustomDataset'
# 修改为CustomDataset
data_preprocessor
=
dict
(
num_classes
=
200
,
# 修改类别为200
...
)
...
train_dataloader
=
dict
(
batch_size
=
32
,
num_workers
=
5
,
dataset
=
dict
(
type
=
dataset_type
,
data_root
=
'data/imagenet'
,
data_prefix
=
'train'
,
# 改为data_prefix='train',val_dataloader中同理
pipeline
=
train_pipeline
),
sampler
=
dict
(
type
=
'DefaultSampler'
,
shuffle
=
True
),
)
```
-
model配置文件(configs/
\_\_
base
\_\_
/models/xxx.py)中,同样需要将类别相关的值设置为200。
```
python
# model settings
model
=
dict
(
type
=
'ImageClassifier'
,
...
head
=
dict
(
type
=
'LinearClsHead'
,
num_classes
=
200
,
# 将类别数改为200
...
))
```
mmpretrain-mmcv中提供了使用tiny-imagenet-200进行训练的若干配置脚本,可参考进行设置。
## 训练
将数据集解压后放置于mmpretrain-mmcv/data/,目录结构如下:
将
训练
数据集解压后放置于mmpretrain-mmcv/data/,
对于tiny-imagenet,
目录结构如下:
```
```
data
data
...
@@ -92,27 +146,23 @@ data
...
@@ -92,27 +146,23 @@ data
```
```
SCNet快速下载链接
[
imagenet-2012
](
http://113.200.138.88:18080/aidatasets/project-dependency/imagenet-2012
)
### 单机8卡训练
## 训练
tiny-imagenet-200
将训练数据解压到data目录下。
```
shell
bash tools/dist_train.sh mobilenet-v2-test.py 8
```
### 单机8卡
imagenet
```
shell
```
shell
bash tools/dist_train.sh configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py 8
bash tools/dist_train.sh configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py 8
```
```
## result
如需其他卡数训练,将命令中的8改为所需卡数即可
| 模型 | 预训练 | Params (M) | Flops (G) | Top-1 (%) | Top-5 (%) | 配置文件 |
| ------------------------- | ---- | ---------- | --------- | --------- | --------- | ----------------------------------------------- |
|
`mobilenet-v2_8xb32_in1k`
| 从头训练 | 3.50 | 0.32 | 71.86 | 90.42 | configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py |

如遇端口占用问题,可在tools/dist_train.sh修改端口
## 应用场景
## 应用场景
...
@@ -131,3 +181,5 @@ https://developer.hpccube.com/codes/modelzoo/mobilenetv2_mmcv
...
@@ -131,3 +181,5 @@ https://developer.hpccube.com/codes/modelzoo/mobilenetv2_mmcv
## 参考资料
## 参考资料
https://github.com/open-mmlab/mmpretrain
https://github.com/open-mmlab/mmpretrain
mmpretrain-mmcv
@
0d5d0b15
Subproject commit
8c11256107d7cf162b93b93e2960005ed3fbd493
Subproject commit
0d5d0b15d9d734bd95b183584bfe311fb70ede72
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment