3.1 找云宝(使用自动学习实现物体检测应用)
针对业务开发者,ModelArts提供了自动学习功能,无需关注模型开发、参数调整等开 发细节,仅需三步(数据标注、自动训练、部署上线),即可完成一个AI开发项目。
本章节提供了一个“找云宝”样例(“云宝”是华为云的吉祥物),帮助您快速熟悉 ModelArts自动学习的使用过程。此样例为“物体检测”类别项目,通过预置的云宝图 像数据集,自动训练并生成检测模型,同时将生成的模型部署为在线服务。部署完成 后,用户可通过在线服务识别输入图片是否包含云宝。
开始使用样例前,请仔细阅读准备工作罗列的要求,提前完成准备工作。使用自动学 习功能完成模型构建的步骤如下所示:
●
步骤1:准备数据
●
步骤2:创建物体检测项目
●
步骤3:数据标注
●
步骤4:自动训练,生成模型
●
步骤5:将模型部署上线为在线服务
●
步骤6:测试服务
准备工作
● 已注册华为云帐号,且在使用ModelArts前检查帐号状态,帐号不能处于欠费或冻 结状态。
● 当前帐号已完成访问授权的配置。如未完成,请参考使用委托授权。针对之前使
最佳实践 3 自动学习
在ModelArts管理控制台,进入“数据管理 > 数据集”页面,单击“服务授
1. 单击数据集下载链接,将“Yunbao-Data-Custom”数据集下载至本地。
2. 在本地,将“Yunbao-Data-Custom.zip”压缩包解压。例如,解压至本地
“Yunbao-Data-Custom”文件夹下。
3. 参考上传文件,使用批量上传方式将“Yunbao-Data-Custom”文件夹下的所有 文件上传至“test-modelarts/dataset-yunbao”OBS路径下。
获取的数据集分为2个子目录,分别为“eval”和“train”。“train”存储的数据 用于模型训练,“eval”存储的数据可用于模型的预测。
步骤 2:创建物体检测项目
1. 在ModelArts管理控制台,单击左侧导航栏“自动学习”。
2. 在“物体检测”方框中单击“创建项目”,在“创建物体检测项目”页面中,填
图3-1 创建物体检测项目
3. 单击“创建项目”,完成物体检测项目创建。项目创建成功后,页面自动跳转至
“自动学习 > 数据标注”页面,并自动执行数据源同步操作。
步骤 3:数据标注
数据标注,针对物体检测项目,即在已有数据集图像中,标注出物体位置,并为其打 上标签。标注好的数据用于模型训练。云宝数据集中,已标注部分数据,还有部分数 据未标注,您可以选择未标注数据进行试用。
自动学习项目创建时,会自动执行数据源同步操作。由于数据源同步需要一定时间,
如果出现同步失败,可单击“同步数据源”手动执行。
1. 在“自动学习 > 数据标注”页面单击“未标注”页签,此页面展示所有未标注的 图片数据。单击任意一张图片,进入图片标注界面。
2. 用鼠标框选图片中的云宝所在区域,然后在弹出的对话框中输入标签名称,例如 此示例中的“yunbao”,按“Enter”键完成此图片的添加。标注完成后,左侧图 片目录中此图片的状态将显示为“已标注”。
您可以在下方图片目录中,选择其他图片,重复上述操作继续进行图片标注。如 果一张图片有多个云宝,您可以标注多处。建议将数据集中所有图片都标注完 成,这样能得到一个效果比较好的模型。
最佳实践 3 自动学习
图3-2 物体检测图片标注
3. 当图片目录中所有图片都完成标注后,单击左上角“项目名称”,在弹出的对话 框中单击“确定”保存标注信息,页面进入数据标注页面。您可以在“已标注”
页签下查看已完成标注的图片,并通过右侧的标签信息,了解当前已完成的标签 名称和标签数量。
步骤 4:自动训练,生成模型
1. 完成数据标注后,在“数据标注”页面,单击右上角的“开始训练”,然后在弹 出的“训练设置”对话框中配置相关参数,参考图3-3填写相关参数。
最佳实践 3 自动学习
图3-3 设置训练参数
2. 单击“下一步”进入配置页,确认规格后单击“提交”开始模型的自动训练。训 练时间相对较长,建议您耐心等待。如果关闭或退出此页面,系统仍然在执行训 练操作。
训练完成后,您可以在界面中查看训练详情,如“准确率”、“评估结果”、
“训练参数”、“分类统计表”等。
图3-4 开始模型训练
步骤 5:将模型部署上线为在线服务
1. 在“模型训练”页签中,待训练状态变为“已完成”,单击“版本管理”区域中 的“部署”。
图3-5 开始部署上线
最佳实践 3 自动学习
2. 在弹出的部署设置对话框中,选择“计算节点规格”,设置“自动停止”功能,
单击“确定”开始将物体检测模型部署上线为在线服务。
如果选择免费规格,则不需要设置“自动停止”功能,1小时之后自动停止。
图3-6 部署设置
3. 启动部署上线后,系统自动跳转至部署上线页面。此页面将呈现模型部署上线的 进度和状态。
部署上线将耗费较多时间,请您耐心等待。部署完成后,版本管理区域的状态将 变更为“运行中”。
图3-7 部署成功
步骤 6:测试服务
模型部署完成后,您可添加图片进行测试。
1. 在“部署上线”界面,选择状态为“运行中”的服务版本,在“服务测试”区域 单击“上传”。
图3-8 上传图片
最佳实践 3 自动学习
2. 从本地环境选择一张图片,此图片中包含云宝。然后单击“预测”进行测试。
预测完成后,右侧“预测结果”区域输出标签名称“yunbao”,以及位置坐标和 检测的评分。预测结果中,“detection_boxes”表示物体所在位置坐标,
“detection_scores”表示检测评分,表示坐标内图像是云宝的概览评分。
如模型准确率不满足预期,可在“数据标注”步骤中添加图片并进行标注,重新 进行模型训练及部署上线。
说明
由于“运行中”的在线服务将持续耗费资源,如果不需再使用此在线服务,建议在版本管 理区域,单击“停止”,即可停止在线服务的部署,避免产生不必要的费用。如果需要继 续使用此云宝检测的服务,可单击“启用”恢复。
图3-9 测试结果
3.2 银行存款预测(使用自动学习实现预测分析)
银行中常见一种业务:根据客户特征(年龄、工作类型、婚姻状况、文化程度、是否 有房贷和是否有个人贷款),预测客户是否愿意办理定期存款业务。
现在您可以使用ModelArts平台上的自动学习功能,预测某个客户是否会办理存款业 务。自动学习功能的使用流程如下所示:
1.
准备数据:下载数据集并上传至华为云OBS中。
2.
创建预测分析项目:基于已有的数据集,创建预测分析项目。
3.
训练模型:预览数据并选择训练目标,然后启动模型训练。
4.
部署模型:将训练好的模型部署为在线服务,并测试预测结果。
准备数据
最佳实践 3 自动学习
表3-1 数据源的具体字段及意义
字段名 含义 类型 描述
attr_1 年龄 Int 表示客户的年龄。
attr_2 职业 String 表示客户所从事的职业。
attr_3 婚姻情况 String 表示客户是否结婚或已离异。
attr_4 教育情况 String 表示客户受教育的程度。
attr_5 房产情况 String 表示客户名下是否有房产。
attr_6 贷款情况 String 表示客户名下是否有贷款。
attr_7 存款情况 String 表示客户名下是否有存款。
表3-2 数据集样本数据
attr_1 attr_2 attr_3 attr_4 attr_5 attr_6 attr_7 31
blue-collar married secondar
y yes no no
41 manage
ment married tertiary yes yes no 38 technicia
n single secondar
y yes no no
39 technicia
n single secondar
y yes no yes
39
blue-collar married secondar
y yes no no
39 services single unknown yes no no
1. 从gitee下载ModelArts-Lab工程,并在“ModelArts-Lab”工程中的
“\ModelArts-Lab-master\official_examples
\Using_ModelArts_to_Create_a_Bank_Marketing_Application\data”目录下获 取训练数据文件“train.csv”。
2. 将“train.csv”文件上传至OBS,例如“test-modelarts/bank-marketing”。
OBS上传文件的操作指导,请参见上传文件。
创建预测分析项目
1. 在ModelArts管理控制台,在左侧导航栏中选择“自动学习”。
最佳实践 3 自动学习
图3-10 进入自动学习
2. 在“自动学习”页面,单击“预测分析”区域的“创建项目”。
3. 进入“创建预测分析项目”页面,然后设置项目“名称”,并选择“训练数据”
所在的OBS路径,本示例中,数据集路径为“test-modelarts/bank-marketing/
train.csv”。最后,单击“创建项目”完成操作。系统自动跳转至“自动学习 >
数据标注”页面,如图3-11所示。
图3-11 创建预测分析项目
训练模型
1. 在“自动学习 > 数据标注”页面中,预览数据并选择训练目标。此处训练目标是 客户是否会办理存款(即“attr_7”),该列目标结果是“离散值”。训练目标选 择完成后,单击“训练”。
最佳实践 3 自动学习
图3-12 选择训练目标
2. 在弹出的“训练设置”对话框中,选择训练使用的“计算规格”,单击“下一 步”进入配置页,确认规格后单击“提交”开始模型训练。
训练时间相对较长,建议您耐心等待。如果关闭或退出此页面,系统仍然在执行 训练操作。
图3-13 训练设置
3. 在模型训练页面中,左侧的训练作业状态变为“已完成”时,表示训练作业已结 束,且右侧“训练详情”将展现此训练作业相关的详细信息。
图3-14 训练结束
部署模型
1. 在“模型训练”页面,在“版本管理”区域,单击“部署”,系统开始部署服务 并自动跳转至“部署上线”页面。
2. 在“版本管理”区域,当状态变为“运行中”时,表示服务已部署完成。您可以 在预测区域,测试服务。
测试代码如下所示,如图3-15所示预测结果为“"predict": "no"”,表示此用户会 不办理存款。
{ "data":
{ "count": 1, "req_data":
最佳实践 3 自动学习
[ 开发者社区AI Gallery中的数据集资产,让零AI基础的开发者完成“图像分类”的AI模 型的训练和部署。依据开发者提供的标注数据及选择的场景,无需任何代码开发,自
● 软件要求:Chrome浏览器
● 需要的知识点:熟悉电脑常规操作
准备工作
● 注册华为云帐号、实名认证
–
注册华为云帐号
–
进行实名认证
▪
个人用户推荐使用人脸识别认证。▪
若无中国大陆身份证,仅可使用其他证件认证,并需等待三个工作日审 核。● 配置委托访问授权
ModelArts使用过程中涉及到OBS、SWR、IEF等服务交互,首次使用ModelArts 需要用户配置委托授权,允许访问这些依赖服务。
a. 使用华为云帐号登录ModelArts管理控制台,在左侧导航栏单击“全局配 置”,进入“全局配置”页面,单击“访问授权”。
b. 在弹出的“访问授权”窗口中,“授权方式”选择“使用委托”,选择需要 授权的“用户名”及其对应的“委托”(默认modelarts_agency即可),并 勾选“我已经详细阅读并同意《ModelArts服务声明》”,然后单击“同意授 权”。
图3-16 配置委托访问授权
c. 完成配置后,在ModelArts控制台的全局配置列表,可查看到此帐号的委托配 置信息。
图3-17 查看委托配置信息
● 入驻AI Gallery
首次在AI Gallery中使用AI资产,需要先完成入驻AI Gallery。
最佳实践 3 自动学习
a. 进入AI Gallery,在“资产集市>算法”页面上单击“发布”按钮,将跳转至
“欢迎入驻AI Gallery”页面。单击“入驻”跳转至“欢迎入驻AI Gallery”
页面。
页面。