文档首页 > > 最佳实践> 预置算法> 使用AI市场的预置算法训练模型

使用AI市场的预置算法训练模型

分享
更新时间:2020/11/17 GMT+08:00

ModelArts在AI市场中提供了适用于“物体检测”“图像分类”“文本分类”等场景的预置算法,官方提供的算法列表及其详细描述,请参见《ModelArts AI市场用户指南》。

如下操作步骤,以“ResNet_v1_50”为例,指导如何从AI市场订阅算法,然后使用算法创建训练模型,将所得的模型部署为在线服务。其他算法操作步骤类似,因此不再赘述,可参考“ResNet_v1_50”算法操作。

  1. 数据准备
  2. 订阅算法
  3. 使用订阅算法创建训练作业
  4. 导入模型
  5. 部署为在线服务(CPU)

数据准备

  1. 获取样例数据集“Flowers-Data-Set”数据集中包含了花卉图片及其标注信息。由于数据集中数据较多,推荐使用OBS Browser+工具上传文件
  2. 登录ModelArts管理控制台,在左侧菜单栏中选择“数据管理 > 数据集”
  3. 在数据集管理页面,单击“创建数据集”,创建一个“图像分类”类型的数据集。
    其中,“数据集输入位置”,选择步骤1中数据存储的OBS路径。“数据集输出位置”,请务必选择一个空目录存储,且此目录不能是“数据集输入位置”对应目录的子目录。
    图1 创建数据集
  4. 参数填写完成后,单击右下角的“创建”,完成数据集的创建。此时页面将自动跳转至数据集列表中。
  5. 在数据集列表页面,单击数据集名称,进入数据集概览页,然后单击右上角的“开始标注”,进入数据集详情页。
  6. 在数据集详情页面中,等待数据同步至ModelArts中。由于数据集已完成标注,无需重新标注,只需等待数据同步即可。由于数据集中数据较多,数据同步需要花费2分钟左右,请耐心等待。

    “已标注”页签下呈现所有上传数据时,表示数据已完成同步。

  7. 单击左上角“返回数据集概览”,然后在数据集概览页中,单击右上角的“发布”
  8. 在弹出的对话框中,填写“版本名称”“版本格式”,可使用默认值。“训练验证比例”建议设置为“0.8”。然后单击“确定”完成发布。

    验证集不参与训练,用于训练过程中评估模型的好坏,验证集比例太大,会导致训练集变少,影响训练效果。验证集太少,可能导致验证的精度不准确。针对此示例,推荐使用0.8比例进行切分。

    图2 发布数据集版本
  9. 在数据集列表页面,等待数据集发布完成。发布过程中的数据集,其名称前面有个运行标记。当数据集发布结束后,其操作列的发布按钮将呈现为蓝色可点击状态。

    请耐心等待,必须等数据集发布成功后,才可以执行下一步训练模型的操作。

订阅算法

目前“ResNet_v1_50”算法发布在AI市场中。您可以前往AI市场,订阅此模型,然后同步至ModelArts中。

  1. 在ModelArts管理控制台中,在左侧菜单栏中选择“AI市场”。选择进入新版AI市场。
  2. 在AI市场中,在搜索框中输入“ResNet_v1_50”,查找对应的算法。
  3. 单击算法名称进入算法详情页,单击右侧的“订阅”,根据界面提示完成算法订阅。

    此算法由ModelArts官方提供,目前免费开放。订阅算法完成后,页面的“订阅”按钮显示为“已订阅”

  4. 单击商品详情页的“前往控制台”,此时弹出“选择云服务区域”对话框,选择ModelArts对应的区域,然后再单击“确定”

    页面将自动跳转至ModelArts的“算法管理>市场订阅”中同步对应的算法。

    图3 前往控制台
    图4 选择云服务区域
  5. 在ModelArts管理控制台的算法管理页面,算法将自动同步至ModelArts中。

    未同步的算法,无法直接用于创建训练作业,因此从AI市场订阅完成后,需在ModelArts管理控制台执行同步操作。同步成功后,下方界面中的“创建训练作业”按钮可用,且状态变更为“就绪”

    图5 同步算法

