合并注释 - Amazon SageMaker
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

合并注释

一个注释是单个工作人员的标记作业的成果。注释整合 将两个及更多工作人员的注释整合到数据对象的单个标签中。分配给数据集中每个对象的标签是对标签的真实情况的概率估计。数据集中的每个对象通常具有多个注释,但只有一个或一组标签。

您可以决定有多少个工作人员对数据集中的每个对象进行注释。使用更多工作人员可以提高标签的准确性,但也会增加标记的成本。要了解有关 Ground Truth 定价的更多信息,请参阅 Amazon SageMaker Ground Truth 定价

如果使用 Amazon SageMaker 控制台创建标记作业,则以下是可以对对象进行注释的工作人员数的默认值:

  • 文本分类 — 3 个工作人员

  • 图像分类 — 3 个工作人员

  • 边界框 — 5 个 工作人员

  • 语义分割 — 3 个工作人员

  • 指定实体识别 — 3 个工作人员

当您使用 CreateLabelingJob 操作时,使用 NumberOfHumanWorkersPerDataObject 参数设置对每个数据对象进行注释的工作人员数量。您可以使用控制台或 CreateLabelingJob 操作来覆盖对数据对象进行注释的默认工作人员数量。

Ground Truth 为其每个预定义标记任务提供一个注释整合函数:边界框、图像分类、名称实体识别、语义分割和文本分类。这些函数如下所示:

  • 图像和文本分类的多类别注释整合对注释使用期望最大化方法的变体。它估计每个工作人员的参数,并使用贝叶斯推断根据来自各个员工的类别注释来估计真正的类别。

  • 边界框注释整合来自多个工作人员的边界框。该函数根据框的 Jaccard 指数(或交并比)查找来自不同工作人员的最相似的框,并计算它们的平均值。

  • 语义分割注释整合将单个图像中的每个像素视为一个多类别分类。该函数将来自工作人员的像素注释视为“投票”,并将平滑函数应用于图像以包含来自周围像素的更多信息。

  • 命名实体识别按 Jaccard 相似性聚类文本选择,并根据模式计算选择边界;如果模式不明确,则计算中值。标签解析为聚类中具有最多分配的实体标签,通过随机选择来中断绑定。

您可以使用其他算法来合并注释。有关信息,请参阅 创建您自己的注释整合函数

创建您自己的注释整合函数

您可以选择使用自己的注释合并函数来确定标记对象的最终标签。编写函数有很多可能的方法,您采用的方法取决于要合并的注释的性质。广义地说,注释函数查看来自工作人员的注释,衡量它们之间的相似性,然后使用某种形式的概率判断来确定最可能的标签应该是怎样的。

如果要使用其他算法创建注释合并函数,可以在任务输出所指向的 [project-name]/annotations/worker-response 存储桶的 Amazon S3 文件夹中找到工作人员响应。

评估相似性

要评估标签之间的相似性,您可以使用下列策略之一,也可以使用满足您的数据标记需要的策略:

  • 对于由离散、互斥的类别(如多类别分类)组成的标签空间,评估相似性的过程可能很简单。离散标签要么匹配,要么不匹配。

  • 对于没有离散值的标签空间(例如,边界框注释),请查找广泛的相似性度量。对于边界框,一个此类度量是 Jaccard 指数。此指数衡量两个框的交并比以评估它们的相似程度。例如,如果具有三个注释,则可以使用一个函数确定哪些注释表示同一对象并且应进行整合。

评估最可能的标签

考虑到前面部分中详细介绍的策略之一,请对整合标签的内容做出某种概率判断。对于离散、互斥的类别,这一过程可能很简单。最常用的一种实现方法是采用注释之间的大多数投票结果。这种方法将各个注释的权重视为相同。

一些方法尝试评估不同的注释者的准确率,并按照正确性概率比例对其注释进行加权。一个此类示例是期望最大化方法,将在多类别注释的默认 Ground Truth 整合函数中使用该方法。

有关创建注释整合函数的更多信息,请参阅步骤 3:使用 AWS Lambda 进行处理