Commit a0166be0 authored by chenzk's avatar chenzk
Browse files

v1.0

parent 0d79aeb5
# 仓库目录结构 # 仓库目录结构
## 除预训练模型外其他文件总大小尽量不要超过50M * 除预训练模型外其他文件总大小尽量不要超过50M
```
Project Project
├── imgs ├── dataset
│   ├── xxx.jpg │   ├── label_1
│ └── xxx.jpg │    ├── xxx.png
│    ├── xxx.png
│ └── ...
│   └── label_2
│    ├── xxx.png
│    ├── xxx.png
│ └── ...
├── model ├── model
│   ├── xxx.pth #预训练模型 │   ├── xxx.pth #预训练模型
│   ├── xxx.onnx #对应的onnx模型 │   ├── xxx.onnx #对应的onnx模型
│ └── xxx.mxr #对应的migraphx离线推理模型 │ └── xxx.mxr #对应的migraphx离线推理模型
├── icon.png ├── doc
│   ├── icon.png
│   ├── xxx.png
│ └── xxx.png
├── README.md ├── README.md
├── requirement.txt ├── requirement.txt
├── model.properties ├── model.properties
...@@ -20,105 +29,22 @@ ...@@ -20,105 +29,22 @@
│   ├── code_file4.py │   ├── code_file4.py
│   ├── code_file5.py │   ├── code_file5.py
└── └── code_file6.py └── └── code_file6.py
### icon.png:模型的图标文件,可到[iconfont](https://www.iconfont.cn/?spm=a313x.7781069.1998910419.d4d0a486a)查找。 ```
### README.md:参照本文件下面部分。 * icon.png:模型的图标文件,可到[iconfont](https://www.iconfont.cn/?spm=a313x.7781069.1998910419.d4d0a486a)查找。
### requirement.txt:模型依赖统一写到此文件。 ![img](./doc/icon.png)
### model.properties:固定模板如下: * README.md:参照下图,`十二大标题`为必选项,二级标题以下的标题或内容根据自己的项目灵活增删。
![img](./doc/readme.png)
* requirement.txt:模型依赖统一写到此文件,与深度学习相关的库请注释,以免安装为nv库。
* model.properties:`五大属性`固定模板如下:
```
# 模型唯一标识
modelCode=Project ID
# 模型名称 # 模型名称
modelName=模型名称(同项目名称) modelName=模型名称(同项目名称:模型名_深度学习框架)
# 模型描述 # 模型描述
modelDescription=简要描述此模型(尽量50字以内) modelDescription=简要描述此模型(尽量50字以内)
# 应用场景 # 应用场景
appScenario=推理,训练,OCR,nlp,cv,车牌识别,目标检测(首先描述推理训练信息,然后描述领域信息,多个标签用英文逗号隔开) appScenario=推理,训练,OCR,政府,交通,零售,金融,医疗(首先描述推理训练信息,然后描述算法类别信息,最后描述应用行业信息,多个标签用英文逗号隔开)
# 框架类型 # 框架类型
frameType=Tensorflow,PyTorch,Migraphx,ONNXRuntime(说明使用的框架类型, 多个标签用英文逗号隔开) frameType=paddle(说明使用的算法框架, 多个标签用英文逗号隔开。)
```
以下是README.md的编写框架:
# 模型名称(此处需修改,用英文全称与简写)
## 模型介绍
此处填写模型介绍。
## 模型结构
此处简要介绍模型结构。
## 数据集
此处介绍使用的数据集
如添加了自己写的数据集处理脚本,在此处说明脚本的使用方法:
python xxx.py \
--args0 xxx \
--args1 xxx \
...
## 训练及推理
### 环境配置
提供[光源](https://www.sourcefind.cn/#/service-details)拉取的训练以及推理的docker镜像:
* 训练镜像:
* 推理镜像:
python依赖安装:
pip install -r requirement.txt
### 训练与Fine-tunning
训练命令:
python train.py \
--args0 xxx \
--args1 xxx \
...
Fine-tunning命令:
python train.py \
--args0 xxx \
--args1 xxx \
...
### 预训练模型
model文件夹提供的预训练模型介绍,例如:
Project
├── model
│   ├── xxx.pth #pytorch预训练模型
│   ├── xxx.onnx #对应的onnx模型
└── └── xxx.mxr #对应的migraphx离线推理模型
### 测试
测试命令:
python test.py \
--args0 xxx \
--args1 xxx
...
### 推理
推理引擎版本:
* ONNXRuntime(DCU版本) >= x.xx.x
* Migraphx(DCU版本) >= x.x.x
#### ORT
基于ORT的推理命令:
python ORT_infer.py \
--args0 xxx \
--args1 xxx \
...
#### Migraphx
基于Migraphx的推理命令:
python Migraphx_infer.py \
--args0 xxx \
--args1 xxx \
...
## 性能和准确率数据
测试数据:[test data](链接),使用的加速卡:xxx。
根据模型情况填写表格:
| xxx | xxx | xxx | xxx | xxx |
| :------: | :------: | :------: | :------: |:------: |
| xxx | xxx | xxx | xxx | xxx |
| xxx | xx | xxx | xxx | xxx |
## 源码仓库及问题反馈
* 仓库的https链接
## 参考
* 链接1
* 链接2
* ......
# 模型名称(此处需修改,用英文全称与简写) # 算法名简写(英文简写)
## 模型介绍 ## 论文
此处填写模型介绍。 `此处填写实现本项目的算法论文名称`
- 此处填写算法论文的在线pdf地址
## 模型结构 ## 模型结构
此处简要介绍模型结构。 此处一句话简要介绍模型结构
## 数据集
此处介绍使用的数据集
如添加了自己写的数据集处理脚本,在此处说明脚本的使用方法:
python xxx.py \
--args0 xxx \
--args1 xxx \
...
## 训练及推理
### 环境配置
提供[光源](https://www.sourcefind.cn/#/service-details)拉取的训练以及推理的docker镜像:
* 训练镜像:
* 推理镜像:
python依赖安装: ![img](./doc/xxx.png)
## 算法原理
此处一句话简要介绍算法原理
pip install -r requirement.txt ![img](./doc/xxx.png)
### 训练与Fine-tunning ## 环境配置
训练命令:
python train.py \ 1、此处提供[光源](https://www.sourcefind.cn/#/service-details)拉取docker镜像的地址与使用步骤
--args0 xxx \ ```
--args1 xxx \ docker pull image.xxx
... ```
2、此处提供dockerfile的使用方法
```
docker build --no-cache -t xxx:latest .
```
3、此处提供本地配置、编译的详细步骤
Fine-tunning命令: 关于本项目DCU显卡所需的特殊深度学习库可从[光合](https://developer.hpccube.com/tool/)开发者社区下载安装。
```
DTK驱动:dtk23.04
python:python3.8
paddle:2.4.2
```
`Tips:以上dtk驱动、python、paddle等DCU相关工具版本需要严格一一对应`
python train.py \ 其它非深度学习库参照requirements.txt安装:
--args0 xxx \ ```
--args1 xxx \ pip install -r requirements.txt
... ```
### 预训练模型 ## 数据集
model文件夹提供的预训练模型介绍,例如: `此处填写公开数据集名称`
- 此处填写公开数据集下载地址
Project
├── model
│   ├── xxx.pth #pytorch预训练模型
│   ├── xxx.onnx #对应的onnx模型
└── └── xxx.mxr #对应的migraphx离线推理模型
### 测试
测试命令:
python test.py \
--args0 xxx \
--args1 xxx
...
### 推理 此处提供数据预处理脚本的使用方法
推理引擎版本: ```
* ONNXRuntime(DCU版本) >= x.xx.x python xxx.py
* Migraphx(DCU版本) >= x.x.x ```
#### ORT 项目中需要提供可训练的迷你数据集,整理完成后的数据目录结构如下:
基于ORT的推理命令: ```
── dataset
│   ├── label_1
│    ├── xxx.png
│    ├── xxx.png
│ └── ...
│   └── label_2
│    ├── xxx.png
│    ├── xxx.png
│ └── ...
```
## 训练
### 单机多卡
```
sh xxx.sh
```
python ORT_infer.py \ ### 多机多卡
--args0 xxx \ ```
--args1 xxx \ sbatch xxx.sh
... ```
#### Migraphx ## 推理
基于Migraphx的推理命令: ```
python xxx.py
```
## result
此处填算法效果测试图
python Migraphx_infer.py \ ![img](./doc/xxx.png)
--args0 xxx \
--args1 xxx \
...
## 性能和准确率数据 ### 速度与精度
测试数据:[test data](链接),使用的加速卡:xxx。 测试数据:[test data](链接),使用的加速卡:xxx。
根据模型情况填写表格: 根据测试结果情况填写表格:
| xxx | xxx | xxx | xxx | xxx | | xxx | xxx | xxx | xxx | xxx |
| :------: | :------: | :------: | :------: |:------: | | :------: | :------: | :------: | :------: |:------: |
| xxx | xxx | xxx | xxx | xxx | | xxx | xxx | xxx | xxx | xxx |
| xxx | xx | xxx | xxx | xxx | | xxx | xx | xxx | xxx | xxx |
## 应用场景
### 算法类别
参考此分类方法(上传时请去除参考图片):
![img](./doc/classes.png)
`此处填算法类别`
### 应用行业
`此处填应用行业`
### 算法框架
`此处填算法框架`
## 预训练权重
`(若为github原预训练权重此标题可去除。)`
## 源码仓库及问题反馈 ## 源码仓库及问题反馈
* 仓库的https链接 - 此处填本项目gitlab地址
## 参考 ## 参考资料
* 链接1 - 此处填源github地址
* 链接2 - 此处填参考项目或教程网址
* ...... - ......
# 模型编码 # 模型唯一标识
modelCode = Project ID(模型唯一标识,GitLab项目名称下面查看Project ID,细节可查询GitLab api说明,例如100) modelCode = Project ID(GitLab创建项目后查看名称下面Project ID即可,注意此ID为hpccube下GitLab生成的ID,不可编造。例如:359)
# 模型名称 # 模型名称
modelName=模型名称(同项目名称,模型_框架,全部采用小写,例如ocr_paddle,resnet50_tensorflow2) modelName=模型名称(同项目名称,模型名_深度学习框架,全部采用小写,例如ocr_paddle,resnet50_tensorflow2)
# 模型描述 # 模型描述
modelDescription=简要描述此模型(尽量50字以内) modelDescription=简要描述此模型(尽量50字以内)
# 应用场景 # 应用场景
appScenario=推理,训练,OCR,nlp,cv,车牌识别,目标检测(首先描述推理训练信息,然后描述领域信息,多个标签用英文逗号隔开) appScenario=推理,训练,OCR,政府,交通,零售,金融,医疗(首先描述推理训练信息,然后描述算法类别信息,最后描述应用行业信息,多个标签用英文逗号隔开)
# 框架类型 # 框架类型
frameType=Tensorflow,PyTorch,Migraphx,ONNXRuntime(说明使用的框架类型, 多个标签用英文逗号隔开) frameType=paddle(说明使用的算法框架, 多个标签用英文逗号隔开)
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