机器学习中的数据标注

2025 年 6 月 21 日 | 8 分钟阅读

数据标注是识别原始数据并为其添加合适的标签或标记的过程,以指定数据的含义,从而使机器学习模型能够做出准确的预测。在本主题中,我们将详细了解数据标注,包括数据标注在机器学习中的重要性、不同方法、数据标注的工作原理等。不过,在开始之前,让我们先了解一下什么是标签,以及它们与机器学习中的特征有何不同。

Data Labelling in Machine Learning

机器学习中的标签和特征

机器学习中的标签

标签也称为标记(tags),用于为数据片段提供识别信息,并告知有关该元素的一些信息。标签也称为预测的最终输出。例如,如下图像所示,我们有猫和狗等标签。对于音频,标签可以是所说的词语。这组标签可以让机器学习模型学习数据集,因为当我们使用监督技术训练模型时,我们会向模型提供一个已标注的数据集。有了这个已标注的训练数据集,机器学习模型在给定测试数据集时就能轻松预测出准确的结果。

Data Labelling in Machine Learning

机器学习中的特征

特征是作为机器学习系统输入的独立变量。对于机器学习数据集,一列可以被理解为一个特征。机器学习模型使用这些特征进行预测。此外,我们还可以通过特征工程方法从旧特征中获取新特征。

我们可以通过一个简单的动物图像数据集的例子来理解两者之间的区别。所以,身高、体重、颜色等是特征。而这是一个猫或狗,这些是标签。

现在让我们来理解主要主题,即数据标注

什么是数据标注?

如果我们向机器学习模型输入大量原始数据并期望它从中学习,那是不够的。因为它会给出不准确的结果,所以有必要对数据进行预处理,而数据标注是数据预处理阶段的一部分。在数据标注过程中,我们为原始数据(可能包括图像、音频、文本)提供一些识别信息,并为其添加一些标签。这些标签告诉数据属于哪个对象类别,这有助于机器学习模型从这些数据中学习并做出最准确的预测。

因此,我们可以将其定义为:“数据标注是一个为不同类型的数据集添加意义的过程,以便能够正确地用于训练机器学习模型。数据标注也称为数据注解(尽管两者之间存在细微差别)。”

数据标注对于监督学习是必需的,因为在监督学习技术中,我们将已标注的数据集输入模型。

已标注数据与未标注数据

在数据标注中,数据被标注,但在机器学习中,已标注和未标注数据都被使用。那么它们之间有什么区别呢?

  • 已标注数据是具有某些预定义标签(如名称、类型或数字)的数据。例如,一张图片包含苹果或香蕉。同时,未标注数据不包含任何标签或指定名称。
  • 已标注数据用于监督学习技术,而未标注数据用于无监督学习。
  • 已标注数据难以获取,而未标注数据易于获取。

注意:半监督学习使用混合数据,即已标注和未标注数据来训练模型,从而降低了获取已标注数据的难度。

数据标注是如何工作的?

如今,大多数机器学习模型使用监督学习技术,该技术将输入变量映射到输出变量并进行预测。对于监督学习,我们需要已标注的数据集来训练模型,以便它能够做出准确的预测。数据标注始于一个“人机协作”HITL(Human-in-the-loop)参与的过程,在该过程中,要求人类对给定的未标注数据做出判断。例如,可能会要求人工标注者为图像数据集打标签,其中“图像是否包含猫”为真。

Data Labelling in Machine Learning

通过这些人工提供的标签,机器学习模型可以从数据和底层模式中学习,这个过程称为模型训练。然后,训练好的模型就可以用来预测新数据/测试数据。

数据标注方法

数据标注是构建高性能机器学习模型的重要一步。虽然数据标注过程看起来简单易懂,但实现起来却有点棘手。因此,为了采用数据标注技术,公司应考虑多种因素来找到最佳的标注方法。以下是一些常见的数据标注方法:

  • 内部/自建数据标注
    内部数据标注由组织的数据科学家或数据工程师执行。这是最高质量的标注方法之一,具有更高的准确性和简化的跟踪。然而,这是一个耗时的过程,适用于资源丰富的公司。
  • 合成标注
    在这种方法中,通过现有数据集生成新的项目数据,从而提高了数据质量和时间效率。然而,这种方法需要高计算能力和资源,这会增加总体成本。
  • 程序化标注
    程序化标注是一个自动化过程,可减少时间和人工标注的需求,因为它使用脚本。然而,除了自动化过程,它还需要HITL作为QA过程的一部分来检查可能的技术问题。
  • 外包
    外包是另一种流行的数据标注方法,其中组建一个外部标注团队,其中大多数是自由职业者。对于高级临时项目,这种方法可能是最佳选择;然而,开发和管理以自由职业者为导向的工作流程可能是一个耗时的过程。尽管有 Upwork 等各种自由职业者平台,可以提供完整的候选人信息以简化选择过程,但聘请托管数据标注团队可以提供预先评估的员工和预先构建的数据标注工具。
  • 众包
    众包是最快、最具成本效益的方法之一,因为它具有微任务能力和基于 Web 的分发。它从注册在众包平台上的大量自由职业者那里获取已标注的数据。需要标注的数据集大多包含植物、动物、自然环境等图像数据,这些数据不需要额外的专业知识即可进行标注。众包数据标注的一个流行例子是 Recaptcha。

