您对华为云开发者网站的整体评价?

非常不满意 非常满意

0

1

2

3

4

5

6

7

8

9

10

*您遇到了哪些问题?(最多选三项)
*您感到满意的原因是?(最多选三项)
*请针对您所遇到的问题给出具体的反馈
200/200
算法
物体检测YOLOv3_ResNet18
ResNet18为骨干,支持CPU,GPU,Ascend310推理
ModelArts
26个月以前
363MB 30808 5803
  • 标签
    TensorFlow目标检测CPU
  • 资产ID 948196c8-3e7a-4729-850b-069101d6e95c

描述

YOLOv3_ResNet18(物体检测/TensorFlow训练)

适用的案例

适用的数据集

概述

针对提供带有物体框标注的数据集,该算法会载入在ImageNet-1k上的ResNet18预训练模型,训练后生成的模型可直接在ModelArts平台部署成在线服务,同时支持使用CPU和GPU规格进行推理。用户还可以将模型转换成Ascend类型,并在Hilens芯片上部署推理。

训练

  • 算法基本信息

    • 任务类型:物体检测

    • 支持的框架引擎:Tensorflow-1.13.1-python3.6

    • 算法输入:

      • ModelArts数据管理平台发布的物体检测数据集,在这里用户可选择性使用数据切分功能(若不选择切分算法将做纯训练场景;若选择了数据切分,算法将会自动地去做边训练边验证的场景,建议用户以8:2或9:1的比例进行切分);
      • ResNet18的ImageNet-1k预训练模型;
    • 算法输出(保证训练输出目录是一个空的OBS目录):

      • 用于转换Ascend格式模型的Frozen_PB模型,Ascend-310推理速度:10ms/pic。
      • 用于TF-Serving推理的saved_model模型,CPU(2核8GiB)推理速度:500ms/pic,P4推理速度:15ms/pic。
  • 训练参数说明

名称 默认值 类型 是否必选 是否可修改 描述
export_om_model True bool 导出模型是否用于Ascend 310推理。
model_name resnet18 string Backbone模型名称。
input_shape 352,640 string 输入图片的shape大小,宽高都必须能整除32。
batch_size 32 int 每步训练的图片数量(单卡)。
eval_batch_size 32 int 每步验证的图片数量(单卡)。
max_epochs 200 int 训练的epochs数量。
log_every_n_steps 10 int 打印日志的频率(单位:步)。
save_summary_steps 10 int 保存summary的频率(单位:步)。
save_interval_secs 180 int 保存模型的频率(单位:s)。
evaluate_every_n_epochs 10.0 float 每训练n个epoch做一次验证。此参数只有在传入的数据是经过数据管理切分过才生效,即需要做边训练边验证的场景下生效。
learning_rate 0.001 float 训练的初始学习率。
do_data_cleaning True bool 是否做数据清洗, 数据格式异常会导致训练失败,建议开启,保证训练稳定性。数据量过大时,数据清洗可能耗时较久,可自行线下清洗(支持BMP.JPEG,PNG格式, RGB三通道)。建议用JPEG格式数据。
  • 训练输出文件

    训练完成后的输出文件如下。

    训练输出目录  
      |- om    
        |- model      
          |- index      
          |- customize_service_d310.py  
      |- model    
        |- variables      
          |- variables.data-00000-of-00001      
          |- variables.index    
        |- saved_model.pb
    	|- config.json
    	|- customize_service.py
    	|- index
      |- frozen_graph    
        |- insert_op_conf.cfg    
        |- yolo3_resnet18.pb  
      |- checkpoint  
      |- model.ckpt-xxx  
      |- ...  
      |- events...  
      |- graph.pbtxt
    

Ascend310推理

  • 模型转换
    在模型管理侧选择压缩/转换,并创建任务,具体配置如下:

    • 输入框架:TensorFlow

    • 转换输入目录:选择训练输出目录中的frozen_graph

    • 输出框架:MindSpore

    • 转换输出目录:选择训练输出目录中的om/model

    • 转换模板:TF-FrozenGraph-To-Ascend-C32

    • 输入张量形状:images:1,352,640,3

    • 转换输出节点不用填写

    • 输入数据格式:NHWC

      剩余的参数均使用默认值

  • 模型导入
    模型转换成功后,在模型页面栏导入模型,具体配置如下:

    • 从模板中选择:ARM-Ascend模板
    • 模型目录:选择训练输出目录中的om/model
    • 输入输出模式:预置图像处理模式

GPU/CPU推理

基于训练完成的任务直接创建模型,其中在使用GPU推理时,导入模型前需要修改训练输出目录下的model/config.json文件,将runtime字段中tf1.13-python3.7-cpu改为tf1.13-python3.7-gpu。

案例指导

GPU训练+Ascend 310推理,可参考图像分类案例

GPU训练+CPU/GPU推理,可参考图像分类案例指导

GPU训练+边缘Hilens部署,可参考ModelArts + HiLens 端云协同,开发口罩识别AI应用

交付

华为云ModelArts

华北-北京一华北-北京四华北-乌兰察布一华东-上海一cn-east-4华南-广州西南-贵阳一

限制

公开

免费

无时长限制

版本

版本号
版本ID
发布时间
状态
版本说明
使用约束
17.0.4
hH0l3w
2022-08-19 09:34
已完成
优化未标注数据集场景下的日志报错
17.0.3
SpSlCk
2022-07-14 07:34
已完成
1.新增模型输出须为空目录提示;2.模型输出路径不为空目录抛出异常
17.0.2
y0haml
2022-06-25 04:18
已完成
优化超参
17.0.0
17.0.0
2021-06-09 06:38
已完成
修复模型评估在新版训练图片无法显示问题

关联资产

  • helmet_manifest(物体检测)

    以0.8比例切分的安全帽manifest数据集

    数据集
    0 0 2502 406 12

    45个月以前

  • dataset-car-and-person-500

    已标注的街道场景中的车辆和路人数据集,目标检测,500张

    数据集
    0 0 33427 2705 114

    41个月以前

  • pedestrian_detection_334

    已标注的多场景下的行人检测数据集,用于目标检测,334张

    数据集
    0 0 4028 624 20

    44个月以前

  • 口罩检测小数据集

    总共291张图,PASCAL标注格式

    数据集
    0 0 22739 1643 51

    46个月以前

  • 钢筋检测数据集

    250张,PASCAL标注格式

    数据集
    0 0 1733 122 19

    46个月以前

若您怀疑合法知识产权遭受侵犯,可以通过此链接进行投诉与建议。