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
ResNet50-v2_tvm
Commits
516269e0
Commit
516269e0
authored
Nov 01, 2023
by
zhanggezhong
Browse files
Update README.md
parent
4384910f
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
93 additions
and
71 deletions
+93
-71
README.md
README.md
+93
-71
No files found.
README.md
View file @
516269e0
# TVM
## 模型介绍
```
ResNet-50v2是ResNet系列中的一个经典模型,由50层卷积层、批量归一化、激活函数和池化层构成。它引入了一种全新的残差块结构,
即bottleneck结构,使得网络参数量大幅度降低,同时精度也有所提升,ResNet-50v2适用于各种图像分类任务。本示例为使用TVM对训练
好的ResNet-50v2 onnx格式的模型文件,进行推理调优及部署的流程。
```
## 模型结构
```
ResNet50-v2
```
## 模型文件
模型文件下载地址:
```
"https://github.com/onnx/models/raw/main/vision/classification/resnet/model/resnet50-v2-7.onnx"
```
## 数据集
python 推理及调优代码使用的图片数据为:
```
"https://s3.amazonaws.com/model-server/inputs/kitten.jpg"
```
标签数据为:
```
"https://s3.amazonaws.com/onnx-model-zoo/synset.txt"
```
C++部署代码使用数据为:
```
"https://github.com/ultralytics/yolov5/releases/download/v1.0/coco128.zip"
```
## 推理、自动调优及部署
### 环境配置
拉取镜像:
```
docker pull image.sourcefind.cn:5000/dcu/admin/base/custom:tvm-0.11_fp32_cpp_dtk22.10_py38_centos-7.6-latest
```
### 执行推理及调优
下载模型文件后执行以下命令进行推理测试及调优测试:
```
python tune_resnet50-v2.py
```
### 单卡部署推理测试
下载配置好镜像之后,cd /tvm-0.11-dev0/apps/ 进入该路径下,将代码下载放到该路径下,cd tvm_tune_resnet50-v2/ 进入该路径后,
执行以下命令:
```
mkdir -p lib
python prepare_test_libs.py
sh run_example.sh
```
## 准确率数据
```
max_num:15.6692
max_iter:0x28cda14
max_num_index:345
```
## TVM版本
```
TVM-0.11
```
## 源码仓库及问题反馈
*
https://developer.hpccube.com/codes/modelzoo/tvm_tune_resnet50-v2
## 参考
*
[
https://tvm.apache.org/docs/how_to/tune_with_autoscheduler/tune_network_cuda.html#sphx-glr-how-to-tune-with-autoscheduler-tune-network-cuda-py
](
)
# ResNet50_v2
## 论文
`Deep Residual Learning for Image Recognition`
-
https://arxiv.org/abs/1512.03385
## 模型结构
ResNet50网络中包含了49个卷积层、1个全连接层等

## 算法原理
ResNet50使用了多个具有残差连接的残差块来解决梯度消失或梯度爆炸问题,并使得网络可以向更深层发展。

## 模型文件
模型文件下载地址:
```
"https://github.com/onnx/models/raw/main/vision/classification/resnet/model/resnet50-v2-7.onnx"
```
## 环境配置
### Docker(方法一)
拉取镜像:
```
docker pull image.sourcefind.cn:5000/dcu/admin/base/custom:tvm-0.11_fp32_cpp_dtk22.10_py38_centos-7.6-latest
```
创建并启动容器
```
docker run --shm-size 16g --network=host --name=ResNet50_v2 --privileged --device=/dev/kfd --device=/dev/dri --group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -v $PWD/ResNet50_v2_tvm:/home/ResNet50_v2_tvm -it <Your Image ID> /bin/bash
# 激活dtk
source /opt/dtk/env.sh
```
### Dockerfile(方法二)
```
cd ./docker
docker build --no-cache -t ResNet50_v2_tvm:0.11
docker run --shm-size 16g --network=host --name=ResNet50_v2 --privileged --device=/dev/kfd --device=/dev/dri --group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -v $PWD/ResNet50_v2_tvm:/home/ResNet50_v2_tvm -it <Your Image ID> /bin/bash
# 激活dtk
source /opt/dtk/env.sh
```
## 数据集
python 推理及调优代码使用的图片数据为:
```
"https://s3.amazonaws.com/model-server/inputs/kitten.jpg"
```
标签数据为:
```
"https://s3.amazonaws.com/onnx-model-zoo/synset.txt"
```
C++部署代码使用数据为:
```
"https://github.com/ultralytics/yolov5/releases/download/v1.0/coco128.zip"
```
### 执行推理及调优
下载模型文件后执行以下命令进行推理测试及调优测试:
```
python tune_resnet50-v2.py
```
### 单卡部署推理测试
下载配置好镜像之后,cd /tvm-0.11-dev0/apps/ 进入该路径下,将代码下载放到该路径下,cd tvm_tune_resnet50-v2/ 进入该路径后,
执行以下命令:
```
mkdir -p lib
python prepare_test_libs.py
sh run_example.sh
```
## 准确率数据
```
max_num:15.6692
max_iter:0x28cda14
max_num_index:345
```
## 应用场景
### 算法类别
图像分类
### 热点应用行业
制造,政府,医疗,科研
## 源码仓库及问题反馈
*
https://developer.hpccube.com/codes/modelzoo/tvm_tune_resnet50-v2
## 参考
*
[
https://tvm.apache.org/docs/how_to/tune_with_autoscheduler/tune_network_cuda.html#sphx-glr-how-to-tune-with-autoscheduler-tune-network-cuda-py
](
)
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