【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型

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

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

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

华为云官方网站

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

华为云官方网站

在Pycharm中调用ModelArts平台

训练和部署模型

本次实验将手把手演示如何在Pycharm中利用插件工具PyCharm ToolKit,协助用户完成代码上传、提交训练作业、部署模型等步骤,让用户可以在本地Pycharm中感受ModelArts平台魅力。

在Pycharm中调用ModelArts平台训练和部署模型

实验流程

1.在华为云的云端创建访问密钥

2.准备训练数据和代码并上传数据至OBS桶

3.本地Pycharm中创建训练工程并配置环境

4.开始在本地调用ModelArts平台训练模型

5.训练模型云端部署

6.在线测试训练模型

在Pycharm中调用ModelArts平台训练和部署模型

注意事项

1.当前仅支持PyCharm 2019.2及以上版本。

2.目前只支持Windows和Linux操作系统。

3.在本地PyCharm中已有训练代码工程。

4.训练作业使用的数据已上传至OBS,且OBS与ModelArts在同一区域。

确认你的上述配置信息无误后可进行操作步骤。

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)以备后续步骤使用。

2

2.1准备训练数据和代码

关于本次实验用到的所有数据和运行代码已整理至公众号端:

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第1张图片

后台回复“训练”获取下载链接:

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第2张图片

2.2创建OBS桶并登陆OBS Browser+

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

什么是OBS?

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

2.3 OBS桶设置

OBS桶设置参数如下:

区域:华北-北京四

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

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

pycharm-test-model

存储类别:标准存储

桶策略:私有

归档数据直读:关闭

多AZ:开启

 

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

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第3张图片

2.4创建文件夹

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

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

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

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

 

点击“确定”完成添加:

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第4张图片

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桶:

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第5张图片

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

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第6张图片

进入刚才创建的dog-cat-data文件夹中:

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第7张图片

点击上传,选择“添加文件”,直接选择本地数据集压缩文件夹,不需要解压后再上传:

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第8张图片

点击“确定”,开始进行上传数据:

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第9张图片

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

3

3.本地Pycharm中创建训练工程并配置环境

打开PyCharm工具,单击“File->Create Project”创建新工程:

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第10张图片

在工程目录下创建“src”文件夹:

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第11张图片

并将训练代码文件“dog_and_cat_train.py”拷贝到“src”文件夹下

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第12张图片

在PyCharm工具栏中,选择“ModelArts->Edit Creden”:

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第13张图片

输入步骤一得到的密钥,并且此时的区域必须和OBS区域保持一致,即“华北-北京四”

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第14张图片

登陆后,选择“ModelArts->Edit Training Job Configuration”:

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第15张图片

在弹出的对话框中,按照如下示例配置训练参数:

Job Name:训练作业的名字

自定义,此处我设置为MA-test-dog

Job Description:训练作业的简要描述

自定义,此处我设置的是:调用云端

AI Engine:TensorFlow,TF1.13.1-python3.6

此处需按此处配置,python代码版本请升级至3.6或以上

Specifications:训练使用资源类型。目前支持公共资源池的CPU和GPU,规格与ModelArts管理控制台中训练作业支持的规格一致。

此处可设置为:GPU: 1*p100 CPU: 8 核 64GiB,因为此配置在云端训练作业时是免费的。

Compute Nodes:计算资源节点个数。数量设置为1时,表示单机运行;数量设置大于1时,表示后台的计算模式为分布式。

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第16张图片

OBS Path:设置OBS路径,该路径下会自动创建用于存放训练输出模型和训练日志的目录。

此处根据自己个人情况,我设置的OBS桶的路径:/pycharm-test-model/

Data Path in OBS:设置为存储训练数据的OBS路径

此处我根据自己个人情况,我设置的OBS桶的数据集路径:/pycharm-test-model/dog-cat-data/

Boot File Path:训练启动文件,所选启动文件必须是当前PyCharm训练工程中的文件。

