更新时间:2024-11-22 GMT+08:00

入门案例:快速创建一个物体检测的数据集

本节以准备训练物体检测模型的数据为例,介绍如何针对样例数据,进行数据分析、数据标注等操作,完成数据准备工作。在实际业务开发过程中,可以根据业务需求选择数据管理的一种或多种功能完成数据准备。此次操作分为以下流程:

准备工作

在使用ModelArts数据管理的功能前,需要先完成以下准备工作。

用户在使用数据管理的过程中,ModelArts需要访问用户的OBS等依赖服务,需要用户进行在“权限管理”页面中进行委托授权。具体操作参考使用委托授权(推荐)

创建数据集

本示例使用OBS中的数据作为数据集的输入目录创建数据集。参考如下操作创建一个物体检测类型的数据集,并将数据导入到数据集中。

  1. 登录ModelArts管理控制台,在左侧菜单栏中选择数据管理 > 数据集,进入“数据集”管理页面。
  2. 单击“创建数据集”,进入“创建数据集”页面,根据数据类型以及数据标注要求,选择创建不同类型的数据集。

    1. 填写数据集基本信息,数据集的“名称”和“描述”。
    2. 选择“标注场景”和“标注类型”,本案例中分别选择“图片”和“物体检测”。
      图1 数据集标注场景和标注类型
    3. 选择OBS中的数据目录作为“数据集输入位置”,选择不同的OBS目录作为“数据集输出位置”
      图2 数据集的输入位置和输出位置
    4. 参数填写无误后,单击页面右下角“创建”,即可完成数据集的创建。

数据分析

数据集创建完成后,可以基于图片各项特征,如模糊度、亮度等进行分析,帮助用户更好的分析数据集的数据质量,判断数据集是否满足自己的算法和模型要求。

  1. 创建特征分析任务
    1. 在执行特征分析前,需先发布一个数据集版本。在“数据集概览”页单击右上角的“发布”,为数据集发布一个新版本。
    2. 版本发布完成后,进入数据集概览页。选择“数据特征”页签,单击“特征分析”,在弹窗中选择刚才发布的数据集版本,并单击“确定”,启动特征分析任务。
      图3 启动特征分析
    3. 查看任务进度

      任务执行过程中,可以单击“任务历史”,查看任务进度。当任务状态变为“成功”时,表示任务执行完成。

      图4 特征分析任务进度
  2. 查看特征分析结果

    特征分析任务执行完成后,可以在“数据特征”页签下,选择“数据集版本”、“类型”和“数据特征指标”,页面将自动呈现您选择对应版本及其指标数据,您可以根据呈现的图表了解数据分布情况,帮助您更好的理解您的数据。

    • “版本选择”:根据实际情况选择已执行过特征任务的版本,可以选多个进行对比,也可以只选择一个。
    • “类型”:根据需要分析的类型选择。支持“all”、“train”、“eval”和“inference”。分别表示所有、训练、评估和推理类型。
    • “数据特征指标”:选择您需要展示的指标。详细指标解释,可参见特征分析指标列表
    图5 查看特征分析结果

    在特征分析结果中,例如图片亮度指标,数据分布中,分布不均匀,缺少某一种亮度的图片,而此指标对模型训练非常关键。此时可选择增加对应亮度的图片,让数据更均衡,为后续模型构建做准备。

数据标注

  • 人工标注
    1. 在“未标注”页签图片列表中,单击图片,自动跳转到标注页面。
    2. 在标注页面的工具栏中选择合适的标注工具,本示例使用矩形框进行标注。
      图6 标注工具
    3. 使用标注工具选中目标区域,在弹出的标签文本框中,直接输入新的标签名。如果已存在标签,从下拉列表中选择已有的标签。单击“添加”完成标注。
      图7 添加物体检测标签
    4. 单击页面上方“返回数据标注预览”查看标注信息,在弹框中单击“确定”保存当前标注并离开标注页面。选中的图片被自动移动至“已标注”页签,且在“未标注”和“全部”页签中,标签的信息也将随着标注步骤进行更新,如增加的标签名称、标签对应的图片数量。
  • 智能标注
    通过人工标注完成少量数据标注后,可以通过智能标注对剩下的数据进行自动标注,提高标注的效率。
    1. 在数据集详情页面,单击右上角“启动智能标注”。
    2. 在“启动智能标注”窗口中,填写如下参数,然后单击“提交”。
      • 智能标注类型:主动学习
      • 算法类型:快速型

      其他参数采用默认值。

      图8 启动智能标注任务
    3. 查看智能标注任务进度

      智能标注任务启动后,可以在“待确认”页签下查看智能标注任务进度。当任务完成后,即可在“待确认”页签下查看自动标注好的数据。

      图9 查看智能标注任务进度
    4. 确认智能标注结果

      在智能标注任务完成后,在“待确认”页签下,单击具体图片进入标注详情页面,可以查看或修改智能标注的结果。

      如果智能标注的数据无误,可单击右侧的“确认标注”完成标注,如果标注信息有误,可直接删除错误标注框,然后重新标注,以纠正标注信息。针对物体检测任务,需一张一张确认。确保所有图片已完成确认,然后执行下一步操作。

      图10 确认智能标注结果

数据发布

ModelArts训练管理模块支持通过ModelArts数据集或者OBS目录中的文件创建训练作业。如果选择通过数据集作为训练任务的数据源,则需要指定数据集及特定的版本。因此,用户需要为准备好的数据发布一个版本,具体操作参考发布ModelArts数据集中的数据版本

为了便于后期的模型构建和开发,对同一数据源来说,将其不同时间对数据的处理和标注按照版本来进行区分,按照需求选择指定的版本使用。

数据导出

ModelArts训练管理模块支持通过ModelArts数据集或者OBS目录中的文件创建训练作业。如果选择通过OBS目录的方式创建训练任务,用户需要将数据集中准备好的数据导出到OBS中。

  1. 导出数据到OBS
    1. 在数据集详情页面中,选中需要导出的数据或筛选出需要导出的数据,然后单击右上角“导出”。
    2. 导出方式选择“OBS”,填写相关信息,然后单击“确定”,开始执行导出操作。

      “保存路径”:即导出数据存储的路径。建议不要将数据存储至当前数据集所在的输入路径或输出路径。

      图11 导出至OBS
    3. 数据导出成功后,您可以前往您设置的保存路径,查看到存储的数据。
  2. 查看任务历史

    当您导出数据后,可以通过任务历史查看导出任务明细。

    1. 在数据集详情页面中,单击右上角“任务历史 ”。
    2. 在弹出的“任务历史”对话框中,可以查看该数据集之前的导出任务历史。包括“任务ID”、“创建时间”、“导出方式”、“导出路径”、“导出样本总数”和“导出状态”。
      图12 导出任务历史