本篇推文共计2000个字,阅读时间约3分钟。
华为云—华为公司倾力打造的云战略品牌,2011年成立,致力于为全球客户提供领先的公有云服务,包含弹性云服务器、云数据库、云安全等云计算服务,软件开发服务,面向企业的大数据和人工智能服务,以及场景化的解决方案。
华为云用在线的方式将华为30多年在ICT基础设施领域的技术积累和产品解决方案开放给客户,致力于提供稳定可靠、安全可信、可持续创新的云服务,做智能世界的“黑土地”,推进实现“用得起、用得好、用得放心”的普惠AI。华为云作为底座,为华为全栈全场景AI战略提供强大的算力平台和更易用的开发平台。
华为云官方网站
ModelArts是华为云产品中面向开发者的一站式AI开发平台,为机器学习与深度学习提供海量数据预处理及半自动化标注、大规模分布式Training、自动化模型生成,及端-边-云模型按需部署能力,帮助用户快速创建和部署模型,管理全周期AI工作流。
华为云官方网站
基于ModelArts实现目标物体检测
基于ModelArts实现目标物体检测模型训练和部署。本实验将提供一个“找云宝”样例(“云宝”是华为云的吉祥物),帮助用户快速熟悉ModelArts自动学习的使用过程。通过预置的图像数据集,自动训练并生成检测模型,同时将生成的模型部署为在线服务。部署完成后,用户可通过在线服务识别输入图片是否包含目标物体。
基于ModelArts实现目标物体检测
实现流程
1.准备环境和创建OBS桶
2.准备数据
3.创建物体检测项目
4.数据标注
5.自动训练,生成模型
6.将模型部署上线为在线服务
7.发起检测
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桶设置
OBD桶设置参数如下:
区域:华北-北京四
桶名称:自定义(注意:此名称会在后续步骤使用)
我将此处的桶名称取为yuntest-modelarts
存储类别:标准存储
桶策略:私有
归档数据直读:开启
多AZ:开启
点击"立即创建",完成创建
1.4创建文件夹
点击刚创建的桶名称,进入详情页
左侧栏选择“对象”,点击“新建文件夹”,在弹出的新建窗口中:
文件夹名称:自定义(此名称会在后续步骤中使用)
我将此处的文件夹名称取为dataset-yun
点击“确定”完成添加
1.5服务授权
由于创建自动学习项目需要使用数据管理功能,在开始使用前,需为数据管理模块获取访问OBS权限。
在ModelArts管理控制台,进入“数据管理->数据集”页面,单击“服务授权”
由具备授权的账号“同意授权”后,即可正常使用:
2
2.1准备数据
ModelArts在公共OBS桶中提供了云宝的示例数据集,命名为“Yunbao-Data-Custom”,因此,本文的操作示例使用此数据集进行模型构建。
关于数据集的下载您可以在华为云搜索栏,搜索Yunbao-Data-Custom
即可获取下载资源:
或本微信公众号后台回复“云宝”即可获取数据集:
2.2数据解压
在本地,将“Yunbao-Data-Custom.zip”压缩包解压。例如,解压至本地“Yunbao-Data-Custom”文件夹下。
2.3数据上传
按照步骤1操作进入对象存储服务:
点击创建的好的桶yuntest-modelarts,进入“对象”页面:
再次点击文件夹dataset-yun,在文件夹中选择“上传对象”
将步骤2.1下载的本地数据集中的文件夹拖拽至上传对象框中,点击上传即可:
点击上传即可完成本地到云端的数据上传:
3
3.1创建物体检测项目
进入ModelArts管理控制台主页,单击左侧导航栏“自动学习”
添加步骤1保存的访问**文件中的**:
在“物体检测”方框中单击“创建项目”
在“创建物体检测项目”页面中,填写“项目名称”、“数据集名称”
选择“数据集输入位置”
云宝数据集OBS路径为
“/yuntest-modelarts/dataset-yun/train/”
“数据集输出位置”选择一个空目录如
“/yuntest-modelarts/dataset-yun/output/”
添加标签集为“yunbao”
4
4.1数据标注
数据标注,针对物体检测项目,即在已有数据集图像中,标注出物体位置,并为其打上标签。标注好的数据用于模型训练。
云宝数据集中,已标注部分数据,还有部分数据未标注,用户可以选择未标注数据进行手动标注。
自动学习项目创建时,会自动执行数据源同步操作。由于数据源同步需要一定时间,如果出现同步失败,可单击“同步数据源”手动执行。
在“自动学习->数据标注”页面单击“未标注”页签,此页面展示所有未标注的图片数据。单击任意一张图片,进入图片标注界面。
用鼠标框选图片中的云宝所在区域,然后在弹出的对话框中输入标签名称,例如此示例中的“yunbao”,按“Enter”键完成此图片的添加。
标注完成后,左侧图片目录中此图片的状态将显示为“已标注”
用户可以在下方图片目录中,选择其他图片,重复上述操作继续进行图片标注。如果一张图片有多个云宝,用户可以标注多处。建议将数据集中所有图片都标注完成,这样能得到一个效果比较好的模型。
5
5.1自动训练,生成模型
本次实验由于作者网速问题,只标注了24张图片,建议用户全部标注完成后再选择右侧的开始训练
点击开始训练,设置训练参数:
单击“确定”开始模型的自动训练。深度学习训练时间相对较长,建议用户耐心等待。如果关闭或退出此页面,系统仍然在执行训练操作。
训练完成后,用户可以在界面中查看训练详情,如 “准确率”“评估结果”“训练参数”“分类统计表”等
6
6.1将模型部署上线为在线服务
在“模型训练”页签中,待训练状态变为“已完成”,单击“版本管理”区域中的“部署”。
在弹出的部署设置对话框中,选择“计算节点规格”,设置“自动停止”功能,单击“确定”开始将物体检测模型部署上线为在线服务。
如果选择免费规格,则不需要设置“自动停止”功能,1小时之后自动停止。
启动部署上线后,系统自动跳转至部署上线页面。此页面将呈现模型部署上线的进度和状态。
部署上线将耗费较多时间,请您耐心等待。
部署完成后,版本管理区域的状态将变更为
“运行中”。
7
7.1发起检测
模型部署完成后,用户可添加图片进行检测,在“部署上线”界面,选择状态为“运行中”的服务版本,在“服务测试”区域单击“上传”检测图片进行检测。
测试1
测试2
测试3
至此实验全部完成。
最后大家使用的云端资源记得全部删除如对象存储服务创建的桶,文件夹;ModelArts创建的数据集,部署的模型等都需要删除,并停用访问**,以免造成不必要的花费。
通过对实验结果的比对,可以看出利用
[华为云ModelArts]训练出来的目标物体识别模型是很棒的,六个字总结就是-高效,快捷,省心。
如您对本系列的实验感兴趣,点击底部阅读原文可免费报名参加4月20日开始的
[华为云开发者青年班第二期 AI实战营],让你足不出户免费体验[华为云]高级技术专家亲自指导,学、练、赛的全流程内容,让你轻松Get AI技能并有面试直通卡以及大量现金奖励。
心动不如行动,快来学习吧。
正因我们国家有许多像华为这样强大的民族企业在国家背后默默做支撑,做奉献。我们国家才能屹立于世界民族之林。
华为,中国骄傲!中华有为!
往期回顾
武汉加油,中国加油!
欢迎各位读者在下方进行提问留言
☆ END ☆
你与世界
只差一个
公众号
如果您喜欢本推文,希望您可以点个“在看”或“分享”
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:【玩转华为云】手把手教你利用ModelArts实现目标物体检测 - Python技术站