Commit f0c8d6b0 authored by panning's avatar panning
Browse files

update readme

parent 38d9043d
# ResNet50
## 论文
`Deep Residual Learning for Image Recognition`
- https://arxiv.org/abs/1512.03385
## 模型介绍
使用PyTorch进行ResNet50训练。
## 模型结构
ResNet50 网络中包含了 49 个卷积层、个全连接层。
ResNet50网络中包含了49个卷积层、1个全连接层
## 数据集
![](C:\Users\15504\resnet50-pytorch\doc\ResNet50.png)
下载ImageNet数据集:[ImageNet (image-net.org)](https://image-net.org/)
## 算法原理
参考[scrips/extract_ILSVRC.sh](https://developer.hpccube.com/codes/modelzoo/resnet50-pytorch/-/blob/main/scrips/extract_ILSVRC.sh)处理数据集
ResNet50使用了多个具有残差连接的残差块来解决梯度消失或梯度爆炸问题,并使得网络可以向更深层发展
## 训练
![](C:\Users\15504\resnet50-pytorch\doc\Residual_Block.png)
## 环境配置
### 环境配置
### Docker(方法一)
[光源](https://www.sourcefind.cn/#/service-details)拉取训练镜像:
```
拉取镜像:
docker pull image.sourcefind.cn:5000/dcu/admin/base/pytorch:1.10.0-centos7.6-dtk-22.10.1-py37-latest
创建并启动容器:
docker run --shm-size 16g --network=host --name=resnet50_pytorch --privileged --device=/dev/kfd --device=/dev/dri --group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -v $PWD/resnet50-pytorch:/home/resnet50_pytorch -it <Your Image ID> bash
安装依赖:
pip install -r requirements.txt
```
安装依赖:
### Dockerfile(方法二)
```
cd resnet50-pytorch/docker
docker build --no-cache -t resnet50_pytorch:latest .
docker run --rm --shm-size 16g --network=host --name=resnet50_pytorch --privileged --device=/dev/kfd --device=/dev/dri --group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -v $PWD/../../resnet50-pytorch:/home/resnet50_pytorch -it resnet50_pytorch:latest bash
```
### Anaconda(方法三)
1、关于本项目DCU显卡所需的特殊深度学习库可从光合开发者社区下载安装:
https://developer.hpccube.com/tool/
```
pip3 install -r requirements.txt
DTK驱动:dtk22.10.1
python:python3.7
torch:1.10.0
torchvision:0.10.0
apex:0.1
```
`Tips:以上DTK、python、torch等DCU相关工具包,版本需要严格一一对应`
2、其它非特殊库参照requirements.txt安装
## 数据集
下载ImageNet数据集:[ImageNet (image-net.org)](https://image-net.org/)
参考[scrips/extract_ILSVRC.sh](https://developer.hpccube.com/codes/modelzoo/resnet50-pytorch/-/blob/main/scrips/extract_ILSVRC.sh)处理数据集。
## 训练
### 单卡训练(单精度)
```
......@@ -71,6 +111,16 @@ mpirun --allow-run-as-root --bind-to none -np 4 scrips/single_process_amp.sh loc
| 8 | 0.15 | 512 | fp32 | 75.902 |
| 8 | 0.15 | 512 | amp | 75.90 |
## 应用场景
### 算法类别
`图像分类`
### 热点应用行业
`制造,政府,医疗,科研`
# 源码仓库及问题反馈
https://developer.hpccube.com/codes/modelzoo/resnet50-pytorch
......
FROM image.sourcefind.cn:5000/dcu/admin/base/pytorch:1.10.0-centos7.6-dtk-22.10.1-py37-latest
ENV DEBIAN_FRONTEND=noninteractive
# RUN yum update && yum install -y git cmake wget build-essential
RUN source /opt/dtk-22.10.1/env.sh
# 安装pip相关依赖
COPY requirements.txt requirements.txt
RUN pip3 install -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com -r requirements.txt
# Python dependencies required for development
astunparse
expecttest
future
numpy
psutil
pyyaml
requests
setuptools
six
types-dataclasses
typing_extensions
dataclasses; python_version<"3.7"
# 模型编码
modelCode=106
# 模型名称
modelName=ResNet50-PyTorch
modelName=resnet50-pytorch
# 模型描述
modelDescription=ResNet50是一种用于图像识别的深度神经网络模型
# 应用场景(多个标签以英文逗号分割)
appScenario=训练,图像识别
# 应用场景
appScenario=训练,图像分类
# 框架类型(多个标签以英文逗号分割)
frameType=PyTorch
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment