【玩转华为云】手把手教你用Modelarts零代码开发FasterRCNN物体检测模型

本篇推文共计2000个字,阅读时间约3分钟。

华为云—华为公司倾力打造的云战略品牌,2011年成立,致力于为全球客户提供领先的公有云服务,包含弹性云服务器、云数据库、云安全等云计算服务,软件开发服务,面向企业的大数据和人工智能服务,以及场景化的解决方案。

华为云用在线的方式将华为30多年在ICT基础设施领域的技术积累和产品解决方案开放给客户,致力于提供稳定可靠、安全可信、可持续创新的云服务,做智能世界的“黑土地”,推进实现“用得起、用得好、用得放心”的普惠AI。华为云作为底座,为华为全栈全场景AI战略提供强大的算力平台和更易用的开发平台。

华为云官方网站

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

华为云官方网站

零代码开发FasterRCNN物体检测模型

本实验我们将聚焦于用ModelArts零代码开发FasterRCNN物体检测模型。在ModelArts平台中除了在Notebook开发环境中进行算法的定义和运行,通过ModelArts预置算法同样可以进行FasterRCNN算法的训练和推理。本文将利用ModelArts中的FasterRCNN预置算法进行的模型训练和推理过程。并利用该模型达到实现物体检测的实验目的。

零代码开发FasterRCNN物体检测模型

实验流程

1.准备实验环境与创建OBS桶

2.下载与上传数据

3.创建训练任务

4.导入训练模型

4.部署服务

5.在线服务测试

1

1.1密钥准备

首先需要进入华为云官方网站

https://www.huaweicloud.com/

点击页面的“控制台”切换至控制台界面,在账号名称的下拉菜单中点击“我的凭证”,进入创建管理访问密钥(AK/SK)的界面。位置如下图所示:

什么是访问密钥?

访问密钥即AK/SK(Access Key ID/Secret Access Key),是您通过开发工具(API、CLI、SDK)访问华为云时的身份凭证,不能登录控制台。系统通过AK识别访问用户的身份,通过SK进行签名验证,通过加密签名验证可以确保请求的机密性、完整性和请求者身份的正确性。

选择“访问密钥”,点击“新增访问密钥

妥善保存系统自动下载的“credentials.csv”文件中的AK(Access Key Id)SK(Secret Access Key)以备后续步骤使用。

1.2创建OBS桶和目录

进入方式,“控制台”->“服务列表”->“存储”->“对象存储服务”,页面右上角点击“创建桶”按钮进入创建页面。

什么是OBS?

对象存储服务(Object Storage Service,OBS)是一个基于对象的海量存储服务,为客户提供海量、安全、高可靠、低成本的数据存储能力,包括:创建、修改、删除桶,上传、下载、删除对象等。

1.3 OBS桶设置

OBS桶设置参数如下:

区域:华北-北京四

桶名称:自定义(注意:此名称会在后续步骤使用)

根据自己的命名习惯,我将此处的桶名称取为

obs-train-faster

存储类别:标准存储

桶策略:私有

归档数据直读:关闭

多AZ:开启

点击"立即创建",完成创建

1.4创建文件夹

点击刚刚创建的桶,进入详情页:

左侧栏选择“对象”,点击“新建文件夹”,在弹出的新建窗口中:

文件夹名称:自定义(此名称会在后续步骤中使用)

根据自己的命名习惯,我将此处的文件夹名称取为faster-data

点击“确定”完成添加

1.5服务授权

由于本实验项目需要使用数据管理功能,在开始使用前,需为数据管理模块获取访问OBS权限。

在ModelArts管理控制台,进入“数据管理->数据集”页面,单击“服务授权

由具备授权的账号“同意授权”后,即可正常使用:

1.6下载安装并登录OBS Browser+

由于OBS Browser快下线了,所以本次实验关于对象存储服务操作中我们用到的新工具是OBS Browser的升级版OBS Browser+

OBS Browser+是一款用于访问和管理对象存储服务(Object Storage Service,OBS)的图形化工具,支持完善的桶管理和对象管理操作。OBS Browser+的图形化界面可以非常方便地让用户在本地对OBS进行管理,例如:创建桶、上传下载文件、浏览文件等。

该工具在华为云主页“开发者->资源工具->开发工具”处:

双击点进去后是下面的页面:

在开发工具的业务工具处,根据自己电脑配置下载OBS Browser+:

此为下载完成打开后的OBS Browser+工具界面:

填入步骤1.1下载得到的Access Key IdSecret Access Key密钥

