基于ModelArts实现行人检测模型训练和多场景部署

举报
HWCloudAI 发表于 2022/11/30 16:49:16 2022/11/30
【摘要】 本实验将指导用户使用华为ModelArts实现行人检测模型训练和部署,行人检测模型可以应用于自动驾驶场景,检测道路上行人的位置。

一、实验内容

本实验将指导用户使用华为ModelArts实现行人检测模型训练和部署,行人检测模型可以应用于自动驾驶场景,检测道路上行人的位置。

二、实验目标

  • 熟悉ModelArts数据管理、训练作业、模型部署等基本操作

  • 掌握利用YOLOv3_ResNet18算法实现行人检测的基本流程

  • 了解ModelArts平台上一次训练、多场景部署的优势

三、实验操作步骤

1 实验准备

1.1 华为云服务介绍

(1)OBS服务

OBS即对象存储服务(Object Storage
Service),提供海量、安全、高可靠、低成本的数据存储能力,可供用户存储任意类型和大小的数据,适合企业备份/归档、视频点播、视频监控等多种数据存储场景。

(2)ModelArts服务

ModelArts是面向AI开发者的一站式开发平台,提供海量数据预处理及半自动化标注、大规模分布式训练、自动化模型生成,及端-边-云模型按需部署能力,帮助用户快速创建和部署模型,管理全周期AI工作流。

1.2 注册华为云账号

在使用华为云服务之前您需要注册华为云帐号。通过此帐号,只需为使用的服务付费,即可使用所有华为云服务。

注册华为云账号步骤请点击:《华为云注册介绍》

1.3 实名认证

注册成功后即可自动登录华为云,您需要完成“实名认证”才可以正常使用服务。

具体认证方式请参见点击:《实名认证介绍》

1.4 配置访问授权

在您使用自动学习、数据管理、Notebook、训练作业、模型和服务等功能过程中,ModelArts可能需要访问您的OBS、SWR、IEF等依赖服务,若没有授权,这些功能将不能正常使用。

完成授权配置(推荐使用委托授权)参考如下链接:
《授权介绍》

2.创建OBS桶和目录

2.1.访问OBS创建界面

进入方式,“控制台”->“服务列表”->“存储”->“对象存储服务OBS”,如下图所示。

页面右上角点击“创建桶”按钮进入创建页面。

2.2.创建OBS桶

参数如下:
区域:华北-北京四,
数据冗余存储策略:单AZ存储,
桶名称:自定义(注意:此名称会在后续步骤使用),
存储类别:标准存储,
桶策略:私有,
默认加密:关闭,
归档数据直读:关闭,

如下图所示:

点击"立即创建",弹窗点击“确定”,完成创建。

2.3.创建文件夹

点击刚创建的桶名称,进入详情页,左侧栏选择“对象”,点击“新建文件夹”,在弹出的新建窗口中:
文件夹名称:自定义(注意:此名称会在后续步骤中使用);

点击“确定”完成添加。

3.订阅数据集

此操作会从AI Gallery上下载行人检测数据集到自己创建的OBS桶,用以完成检测实验。

3.1进入AI Gallery下载数据集

此链接进入数据集描述页面。

在描述页面右侧找到“下载”按钮并点击,在下载详情页面填写如下信息:
下载方式:ModelArts数据集
目标区域:华北-北京四
目标位置:点击右侧文件夹按钮,选择刚刚你在2.3步骤创建的obs桶和文件夹
名称:默认值
点击“确定”,等待下载完成。

可在AI Gallery页面中点击“个人中心”,点击“数据集”,点击“我的下载”里查看进度。
(注意:必须等到进度为“100%”方可进行下一步,可刷新页面查看最新进度)
下载完成页面:

3.2 发布数据集

回到ModelArts控制台页面,点击左侧栏“数据管理”下的“数据集”,找到刚刚下载的数据集,点击“发布”。

在弹出的窗口中,打开“数据切分”按钮,在训练集比例填“0.8”,点击确认。

等待发布成功。

4.创建训练作业

4.1.选择算法

此链接进入YOLOv3_ResNet18算法描述页面,点击页面中的“订阅”按钮,进行该算法的订阅(已订阅的直接点击“前往控制台”进入)。

如下图所示:

在弹出的“使用约束”窗口中,点击“继续订阅”完成订阅,如下图所示:

点击上图标识的“前往控制台”按钮,在弹出的“选择云服务区域”,选择“华北-北京四”,如下图所示:

点击“确定”进入ModelArts“算法管理”页面,待算法同步完成后,点击“创建训练作业”,如下图所示:

