互联网资讯 / 人工智能 · 2023年12月18日

机器驱动的数据自动标注方法

人工智能辅助的机器驱动数据自动标注方法

这是一个用于对象检测、识别和分割任务的自动标注解决方案。

人工智能辅助的机器驱动数据自动标注方法

在本文中,我将分享我们在通过人工智能技术自动生成数据标签方面的研究与实践。

在深入探讨我们的技术之前,首先我们需要理解什么是数据标签。在机器学习中,数据标签指的是识别原始数据并赋予其一个或多个有意义的标签的过程,以提供上下文,从而使机器学习模型能够进行学习和推断。大多数先进的机器学习模型在很大程度上依赖于大量标记数据的可用性,这是监督学习中至关重要的一步。数据标签的需求遍及多个领域,包括计算机视觉、自然语言处理和语音识别。

为了帮助人类减轻繁琐的数据标注工作,我们提出了一种自动化算法解决方案,旨在显著降低人工工作量。

接下来,我将重点讨论计算机视觉任务。计算机视觉可以理解为模拟人类视觉的复杂性和对环境的理解。它涉及获取、处理、分析和理解数字图像的方法,并从现实世界中提取高维数据以生成数字或符号信息。在这个领域中,有许多不同的任务,下面的图表提供了这些任务的简要概述,以及以“香蕉”为例的上下文。

标记数据的上下文需求示例

人工智能辅助的机器驱动数据自动标注方法

为了监督模型检测对象“香蕉”,注释标签被输入到模型中,使其能够学习香蕉像素的表示并在上下文中进行定位。此上下文可用于推断未见或新的数据。实例分割任务的目标是检测对象、定位这些对象,并提供其数量、大小和形状信息。

我们采用了先进的实例分割模型“Mask R-CNN”作为框架的基础。选择Mask R-CNN是因为它能够在检测图像中的目标的同时,为每个目标生成高质量的分割掩模。在我们的COVID感染检测特定用例中,感染区域的精确定位至关重要,因此像素级检测在此情况下更为合适。

我们的方案

我们的工具流水线如下所示,主要由探测器、跟踪器、自动标注模块以及将机器生成的标签输出并保存到磁盘的I/O模块组成。

人工智能辅助的机器驱动数据自动标注方法

步骤1:目标检测和跟踪以实现像素级分类

我们使用自定义的弱训练Mask R-CNN模型来检测COVID感染,尽管标记实例相对较少。为了标记感染区域,我们利用了VIA图像标注工具。VIA是一个完全基于HTML、JavaScript和CSS的开源项目,无需任何安装或设置。该检测器用于获取定位的掩模、边界框和类标签。接着,我们应用中心跟踪算法对输入视频流中的多个感染区域进行统一跟踪和标记。

步骤2:逐帧标记数据

来自预训练检测器模型的推断用于获取边界框位置,并生成JSON元数据。使用Mask R-CNN分割帧后,相应的感兴趣区域(ROI)也被生成。此外,为每个ROI生成掩模,并在整个图像帧上进行轮廓检测,最后提取坐标。这些属性随后逐帧保存到磁盘。

示例:冠状病毒感染检测与自动标记

我们测试了这一方法,目标是为COVID感染区域生成自动计算机标签。机器生成的标签与人工注释标签的结果如下所示。可以看出,自动注释引擎生成的标签质量相当高,适合用于重新训练对象检测模型或生成更多用于不同任务的注释数据。

人工智能辅助的机器驱动数据自动标注方法

数据标注是一项复杂的任务,是监督学习管道的重要组成部分。这一过程通常需要大量手工工作。因此,我们的目标是让机器承担大部分平凡、劳动密集且耗时的工作,以减少人类的任务量。我们采用直观的方法来解决这一普遍存在的问题,从而减轻标签数量有限或需要从头开始标记大量实例的瓶颈。

注意:我们的工具目前处于Alpha测试阶段。当前设计的框架基于Mask R-CNN和VIA注释格式。我们还计划拓展原型,使其支持不同的最新检测器,如YOLO以及相应的YOLO兼容注释格式。此外,我们计划整合COCO注释格式,以便将各种图像注释集成到我们的框架中,同时提供不同的库支持,例如PyTorch、TensorFlow、Caffe等。