使用订阅算法创建训练作业

算法订阅成功后,算法将呈现在“算法管理>市场订阅”中,您可以使用订阅的“ResNet_v1_50”算法创建训练作业,获得模型。

  1. 进入“算法管理>市场订阅”页面,选择订阅的“ResNet_v1_50”算法,单击左侧的小三角展开算法,在版本列表中,单击“创建训练作业”
    图6 创建训练作业
  2. 在创建训练作业页面,参考如下说明填写关键参数。
    • “算法来源”:系统默认选择订阅的算法,请勿随意修改。
    • “数据来源”:选择数据集,然后从下拉框中选择数据准备中创建好的数据集。数据集一定要选择切分训练集比例的版本,否则将会导致训练失败。
    • “训练输出”:选择一个OBS空目录存储训练输出的模型。
    • “调优参数”:建议采用默认值。如需进行调优,可参考运行参数说明
    • “资源池”:建议选择GPU规格的资源池,训练效率会更高一些。
      图7 训练作业参数
      图8 资源池设置
  3. 参数填写完成后,单击“下一步”,根据界面提示完成训练作业创建。
  4. 进入“训练管理>训练作业”页面,等待训练作业完成。

    训练作业运行需要几分钟时间,请耐心等待。根据经验,选择样例数据集,使用GPU资源运行,预计5分钟左右可完成。

    当训练作业的状态变更为“运行成功”时,表示已运行结束。您可以单击训练作业名称,进入详情页面,了解训练作业的“配置信息”、“日志”、“资源占用情况”和“评估结果”等信息。您也可以在配置的“训练输出位置”对应的OBS目录下获得训练生成的模型。

导入模型

  1. 在ModelArts管理控制台,选择“模型管理 > 模型”
  2. 在模型列表页面,单击“导入”。进入导入模型页面,参考如下说明填写关键参数。
    “元模型来源”:选择“从训练中选择”。然后在“选择训练作业”右侧下拉框中选择上一步创建的训练作业。
    图9 从训练中选择模型
  3. 模型导入参数填写完成后,单击“立即创建”。页面自动跳转至模型列表页面,等待模型导入结果。

    当模型的状态变为“正常”时,表示模型导入成功。

    图10 模型导入成功

部署为在线服务(CPU)

模型导入成功后,可将此模型部署为在线服务,在部署时可使用CPU资源。

本文仅描述了部署为在线服务的操作指导,针对批量服务的部署,其操作步骤类似,不再赘述。详细批量服务的部署指导,可参见ModelArts用户指南

  1. 在模型列表中,单击操作列的“部署 > 在线服务”
    图11 部署模型
  2. 在部署页面,参考如下说明填写关键参数。

    “资源池”:选择“公共资源池”

    “选择模型及配置”“模型”“版本”会自动选择前面导入的模型。“计算节点规格”,在下拉框中选择CPU或GPU,本示例选择CPU资源进行部署。计算节点个数,需设置为“1”,目前仅支持单机部署,只能设置为“1”,不可修改。

    其他参数可使用默认值。

    如果需要使用GPU资源部署上线,需要进入模型所在位置,即使用订阅算法创建训练作业步骤生成的“训练输出”路径,进入“model”目录,打开并编辑“config.json”文件,将“runtime”的配置修改为ModelArts支持的GPU规格,例如"runtime": "tf1.13-python3.6-gpu"。修改完成后,重新执行导入模型部署为在线服务的操作。

    图12 部署模型
  3. 参数设置完成后,单击“下一步”,根据界面提示,完成在线服务的部署。

    您可以进入“在线服务列表”页面,等待服务部署结束,当服务状态变为运行中时,表示服务部署成功。

    图13 运行中的服务
  4. 在线服务部署完成后,您可以单击服务名称进入服务详情页。
    • 访问服务:了解调用指南,获取API接口地址,可通过postman或使用curl命令发送请求,访问在线服务
    • 预测:单击“预测”页签,上传一个测试图片,进行预测。
    更多操作,可参见ModelArts用户指南
    图14 调用指南
    图15 预测
分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!非常感谢您的反馈,我们会继续努力做到更好!
反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

智能客服提问云社区提问