华为云ModelArts的智能化--Servicecomb垃圾智能分类
云服务、API、SDK,调试,查看,我都行
阅读短文您可以学习到:人工智能AI之ModelArts的训练、识别、分析、分类
1 Classroom和Toolkit的关系
1.1 Classroom的简介
classroom是基于华为云的云上软件教学服务,支持初级开发者和高校师生实现备课、上课、作业、考试、实验、实训等全教学流程的线上教学,提供多类习题自动判题、企业级DevOps实训、免费在线习题库等众多高级特性辅助进行数字化教学转型。
1.2 Toolkit插件之华为云API实战课程
2 IntelliJ IDEA 之API插件介绍
API插件支持 VS Code IDE、IntelliJ IDEA等平台、以及华为云自研 CodeArts IDE,基于华为云服务提供的能力,帮助开发者更高效、便捷的搭建应用。API插件关联华为云服务下的 API Explorer、DevStar、CodeLabs、SDK 中心和 CLI 中心产品,致力于为开发者提供更稳定、快速、安全的编程体验。
在本插件中,我们提供了但不局限于如下的功能:
对接华为云API开放平台,支持用户检索API、查看API文档、调试API、以及提供SDK示例代码供用户学习如何使用API。
提供华为云SDK代码片段补全功能,SDK依赖包自动引入,加速用户集成华为云API。
对接华为云开发体验馆Codelabs,提供500+云服务代码示例,向导式教程帮助用户快速学习。
说明:
在IntelliJ IDEA等系列平台和VS Code IDE,华为云API插件的名称是Huawei Cloud API。而在CodeArts IDE,API插件是IDE原生内置的,名称是华为云API开发套件。
API插件在IntelliJ IDEA等系列平台和VS Code IDE的使用依赖底座插件,请提前安装底座插件。
3 API插件安装--IntelliJ IDEA
3.1 IntelliJ IDEA等平台
安装准备:下载并安装JDK1.8或更高版本。下载并安装IntelliJ IDEA 2020.2或更高版本。
须知:IntellIj平台同时支撑包括Goland、Pycharm等在内的IDE,若在其它相关IDE上开发,请下载配置好对应语言的编译器或者解释器。这里以IDEA为例介绍IntelliJ平台插件的安装流程,其他IntelliJ系列的IDE请参考IDEA。
开始安装:
您可以在直接在IDE插件市场或者直接在JetBrains插件市场下载离线包安装。
IDE安装
- 在IntelliJ IDEA顶部菜单栏中选择File > Settings,在Settings对话框的左侧导航栏中单击Plugins。
- Plugins区域单击Marketplace,在搜索栏中输入Huawei Cloud API。
- Search Results区域会出现Huawei Cloud API,单击Install,完成后重启IDE。
离线包安装:
- 进入插件市场搜索Huawei Cloud API,进入插件详情页,在Versions页签下选择想要版本的API插件,点击Download下载离线的插件压缩包保存到本地。。
- 在IntelliJ IDEA顶部菜单栏中选择File > Settings,在Settings对话框的左侧导航栏中单击Plugins。
- 在Plugins区域单击 ,再单击Install Plugin from Disk...。
- 在Choose Plugin File对话框中选择离线安装包(不用解压),并按照IntelliJ IDEA安装页面的提示,完成后续安装步骤。
说明:若当前您想要安装插件的IntelliJ IDE已经在桌面打开,则进入插件市场搜索Huawei Cloud API,进入插件详情页,在右上角会识别到本地已经打开的IDE,点击相应按钮,在弹出的IDE窗口中点击ok,则IDE后台会开始安装相应版本的API插件。
安装验证:在IntelliJ系列平台上安装插件成功后在左侧的导航栏中可以看到Huawei Cloud Toolkit图标,点击后面板会出现Huawei Cloud API的字样,则说明安装成功。
3.2 API列表
左侧展示API列表,可以查询所有API,目前云服务206,APIs9213
4 ModelArts零代码开发口罩识别AI模型
4.1 什么是ModelArts?
ModelArts是面向AI开发者的一站式开发平台,提供海量数据预处理及半自动化标注、大规模分布式训练、自动化模型生成及端-边-云模型按需部署能力,帮助用户快速创建和部署模型,管理全周期AI工作流。
"一站式"是指AI开发的各个环节,包括数据处理、算法开发、模型训练、部署都可以在ModelArts上完成。ModelArts底层支持各种异构计算资源,开发者可以根据需要灵活选择使用,而不需要关心底层的技术。
4.2 ModelArts 零代码开发口罩识别AI模型
完成零代码口罩识别AI模型开发,需要完成以下准备工作
创建华为云账号并实名认证
参考此链接,注册华为云账号。https://support.huaweicloud.com/usermanual-account/zh-cn_topic_0069252244.html
参考此链接,完成实名认证,推荐使用扫码认证。https://support.huaweicloud.com/usermanual-account/zh-cn_topic_0133456714.html
**注意:**请及时检查账号状态,避免账号处于欠费或冻结状态时资源被冻结,影响您的使用。
获取访问密钥并完成ModelArts全局配置
参考此文档完成。https://support.huaweicloud.com/prepare-modelarts/modelarts_08_0002.html
注意:访问密钥文件请妥善保存,使用OBS Browser会用到。https://console.huaweicloud.com/modelarts/?region=cn-north-4#/dataset
为了授权ModelArts访问OBS,需要进入ModelArts数据集,点击“服务授权”按钮,进行授权。
创建OBS桶
OBS,即Object Storage Service,对象存储服务,是华为云上提供云上储存的服务。在使用ModelArts之前您需要创建一个OBS桶,并在其中创建一个用于存放数据的文件夹。https://storage.huaweicloud.com/obs/#/obs/manager/buckets
登录OBS管理控制台, 页面右上角单击"创建桶",系统弹出如下图所示的对话框,选择"区域"为"华北-北京四",输入自定义的桶名称,其他选项保持默认即可,最后点击页面下方"立即创建"按钮即可成功创建。
下载并登录OBS Browser+
OBS Browser+是OBS客户端,方便用户上传和下载文件。
点击此链接,根据操作系统版本下载相应版本的OBS Browser+,并点击.exe文件进行安装。https://support.huaweicloud.com/browsertg-obs/obs_03_1003.html
参考此文档,使用AK SK登录OBS Browser+。https://support.huaweicloud.com/browsertg-obs/obs_03_1004.html
如果是Mac操作系统,可以参考此文档下载和安装OBS Browser。https://support.huaweicloud.com/clientogw-obs/zh-cn_topic_0045829115.html
注意:AK SK从访问秘钥文件中获取。
3.准备数据
下载数据集
本案例使用口罩识别数据集,点击此链接,下载压缩包至本地,然后解压。https://modelarts-labs.obs.cn-north-1.myhuaweicloud.com/codelab/mask_detection/mask_detection_200_exeml.tar.gz
解压后,可以看到mask_detection_exeml文件夹下有train和test两个文件夹。train文件夹中存放的是训练集,共200张图片,以及部分数据的标注文件。test文件夹下存放的是测试图片。
数据集共有三种类型的标注框,person(包含头部和肩部)、face和mask。
本案例的任务是训练一个可以口罩识别的AI模型。判断一个人有没有戴口罩的方法是,脸部的检测框里面是否有口罩的检测框。person物体的作用是对人做目标跟踪。
注意:该口罩识别数据集只能用于学习用途,不得用于商业用途。
上传数据至OBS
在OBS Browser+中,进入刚刚创建的“华为北京四”区域的OBS桶,然后点击“上传”按钮,上传本地文件夹mask_detection_exeml至OBS桶:
4.创建项目
登录ModelArts管理控制台,点击左侧导航栏的自动学习,进入自动学习页面。
点击右侧项目页面中的物体检测的创建项目按钮。
在创建自动学习项目页面,计费模式默认“按需计费”,填写“名称”并选择“训练数据”的存储路径。
名称:自定义
数据集来源:新建数据集
数据集名称:自定义
数据集输入位置:选择train目录的OBS路径
数据集输出位置:选择一个空的OBS路径,该路径可以使用OBS客户端创建
点击右下角创建项目。
5.数据标注
同步数据源
点击“同步数据源”按钮,等待右上角出现“数据源同步完成”提示信息,可以看到界面显示的图像。有部分图片没有标注。
标注数据
点击未标注页签,选择第一张图片,开始标注数据集。
在图片中的目标物体上画矩形框(画矩形框的方式是:使用鼠标左键框选图片中物体),并添加类别标签(如果已有该标签,可以直接从已有记录中选择,否则需要自己输入标签)
按照此方法,将一张图片上的person、face和mask三类物体全都标注好。然后点击箭头进入下一张图像,以同样的方式标注下一张图片。
如果您时间充足,可以把所有图片标注完。如果您时间有限,只标注几张图片即可,不标注完所有图片也可以开始训练。
点击左上角的作业名称按钮,返回自动学习页面。
现在,您可以看到已标注和未标注的数据数量。
6.模型训练
数据标注完成后,点击右上角的“开始训练”按钮,提交训练作业。
修改预期推理硬件为CPU,设置训练时长为0.2(h),其他字段保持默认,然后点击确定按钮,开始模型训练。
由于设置了训练时长限制,大概12分钟左右训练结束,可以查看模型精度。
如果想要提升模型的精度,可以尝试训练更长时间,或者添加更多训练样本。
7.部署上线
我们将训练好的模型部署成一个在线服务,在线服务的本质是RESTful API,可以通过HTTP请求访问,在本案例中,我们直接在网页上访问在线服务。
部署在线服务
点击“部署”按钮,将模型部署成一个在线服务,计算节点规格选择CPU,部署大概耗时5分钟左右
测试样例图片
模型部署成功后,点击“上传”按钮,选择test目录中一张图片上传,然后点击“预测”按钮,在页面的右侧可以查看预测结果。
预测结果中的detection_classes字段表示预测的物体类别,detection_boxes字段表示物体的检测框的位置,detection_scores表示类别的置信度。
也可以从网上下载图片来测试模型。
如果想要通过HTTP请求调用该API,可以在在线服务中通过自动学习项目名称找到该在线服务,点击名称进入,根据调用指南中的API信息调用API。
回帖领代金券(可选)
如果想要领取第二张代金券,可以将上一步骤中测试结果截图保存(截图需要带上右上角的华为云账号),然后在相应的论坛帖子下回帖。累计完成三个案例就可以领取第二张代金券。点击此链接,进入论坛帖子,参与Codelabs 活动。
如果想获取第二张代金券,可以将上一步中的测试结果, 截图保存推理结果,
关闭在线服务
为了避免持续扣费,案例完成后,需要关闭在线服务,点击“停止”按钮即可:
当需要使用该在线服务的时候,可以重新启动该在线服务。
5 ModelArts Notebook开发口罩识别AI算法
完成零代码口罩识别AI模型开发,需要完成以下准备工作
创建华为云账号并实名认证
参考此链接,注册华为云账号。https://support.huaweicloud.com/usermanual-account/zh-cn_topic_0069252244.html
参考此链接,完成实名认证,推荐使用扫码认证。https://support.huaweicloud.com/usermanual-account/zh-cn_topic_0133456714.html
**注意:**请及时检查账号状态,避免账号处于欠费或冻结状态时资源被冻结,影响您的使用。
获取访问密钥并完成ModelArts全局配置
参考此文档完成。https://support.huaweicloud.com/prepare-modelarts/modelarts_08_0002.html
注意:访问密钥文件请妥善保存,使用OBS Browser会用到。https://console.huaweicloud.com/modelarts/?region=cn-north-4#/dataset
为了授权ModelArts访问OBS,需要进入ModelArts数据集,点击“服务授权”按钮,进行授权。
创建ModelArts notebook
创建notebook
点击进入ModelArts notebook,然后点击页面上的“创建”按钮,创建notebook。https://console.huaweicloud.com/modelarts/?region=cn-north-4#/notebook
按照下列表格的指导,填写创建参数:
参数 值
计费模式 按需计费
名称 自定义
自动停止 开启
自动停止时间 1小时后
工作环境 Python3
资源池 公共资源池
类型 GPU
规格 1*V100 或者 1*P100
存储配置 云硬盘,磁盘规格5GB
填写完毕后,点击“下一步”按钮,然后点击“提交”按钮。
进入notebook
点击返回ModelArts notebook,等待notebook创建成功后,打开notebook,进入notebook主页面,如下:
创建ipynb笔记本
点击右上角的"New",然后创建TensorFlow 1.13.1开发环境。
点击左上方的文件名"Untitled",并输入一个自定义名称,如"hello"
在Notebook中编写并执行代码
在Notebook中,我们输入一个简单的打印语句,然后点击上方的运行按钮,可以查看语句执行的结果:
开发环境准备好啦,接下来可以愉快地写代码啦!
4.算法开发
在本小节中,我们在ModelArts notebook中使用MoXing从零开发一个口罩识别AI算法。
下载代码压缩包
点击此链接,下载代码压缩包至本地,解压后可以看到mask_detection_notebook文件夹下有以下文件:
├── mask_detection.ipynb
└── pipeline.config
mask_detection.ipynb是代码笔记本文件,pipeline.config是训练配置文件。
准备数据
本案例涉及的数据已经放在华为云公共OBS桶,代码会自动从公共OBS桶下载数据。
注意:该口罩识别数据集只能用于学习用途,不得用于商业用途。
上传文件至notebook
进入notebook主页面,然后使用Upload按钮批量上传本地mask_detection_notebook文件夹下的两个文件至notebook。如下图所示:
进入代码笔记本文件
已经编写好的代码放在 mask_detection.ipynb文件中,点击notebook文件列表中的 mask_detection.ipynb文件,进入代码笔记本文件。
如下图所示:
逐步执行并调测代码
自上而下,逐步执行该代码笔记本文件中的代码,可以观察每个代码块执行后是否会报错,还可以阅读笔记本中的代码解读。当所有代码都成功运行完成后,口罩识别的物体检测算法就调试通过了。
该笔记本文件中的物体检测算法是基于MoXing实现的。MoXing是华为云ModelArts团队自研的分布式训练加速框架,提供了很多预置算法,本案例使用MoXing中预置的FasterRCNN算法,实现了一个口罩识别AI算法。
我们也可以在notebook中自己开发代码,实现自定义的AI算法。
回帖领代金券(可选)
如果想要领取第二张代金券,可以将代码中模型推理结果截图保存,然后在相应的论坛帖子下回帖。累计完成三个案例就可以领取第二张代金券。点击此链接,进入论坛帖子,参与Codelabs 活动。
清理资源
为了防止持续扣费,需要关闭notebook。
6 呈现效果
6.1 ModelArts
祝贺你,你已经使用ModelArts开发平台的自动学习功能完成了口罩识别AI模型的训练和部署!
您学习了如何在ModelArts自动学习平台上对数据集进行标注,训练和部署模型。
https://support.huaweicloud.com/prepare-modelarts/modelarts_08_0001.html
https://support.huaweicloud.com/prepare-modelarts/modelarts_08_0002.html
https://support.huaweicloud.com/engineers-modelarts/modelarts_23_0012.html
https://support.huaweicloud.com/qs-obs/obs_qs_0002.html
6.2 ModelArts notebook
祝贺您,您已经使用ModelArts完成了代码开发任务!
您掌握了如何在ModelArts上使用notebook开发并调测代码。
接下来您可以
在ModelArts notebook中编程实现一些自己感兴趣的AI算法。
https://support.huaweicloud.com/prepare-modelarts/modelarts_08_0001.html
https://support.huaweicloud.com/prepare-modelarts/modelarts_08_0002.html
https://support.huaweicloud.com/engineers-modelarts/modelarts_23_0012.html
https://support.huaweicloud.com/qs-obs/obs_qs_0002.html
https://github.com/huaweicloud/ModelArts-Lab/tree/master/docs/moxing_api_doc
6.3 展示效果
7 体验插件课程
https://classroom.devcloud.huaweicloud.com/MOOCCourseStudy/join/ef4ebc3dbaa246ff995f75022cac8cb9
识别下方二维码立即体验
- 点赞
- 收藏
- 关注作者
评论(0)