4.2.创建训练作业

配置参数如下:
计费模式:按需计费,
名称:自定义,如trainjob-pedestrian-detection(注意:此名称后续步骤会使用到),

如下图:

算法来源:算法管理,
算法名称:默认,
训练输入:数据来源->数据集 ->选择步骤3.2发布的数据集,
训练输出:模型输出->选择步骤2.2创建的OBS桶->点击“新建文件夹”->输入自定义名称->选择新创建的文件夹。

调优参数:默认,

如下图:

作业日志路径:默认,
资源池:公共资源池,
规格:GPU: 1*NVIDIA-V100(32GB) |CPU: 8核 64GB,
计算节点个数:1,
保存作业参数:不勾选,

如下图:

点击“下一步”->“提交”->“返回训练作业列表”查看,等待大约11分钟左右状态变更为“运行成功”,如下图:

5.模型导入

5.1.导入PB模型

本案例的算法是使用Tensorflow框架训练得到的模型,格式是PB模型,该模型可以部署在CPU和GPU上运行。

在 “ModelArts”控制台页面,点击左侧栏“AI应用管理”->“AI应用”进入,点击“创建”开始导入模型。

配置参数:
名称:自定义,如model-pedestrian-detection,
版本:0.0.1,
元模型来源:从训练中选择,
选择训练作业:默认,

如下图所示:

部署类型:默认,
推理代码:默认,
最小推理规格:默认,

点击“立即创建”完成创建,截图如下:

点击模型列表项的展开按钮查看当前导入模型的状态,如下图所示:
(注:需待模型构建“状态”更新为“正常”后,方能进行下一步操作)

5.2 导入OM模型

如果要将模型部署在Ascned 310上运行,则需要将模型转换为OM模型。

5.2.1 模型转换

此链接进入模型转换页面,点击“创建任务”,按照下图配置参数,具体参数如下:

  • 输入框架:TensorFlow

  • 转换输入目录:选择训练输出目录中的frozen_graph目录(如果输出目录下内容太多,要点“下一页”)

  • 输出框架:MindSpore

  • 转换输出目录:选择训练输出目录中的om/model目录(如果输出目录下内容太多,要点“下一页”)

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

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

  • 转换输出节点不用填写

  • 输入数据格式:NHWC

  • 剩余的参数均使用默认值

点击下一步,提交,大约需要3分钟左右,模型转换成功。

5.2.2 模型导入

仍然是在 “ModelArts”控制台页面,点击左侧栏“模型管理”->“模型”进入,点击“导入”开始导入模型,配置参数参考下图,和导入PB模型的区别主要有三点:

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

模型名称改为 model-pedestrian-detection-om,其他配置和导入PB模型保持一样即可。

6.模型部署

6.1.进入部署界面

在 “ModelArts”服务控制台,点击左侧栏“部署上线”->“在线服务”,点击“部署”开始模型部署。

6.2.部署CPU模型

参数配置:
计费模式:按需计费,
名称:自定义,如service-pedestrian-detection,
是否自动停止:点击按钮取消,
资源池:公共资源池,
选择模型及配置:模型选择model-pedestrain-detection,计算节点规格 选择CPU:2核8GIB,
其他:默认,

点击“下一步”->“提交”,如下图所示:

点击“返回在线服务列表”查看列表,大约等待3-5分钟部署完成。完成状态如下图:

6.3.部署Ascend 310模型

操作步骤与6.2基本一致,主要区别在于选择模型和配置时,模型选择model-pedestrain-detection-om,计算节点规格 选择 Ascend: 1*Ascend-D310(8GB)|ARM: 3核6GB

7.发起检测

7.1.开始检测

点击右键保存下面这张测试图片,或点此链接下载:

再回到ModelArts在线服务列表,分别点击两个刚部署的在线服务,进入详情,选择“预测”标签下点击 “上传”,上传刚下载的图片,点击“预测”,等待检测完成。

预测成功效果如下图(由于数据集在发布的时候,训练集和验证集是随机分配的,所以你的模型检测效果可能跟下图不一样,这是正常现象。)

8、将模型发布至AI Gallery

8.1 进入模型发布页面

点击此处进入模型发布页面。(首次发布需按页面指导完成入驻ModelArts AI Gallery的操作)

8.2 自定义标题

不能以纯数字串、纯拼音、纯英文命名,可包含算法名称、领域、应用场景等信息,选择上述创建完成的模型,单击“发布”。

8.3 完善信息

编辑副标题、上传封面图、添加标签、描述及限制后,点击所有“保存”按钮后即发布成功。

至此,本实验完成。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。