文档首页 > > AI工程师用户指南> 部署模型> 在线服务> 采集数据

采集数据

分享
更新时间: 2020/02/14 GMT+08:00

ModelArts平台提供的自动难例发现功能,能够在一批输入旧模型的推理数据中,通过内置规则筛选出可以进一步提升旧模型精度的数据。自动难例发现功能可以有效减小模型更新时需要的标注人力。对于旧模型的推理数据,尽可能地发掘有利于提升模型精度的部分数据。您只需要对这部分数据进一步的确认标注,然后将其加入训练数据集中,在重新训练后,就能够得到精度更高的新模型。

针对部署为在线服务的模型,调用URL或通过Console输入预测的数据,可通过数据采集功能,将此类数据采集或筛选出难例,并输出至数据集,用于后续的模型训练。

针对在线服务的数据采集,如图1所示,支持如下几个场景。

  • 数据采集:开启数据采集任务。将调用在线服务产生的数据,按配置规则进行采集并存储。
  • 同步数据至数据集:针对数据采集的结果数据,支持将此数据同步至某一数据集中,统一管理和应用。
  • 数据采集并筛选难例:开启数据采集任务,同时启用难例筛选功能,将采集的数据通过内置算法,筛选出难例。最后将难例数据以及采集的数据存储至对应数据集中,用于重新训练。
  • 反馈难例:当您调用在线服务进行预测时,可将预测不准确的图片数据,作为难例反馈,存储至对应数据集。
图1 在线服务的数据采集

前提条件

  • 训练好的模型,已部署为在线服务,且在线服务处于“运行中”状态。
  • 明确此在线服务的类型。仅“物体检测”或“图像分类”类型支持数据采集和难例筛选。

数据采集

在部署为在线服务时,您可以开启数据采集任务。或者针对已部署完成的在线服务,您可以在服务详情页面,开启数据采集任务。如果仅开启数据采集任务,仅将调用服务时产生的数据,采集存储至OBS。如需进行难例筛选,请参见数据采集并筛选难例,如需将采集后的同步至数据集,但是不需要难例筛选,请参见同步数据至数据集

  1. 登录ModelArts管理控制台,在左侧菜单栏中选择“部署上线 > 在线服务”,进入在线服务管理页面。
  2. 开启数据采集任务。
    • 在部署为在线服务时,即“部署”页面,填写部署服务相关参数时,开启数据采集功能。
      图2 部署页面开启数据采集功能
    • 针对已部署完成的在线服务,单击服务名称进入服务详情页面,在数据采集参数中,单击编辑按钮,启动数据采集任务。
      图3 详情页面开启数据采集功能
  3. 填写数据采集任务的相关参数,详细参数说明请参见表1
    表1 数据采集参数说明

    参数

    说明

    采集规则

    支持“全量采集”“按置信度”采集。目前仅支持“全量采集”模式。

    采集输出

    采集数据后,数据存储的路径。仅支持OBS目录。请选择一个已有目录或者新建一个OBS目录。

    保存周期

    支持“一天”“一周”“永久”“自定义”

    • “一天”:表示仅采集服务运行一天内的数据。
    • “一周”:表示仅采集服务运行一周内的数据。
    • “永久”:表示服务启动后的所有数据。
    • “自定义”:支持设置为X天。表示采集服务运行X天内的数据。
    图4 数据采集的配置

    数据采集启动后,当调用此服务进行预测(通过Console预测或者通过URL接口预测)时,上传的数据将按照设置的规则,被采集至对应OBS目录中。

同步数据至数据集

针对开启了数据采集任务的在线服务,支持将采集的数据同步至数据集。此操作并不会执行难例筛选,仅将采集的数据存储至数据集。可以存储至已有数据集,也可创建一个新数据集用于存储数据。

  1. 开启数据采集任务。详细操作请参见数据采集

    当数据采集任务未采集到数据时,即用户未调用接口使用预测功能,无法执行同步数据至数据集的操作。

  2. 单击服务名称进入服务详情页面,选择“数据采集”页签。或者在服务管理列表中,单击“操作”列的“更多 > 数据采集”
    图5 进入数据采集页面
  3. “数据采集”页签下,单击“同步数据至数据集”
  4. 在弹出的对话框中,勾选“标注类型”,然后“选择数据集”,单击“确定”,将采集数据同步至数据集的“未标注”页签下。

    同步的数据为数据采集任务配置规则下,系统采集到的数据。当采集数据为空时,将无法执行同步数据至数据集的操作。

    图6 同步数据至数据集

