Commit 9fa9e2d0 authored by liangjing's avatar liangjing
Browse files

update

parent c1aef50a
# ResNet50(Residual Network with 50-layer) # ResNet50
## 模型介绍 ## 论文
ResNet50是一种用于图像识别的深度神经网络模型。 Deep Residual Learning for Image Recognition
* https://arxiv.org/abs/1512.03385
## 模型结构 ## 模型结构
ResNet50网络模型由一系列卷积层、池化层、全局平均池化层和全连接层组成。该模型的特殊之处在于它包含多个残差块,每个残差块由多个卷积层和跳跃连接组成。 ResNet50是一种用于图像识别的深度神经网络模型,该模型由一系列卷积层、池化层、全局平均池化层和全连接层组成。该模型的特殊之处在于它包含多个残差块,每个残差块由多个卷积层和跳跃连接组成。
![img](ResNet50.png)
## 算法原理
在ResNet50中,输入图像通过一系列卷积层和池化层进行特征提取,然后通过多个残差块进行深度特征学习。每个残差块包含多个卷积层和跳跃连接,跳跃连接允许信息在残差块内和残差块之间的传递,从而解决了深度神经网络中出现的梯度消失问题。最后,全局平均池化层将特征映射到一个固定长度的向量,该向量再通过全连接层进行分类或回归等任务。 在ResNet50中,输入图像通过一系列卷积层和池化层进行特征提取,然后通过多个残差块进行深度特征学习。每个残差块包含多个卷积层和跳跃连接,跳跃连接允许信息在残差块内和残差块之间的传递,从而解决了深度神经网络中出现的梯度消失问题。最后,全局平均池化层将特征映射到一个固定长度的向量,该向量再通过全连接层进行分类或回归等任务。
## 目标精度 ![img](Residual_Block.png)
## 环境配置
75.90% classification 提供[光源](https://www.sourcefind.cn/#/service-details)拉取的训练的docker镜像:
docker pull image.sourcefind.cn:5000/dcu/admin/base/custom:mlperf-resnet50-mpirun-latest
# <Image ID>用上面拉取docker镜像的ID替换
# <Host Path>主机端路径
# <Container Path>容器映射路径
docker run -it --name mlperf_bert --shm-size=32G --device=/dev/kfd --device=/dev/dri/ --cap-add=SYS_PTRACE --security-opt seccomp=unconfined --ulimit memlock=-1:-1 --ipc=host --network host --group-add video -v <Host Path>:<Container Path> <Image ID> /bin/bash
## MLPerf代码参考版本 镜像版本依赖:
版本:mlperf_benchmark * DTK驱动:dtk22.10.1
* python: python3.8.2
原始代码位置: 测试目录:
* https://github.com/mlcommons/training/tree/master/image_classification/tensorflow2
```
/root/resnet50
```
## 数据集 ## 数据集
...@@ -27,49 +45,54 @@ ResNet50网络模型由一系列卷积层、池化层、全局平均池化层和 ...@@ -27,49 +45,54 @@ ResNet50网络模型由一系列卷积层、池化层、全局平均池化层和
具体处理方式可详见:https://github.com/mlcommons/training/tree/master/image_classification 具体处理方式可详见:https://github.com/mlcommons/training/tree/master/image_classification
## 训练 处理好的预训练模型结果如下:
### 环境配置
单机8卡进行性能&&精度测试 mlperf_resnet50
├── checkpoint
├── ckpt-0.data-00000-of-00001
├── ckpt-0.index
├── ckpt-500.data-00000-of-00001
├── ckpt-500.index
### 环境配置 ## 训练
提供[光源](https://www.sourcefind.cn/#/service-details)拉取的训练的docker镜像: ### 单机多卡
单机8卡进行性能&&精度测试
docker pull image.sourcefind.cn:5000/dcu/admin/base/custom:mlperf-resnet50-mpirun-latest ```
bash 8dcu_multi.sh >& output.log &
```
python依赖安装(如已经拉取镜像可忽略下述依赖安装步骤): ## result
pip install -r requirement.txt ![result](result.png)
### 训练 ## 精度
训练命令: 采用上述输入数据,加速卡采用Z100L * 8,可最终达到官方收敛要求,即达到目标精度75.90% classification;
bash 8dcu_multi.sh >& output.log & | 卡数 | 类型 | 进程数 | 达到精度 |
| ---- | -------- | ------ | --------------------- |
| 8 | 混合精度 | 8 | 75.90% classification |
### 预训练模型 ## 应用场景
在本目录下我们提供了一个预训练模型如下: ### 算法类别
mlperf_resnet50 `图像分类`
├── checkpoint
├── ckpt-0.data-00000-of-00001
├── ckpt-0.index
├── ckpt-500.data-00000-of-00001
├── ckpt-500.index
## 测试结果 ### 热点应用行业
采用上述输入数据,加速卡采用Z100L*8,可最终达到官方收敛要求; `制造,政府,医疗,科研`
## 源码仓库及问题反馈 ## 源码仓库及问题反馈
* https://developer.hpccube.com/codes/modelzoo/mlperf_resnet50 * https://developer.hpccube.com/codes/modelzoo/mlperf_resnet50_tensorflow
## 参考 ## 参考
* https://mlcommons.org/en/ * https://mlcommons.org/en/
* https://github.com/mlcommons * https://github.com/mlcommons
* https://github.com/mlcommons/training/tree/master/image_classification/tensorflow2
model_checkpoint_path: "ckpt-500"
all_model_checkpoint_paths: "ckpt-0"
all_model_checkpoint_paths: "ckpt-500"
all_model_checkpoint_timestamps: 1652335023.338002
all_model_checkpoint_timestamps: 1652336122.617568
last_preserved_timestamp: 1652335021.4878714
# 模型唯一标识
modelCode=113
# 模型名称 # 模型名称
modelName=MLPerf_ResNet50_TensorFlow modelName=mlperf_resnet50_tensorflow
# 模型描述 # 模型描述
modelDescription=ResNet50是一种用于图像识别的深度神经网络模型 modelDescription=resnet50_tensorflow是一种用于图像识别的深度神经网络模型
# 应用场景(多个标签以英文逗号分割) # 应用场景
appScenario=训练CV appScenario=训练,CV,制造,政府,医疗,科研
# 框架类型(多个标签以英文逗号分割) # 框架类型
frameType=TensorFlow frameType=TensorFlow
result.png

15.9 KB

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