数据标注的益处和挑战

作为机器学习的一个重要概念,数据标注在带来不同益处的同时,也存在一些挑战。它可以实现精确预测,但也是一种昂贵的方法。以下是数据标注的一些益处和挑战:

好处

  • 精确预测:通过准确的数据标注,可以使用更高质量的数据训练模型,从而生成预期的输出。否则,如果我们向模型提供质量差的数据,它将产生不准确的结果。
  • 更好的数据可用性:数据标注技术使数据在模型中更易于使用。例如,分类变量可以重新分类为二元变量,使其对模型更易于消费。因此,通过数据聚合,可以通过减少变量数量来优化模型。此外,高质量的数据始终是首要任务,无论是用于构建计算机视觉模型(例如,在对象周围添加边界框)还是 NLP 模型(例如,对文本进行分类以分析社会情感)。

挑战

数据标注面临各种挑战,其中一些最常见的挑战是:

  • 成本高昂且耗时
    作为构建机器学习模型的关键步骤之一,数据标注是一个耗时且昂贵的过程。即使是完全自动化的过程,工程团队也需要设置数据管道才能进行数据处理,而手动标注几乎总是成本高昂且耗时。
  • 可能出现人为错误
    标注过程和方法容易出现人为错误,包括编码错误或手动输入错误,这些错误会降低数据质量。低质量数据会导致数据处理和建模不准确。因此,为了保持数据质量,质量保证检查至关重要。

数据标注的应用场景

由于数据标注是机器学习的一个重要概念,它有各种各样的应用场景。以下是一些例子:

  • 计算机视觉
    计算机视觉是人工智能的一个领域,它创建计算机视觉模型以从图像、视频或任何其他视觉输入中提取有意义的信息。它通过使用能够让计算机模型识别图像关键点并检测对象位置的训练数据来实现这一目标。
    在创建计算机视觉模型时,首先,我们需要标注图像、像素或关键点,或者创建完全包围数字图像的边框,称为边界框,以获取训练数据集。例如,图像可以按内容(图像包含什么或关于什么)、质量类型(产品 vs. 生活方式)或像素进行分类。然后,可以使用此训练数据集来训练计算机视觉模型,该模型可以从图像中发现见解并进行预测。
  • 自然语言处理
    自然语言处理是计算机科学的一个分支,更具体地说,是人工智能的一个分支,它使计算机能够理解文本和口语,以便与人类进行交流。NLP 模型可用于情感分析、实体名称识别和光学字符识别。对于 NLP 模型,首先,我们需要手动识别文本中的重要部分并添加特定的标签/标记,以便生成训练数据集。
  • 音频处理
    音频处理是一种将各种声音(包括语音、野生动物噪音、警报、玻璃破碎声等)处理和转换为结构化形式的技术,以便该音频数据集可用于机器学习应用。对于音频处理,首先,我们需要将其手动转录为书面文本,然后通过添加标签和对数据进行分类来查找有关音频的详细信息。现在,这个已标注和已分类的数据集可以用作训练数据集。

数据标注的最佳实践

有各种技术有助于提高数据标注的效率和准确性。其中一些技术如下:

主动学习

主动学习技术通过使用不同的机器学习算法和半监督学习来识别最适合人工标注的数据集,从而提高数据标注的效率。主动学习方法包括:

  • 成员查询合成
  • 池式抽样
  • 流式选择性抽样

迁移学习

使用迁移学习,将一个或多个预训练模型从一个数据集应用到另一个数据集。这还可能包括多任务学习,其中任务是连续学习的。

标签审计

标签审计技术用于验证标签的准确性并根据需要进行更新。

共识

此技术计算不同标注者(人工或机器)在给定数据集上的同意率。计算方法为每个资产的同意标签总数除以标签总数。

直观且简化的任务界面

它最大限度地减少了人工标注者的认知负荷和上下文切换。