即可登录刚刚在华为云云端创建的OBS桶:

此时可以借助OBS Browser+从云端创建的OBS桶中上传和下载文件:

2

2.下载与上传数据

有很多开源的数据集可以用来进行目标检测任务的训练,如COCO数据集,PASCAL VOC数据集,BDD100K等,可以根据不同的需求和偏好进行选择

本文的操作实验将使用PASCAL VOC2007数据集进行模型构建,数据下载地址如下:

http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtrainval_06-Nov-2007.tar

数据集文件的大小较大,有439M

或本微信公众号后台回复“2007”即可一键获取PASCAL VOC2007数据集:

2.2数据解压与处理

在本地电脑平台,解压下载的

“VOCtrainval_06-Nov-2007”压缩包。

例如,解压至本地“VOCtrainval_06-Nov-2007”文件夹下

本实验只需要将解压后VOC2007下的两个文件夹Annotations(标注数据) 和 JPEGImages(图像数据)下的所有文件放入一个文件夹中(如:VOC),准备好的文件夹的如下图所示:

简单来说就是需要把解压后Annotations文件夹:

以及解压后JPEGImages文件夹:

两个文件里的数据统一复制粘贴到一个新文件中

这里再次定义为VOC文件夹:

2.3数据上传

点击打开刚刚下载安装好的OBS Browser+工具进行对象存储服务:

进入步骤1创建好的OBS桶faster-data文件夹中:

点击“上传”,选择刚才整理好的VOC文件夹,点击“确定”即可完成上传。

利用OBS Browser+工具将数据上传至华为云云端的速度很快,在华为云云端很快就可以看见刚刚上传的本地电脑的数据集:

3

3.创建训练作业

进入ModelArts主页“训练管理->训练作业”处:

点击“创建”,进行训练作业创建:

名称:自定义(此处我设置的是trainjob-faster)

算法来源:预置算法

此处选择:Faster_RCNN_ResNet_v1_50

数据来源:数据存储位置

/obs-train-faster/faster-data/VOC/

训练输出位置:

/obs-train-faster/faster-data/output/

(此时需要在OBS桶的faster-data文件夹下新建output文件夹)

运行参数使用默认的运行参数,此处我的max_epoches改为了2,训练2轮,大概需要几十分钟左右的训练时间。

如果想要提高模型的精度,可以适当增加max_epoches

资源池:公共资源池

类型规格可以根据自己的训练需求来选择

此处我选择的是:

类型:GPU

规格:[限时免费] GPU:1 * nvidia-v100-pcie-32gb 32GiB CPU:8 核 64GiB

设置好各项参数后,点击“下一步

再次确认信息后,点击“提交

模型开始训练:

模型训练完成,一共训练了25分钟:

4

4.导入训练模型

ModelArts平台提供了在线部署服务,可以对模型进行在线推理。

点击进入ModelArts主页“模型管理->模型”处,再次点击“导入”:

进行参数设置:

名称:自定义

(此处我设置的是model-faster)

元模型来源:从训练中选择

选择刚才的训练作业:trainjob-faster

其余保持默认

点击“立即创建”即可:

等待模型导入变为“正常”:

5

5.部署服务

进入ModelArts主页“部署上线->在线服务”处:

点击“部署”:

名称:自定义

(此处我设置的是service-faster)

资源池:公共资源池

选择模型及配置:

选择刚才导入的模型:model-faster

计算节点规格:自定义

其余保持默认

确认参数后,点击“下一步

再次确认无误,点击“提交”:

等待部署完成:

部署完成,显示“运行中

6

6.在线服务测试

在“部署上线”的“在线服务”处,点击运行中的在线服务右侧的“预测

进入到测试界面,单击“上传”图片,进行检测:

从检测结果来看,可以说利用于用ModelArts零代码开发FasterRCNN物体检测模型的检测效果很棒。

用上面步骤,进行其它图片测试,运行界面如下:

利用步骤进行其它图片测试:

测试1

测试2

测试3

测试4

测试5

至此实验全部完成。

最后大家使用的云端资源记得全部删除如对象存储服务创建的OBS桶,文件夹;ModelArts创建的数据集,部署的模型等都需要删除,并停用访问密钥,以免造成不必要的花费。

通过对实验结果的比对,可以看出利用

[华为云ModelArts]训练出来的物体检测模型是很棒的,六个字总结就是-高效,快捷,省心

 

你可能感兴趣的:(服务器,云服务器,云主机,阿里云,云服务,云服务器,云托管,腾讯)