数据采集并筛选难例

如果仅开启数据采集任务,并不会启动自动识别难例的操作。您需要同时开启难例筛选任务,可将采集的数据进行难例筛选,同时将筛选结果存储至对应数据集中。

  1. 开启数据采集任务。详细操作请参见数据采集

    在开启难例筛选功能前,必须先开启数据采集任务。当此在线服务,之前开启过数据采集任务,且对应OBS路径存储数据仍在,可仅开启难例筛选功能,此时难例筛选仅针对OBS路径中存储的数据进行筛选。

  2. 开启难例筛选任务。在配置数据采集任务的同一个页面,您可以同时开启难例筛选任务。相关参数填写请参见表2
    表2 难例筛选参数说明

    参数

    说明

    训练模型的Manifest文件

    将某一模型部署为在线服务,此模型是通过某一数据集训练而来,其过程如下所示。针对此在线服务对应的训练数据集,您可以在难例筛选时,导入此数据集的Manifest文件,更容易筛选出模型深层次的数据问题。

    (训练脚本+训练数据集)-> 训练得到模型 -> 将模型部署为在线服务

    此参数为可选项,但为了提升精度,推荐您导入相应数据集。当前仅支持导入此数据集的Manifest文件格式。针对在ModelArts中管理的数据集,您可以通过发布数据集的操作,得到此数据集的Manifest文件。如果您的数据集未在ModelArts中管理,请参考Manifest的文件规范

    模型类型

    模型的应用类型,目前仅支持“图像分类”“物体检测”

    筛选规则

    支持“按时长”筛选或“按样本量”筛选。

    • “按时长”:指按指定时长定期对OBS目录中存储的未筛选数据进行筛选。支持“1小时”“1天”“2天”“自定义”“自定义”仅支持设置为XX小时。
      说明:

      “按时长”筛选难例时,时长设置需小于数据采集的“保存周期”。例如,当数据采集的“保存周期”“一天”,那么“筛选规则”中的时长必须小于等于1天。如果您设置的时长大于保存周期,但实际系统筛选的对象仅为保存周期内的数据。

    • “按样本量”:当采集数据满样本量时执行一次难例筛选。支持“100个”“500个”“1000个”“自定义”。如果数据采集周期内,样本量小于您设置的筛选规则,那么难例筛选将一直不启用。例如,当数据采集的“保存周期”设置为1天,而1天内此在线服务的数据仅有100张数据,而筛选规则设置为按500个样本量进行筛选,那么此任务将一直不启用。OBS数据会根据保存周期,删除大于1天的数据,此时样本量不会增长,无法达到筛选规则设置的条件。因此,在设置规则时,请务必评估服务的调用量,根据实际情况设置样本量数据。

    难例输出

    将筛选出的难例数据保存至某一数据集。支持已有数据集或创建一个新的数据集。

    必须选择一个对应类型的数据集,例如模型类型为“图像分类”,其筛选的难例输出的数据集,也必须为“图像分类”类型。

    图7 开启难例筛选功能
  3. 当数据采集及难例筛选任务配置完成后,系统将根据您设置的规则,采集数据并筛选难例。您可以在在线服务的“数据采集”页签下,查看“任务状态”。当任务完成后,其“任务状态”将显示为“数据集导入完成”,您可以通过数据集链接,快速跳转至对应的数据集。采集的数据以及筛选出的难例,将存储在数据集的“待确认”页签下。
    图8 任务状态
    图9 数据采集以及难例筛选结果

反馈难例

在ModelArts管理控制台中,当您使用在线服务进行预测时,如果预测结果不准确时,您可以在预测页面直接将此难例反馈至对应数据集。

  1. 登录ModelArts管理控制台,在左侧菜单栏中选择“部署上线 > 在线服务”,单击对应服务名称进入服务详情页面。
  2. 单击“预测”页签,上传您用于预测的图片,然后单击“预测”
  3. 当预测结果不准确时,单击“难例反馈”
    图10 在线服务难例反馈
  4. 在弹出的对话框中,勾选“标注类型”,然后“选择数据集”,单击“确定”,将此难例数据反馈至此数据集的“待确认”页签。用于提升进一步的模型训练精度。
    图11 难例反馈
分享:

    相关文档

    相关产品

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

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

反馈提交失败,请稍后再试!

*必选

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

字符长度不能超过200

提交反馈 取消

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

跳转到云社区