此处应设置train文件的路径:D:\Pycharm\test5\src\dog_and_cat_train.py

Code Directory:训练代码目录,所选目录必须是当前PyCharm训练工程中的目录。

此处即设置为:D:\Pycharm\test5\src

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第17张图片

Running Parameters:运行参数。如果您的代码需要添加一些运行参数,可以在此处添加,多个运行参数使用英文分号隔开, 例如"key1=value1;key2=value2"。此参数也可以不设置,即保持为空。

设置好了后,点击“Apply and Run”:

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第18张图片

4

4.开始在本地调用ModelArts平台训练模型

点击“Apply and Run”后,即可在本地开始调用云端ModelArts平台训练模型:

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第19张图片

当右面页面底下出现下面的指示语时,即说明模型训练成功:

没有出现上述指示语的话,就要结合以上步骤重新检测一下自己的步骤哪里有问题。

5

5.训练模型云端部署

当完成步骤4后,打开OBS Browser+,进入自动以本地创建的项目名称命名的路径下面的output文件夹下:

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第20张图片

选择一个最高的版本文件夹进入后,在进入该版本文件夹的model文件夹中:

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第21张图片

点击“上传”,选择代码文件“customize_service.py”和“config.json”上传文件:

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第22张图片

上传后回到Pycharm界面,点击左下页面的“ModelArts Explorer”:

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第23张图片

在跳出来的界面中,选择最高版本,点击右键:

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第24张图片

按左键确认后,出现训练模型云端部署的页面:

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第25张图片

此处可直接默认,点击“OK”:

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第26张图片

等待模型服务部署结束时,即可说明模型在云端部署成功:

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第27张图片

打开华为云ModelArts主页,在“部署上线-> “在线服务”处即可看到刚才在部署好的模型,此时显示正在运行中:

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第28张图片

6

6.在线服务测试

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

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第29张图片

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

【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型_第30张图片

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

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

测试1

测试2

测试3

测试4

测试5

至此实验全部完成。

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

[华为云ModelArts]带给我的记忆不止是人性化,智能化,普众化。更有很多吸引人的AI技术。

如您对本系列实验感兴趣,可点击下方推文链接,参加5月7日晚20—21点,由我们公众号团队成员主讲的华为云AI创新开发者沙龙

【红包+奖品福利】@所有人 | 看华为云直播,领五一节福利

与华为云技术专家和我们公众号技术成员们一起领略华为云AI魅力,让你轻松Get AI技能。更有大量现金红包华为周边产品等待着您。

风里雨里,华为与我,七号等你!

华为,中国骄傲!中华有为!

往期回顾

【玩转华为云】教你安装本地调用ModelArts平台的Pycharm工具

【玩转华为云】决战黑客松——手把手教你实现Baseline赛题

【玩转华为云】Modelarts用零代码开发FasterRCNN物体检测

【玩转华为云】Modelarts基于FasterRCNN算法实现物体检测

【玩转华为云】Modelarts基于YOLOV3算法实现物体检测

【玩转华为云】Modelarts用海量数据训练猫狗分类模型

【玩转华为云】Modelarts实现猫狗小数据集的智能标注

【玩转华为云】ModelArts用海量数据训练美食分类模型

【玩转华为云】ModelArts零代码开发美食识别分类模型

【玩转华为云】ModelArts实现不同垃圾智能分类

【玩转华为云】ModelArts实现数据集的图片标注

【玩转华为云】ModelArts实现一键目标物体检测

【玩转华为云】ModelArts实现一键行人车辆检测

武汉加油,中国加油!

欢迎各位读者在下方进行提问留言

☆ END ☆

你与世界

只差一个

公众号

扫描上方二维码,获取千元“编程学习资料”大礼包

你可能感兴趣的:(【玩转华为云】手把手教你在Pycharm中调用ModelArts平台训练和部署模型)