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

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

使用 Amazon Mechanical Turk 人力

Amazon Mechanical Turk (Mechanical Turk) 人力可为Amazon SageMaker Ground Truth标记作业和Amazon Augmented AI人工审核任务提供最多的工作人员。Amazon Mechanical Turk 人力是世界范围内的资源。工作人员每周 7 天、每天 24 小时提供服务。当您使用 Amazon Mechanical Turk 人力时,通常会获得人工审核任务和标记作业的最快周转时间。

任何 Amazon Mechanical Turk 人力账单都将作为您的 Ground Truth 或 Amazon Augmented AI 账单的一部分处理。您不需要创建单独的 Mechanical Turk 账户来使用 Amazon Mechanical Turk 人力。

重要

您不应与此人力共享机密信息、个人信息或受保护的健康信息。当您将 与符合 AWS HIPAA 要求的服务(如 Amazon Mechanical Turk 和 Amazon A2I )结合使用时,不应将 Amazon Textract 人力用于包含受保护的健康信息Amazon Rekognition的工作负载。

在创建Mechanical Turk标记作业或Ground Truth人工审核工作流程(流定义)时,您可以选择 Amazon A2I 作为人力。您可以使用 SageMaker 控制台和 API 创建标记作业和人工审核工作流程。

当您使用 API 操作创建标记作业或人工审核工作流程时,您可以对 的Amazon Mechanical Turk人力使用以下 WorkteamArnARN。Replace 区域 与用于创建标记作业或人工循环的 AWS 区域结合使用。例如,如果您在 中创建标记作业美国西部(俄勒冈),请替换 区域 (含 us-west-2)。

  • arn:aws:sagemaker:region:394669845002:workteam/public-crowd/default

Ground Truth 和 Amazon A2I 要求您在使用 时的输入数据不含个人身份信息 (Mechanical TurkPII)。如果您使用 Mechanical Turk 人力并且未指定您的输入数据不含 PII,则您的Ground Truth标记作业和Augmented AI任务将失败。当您创建Ground Truth标记作业以及使用内置集成或 Amazon A2I 操作创建StartHumanLoop人工循环时,您可以指定输入数据不含 PII。

可以使用以下部分了解如何将 Mechanical Turk 与这些服务结合使用。

将 Mechanical Turk 与 Ground Truth 结合使用

在使用控制台或 Mechanical Turk 操作创建标记作业Ground Truth时,您可以将 CreateLabelingJob 与 结合使用。

在创建标记作业时,我们建议您根据作业的复杂性和所需的质量调整对每个数据对象进行注释的工作人员数量。 Amazon SageMaker Ground Truth 使用注释整合来提高标签的质量。对于较为复杂的标记作业,工作人员数量较多会给标签质量带来帮助,但对于比较简单的作业则没多大作用。有关更多信息,请参阅合并注释 。请注意,Amazon A2I人工审核工作流不支持注释整合。

在创建标记作业Mechanical Turk时使用(控制台):

  1. 使用以下内容通过 Ground Truth 控制台的 SageMaker 区域创建标记作业创建标记作业(控制台):。

  2. 当您在 Workers (工作人员) 部分中选择 Workers types (工作人员类型) 时,选择 Amazon Mechanical Turk

  3. 指定工作人员必须使用 Task timeout (任务超时) 完成任务的总时长。

  4. 指定 Task expiration (任务过期) 中工作线程保持可用的总时间。这是工作人员在任务失败之前必须选取任务的时间长度。

  5. 使用下拉列表选择 Price per task (每个任务的价格)。这是工作人员为完成单个任务而收到的金额。

  6. (可选)如果适用,请选择 The dataset does not contain adult content (数据集不包含成人内容SageMaker)。如果工作线程包含成人内容,则 可能会限制可查看您的任务的Mechanical Turk工作人员。

  7. 您必须通过选中复选框来读取并确认以下语句以使用 Mechanical Turk 人力。如果您的输入数据包含机密信息、个人信息或受保护的健康信息,则必须选择另一个人力。

    您了解并同意,人力由位于全球的独立承包商Mechanical Turk组成,并且您不应与此人力共享机密信息、个人信息或受保护的健康信息。

  8. (可选)如果要启用自动数据标记,请选中 Enable automated data labeling (启用自动数据标记) 旁边的复选框。要了解有关此功能的更多信息,请参阅自动数据标记

  9. 您可以在 Additional configuration 下指定 Number of workers per dataset object。例如,如果您在此字段中输入 3,则每个数据对象将由 3 个工作人员标记。

当您通过选择 Create (创建) 创建标记作业时,标记任务将发送给Mechanical Turk工作人员。

在创建标记作业 (API) Mechanical Turk 时使用:

  1. 使用 CreateLabelingJob 操作,通过以下命令创建标记作业创建标记作业 (API):。

  2. 对 使用以下内容WorkteamArn。Replace 区域 与用于创建标记作业的 AWS 区域。

    arn:aws:sagemaker:region:394669845002:workteam/public-crowd/default

  3. 使用 TaskTimeLimitInSeconds 指定工作人员必须完成任务的总时间量。

  4. 使用 TaskAvailabilityLifetimeInSeconds 指定任务保持对工作人员可用的总时间。这是工作人员在任务失败之前必须选取任务的时间长度。

  5. 使用 NumberOfHumanWorkersPerDataObject 指定每个数据集对象的工作线程数。

  6. 使用 PublicWorkforceTaskPrice 设置每个任务的价格。这是工作人员为完成单个任务而收到的金额。

  7. 使用 DataAttributes 指定您的输入数据不含机密信息、个人信息或受保护的健康信息。

    Ground Truth 如果您使用 人力, 要求Mechanical Turk您的输入数据不含个人身份信息 (PII)。如果您使用 Mechanical Turk ,并且没有使用 FreeOfPersonallyIdentifiableInformation 标志指定您的输入数据不含 PII,则标记作业将失败。

    使用 FreeOfAdultContent 标记声明您的输入数据不包含成人内容SageMaker。如果工作线程包含成人内容,则 可能会限制可查看您的任务的工作Mechanical Turk线程。

您可以在 GitHub 上的以下笔记本中查看有关如何使用此 API 的示例Ground Truth:Jupyter 笔记本示例。您可以在笔记本实例中的 下访问这些SageMaker示例笔记本笔记本

将 Mechanical Turk 与 Amazon A2I 结合使用

在 控制台中或 Mechanical Turk API 操作中创建人工审核工作流程(也称为Amazon A2I流定义CreateFlowDefinition时,您可以指定希望 将 与 结合使用。当您使用此人工审核工作流程配置人工循环时,必须指定您的输入数据不含 PII。

在创建人工审核工作流程Mechanical Turk时使用 (控制台):

  1. 使用以下命令在 Augmented AI 控制台的 SageMaker 部分中创建人工审核工作流程创建人工审核工作流程(控制台):。

  2. 当您在 Workers (工作人员) 部分中选择 Workers types (工作人员类型) 时,请选择 Amazon Mechanical Turk

  3. 使用下拉列表选择 Price per task (每个任务的价格)。这是工作人员为完成单个任务而收到的金额。

  4. (可选)您可以在 Additional configuration (其他配置) 下指定 Number of workers per dataset object (每个数据集对象的工作人员数)。例如,如果您在此字段中输入 3,则每个数据对象将由 3 个工作人员标记。

  5. (可选)指定工作人员必须使用 Task timeout (任务超时) 完成任务的总时长。

  6. (可选)指定在 Task expiration (任务过期) 中,工作线程保持可用的总时间。这是工作人员在任务失败之前必须选取任务的时间长度。

  7. 创建人工审核工作流程后,您可以通过在参数 中提供 Amazon 资源名称 (ARN) 来使用该工作流程配置人工循环FlowDefinitionArn。您可以使用内置任务类型的 API 操作之一或Amazon A2I运行时 API 操作 配置人工循环StartHumanLoop。要了解更多信息,请参阅“创建和启动人工循环”。

    在配置人工循环时,必须使用 中的 FreeOfPersonallyIdentifiableInformation 内容分类器指定输入数据不含个人身份信息 (DataAttributesPII)。如果您使用 Mechanical Turk 并且未指定您的输入数据不含 PII,则您的人工审核任务将失败。

    使用 FreeOfAdultContent 标记声明您的输入数据不包含成人内容SageMaker。如果工作线程包含成人内容,则 可能会限制可查看您的任务的工作Mechanical Turk线程。

在创建人工审核工作流程 (API) Mechanical Turk 时使用:

  1. 使用 CreateFlowDefinition 操作,通过以下命令创建人工审核工作流程创建人工审核工作流程 (API):。

  2. 对 使用以下内容WorkteamArn。Replace 区域 与用于创建标记作业的 AWS 区域。

    arn:aws:sagemaker:region:394669845002:workteam/public-crowd/default

  3. 使用 TaskTimeLimitInSeconds 指定工作人员必须完成任务的总时间量。

  4. 使用 TaskAvailabilityLifetimeInSeconds 指定任务保持对工作人员可用的总时间。这是工作人员在任务失败之前必须选取任务的时间长度。

  5. 使用 TaskCount 指定每个数据集对象的工作线程数。例如,如果您为该参数指定 3,则每个数据对象将由 3 个工作人员标记。

  6. 使用 PublicWorkforceTaskPrice 设置每个任务的价格。这是工作人员为完成单个任务而收到的金额。

  7. 创建人工审核工作流程后,您可以通过在参数 中提供 Amazon 资源名称 (ARN) 来使用该工作流程配置人工循环FlowDefinitionArn。您可以使用内置任务类型的 API 操作之一或Amazon A2I运行时 API 操作 配置人工循环StartHumanLoop。要了解更多信息,请参阅“创建和启动人工循环”。

    在配置人工循环时,必须使用 中的FreeOfPersonallyIdentifiableInformation内容分类器指定输入数据不含个人身份信息 (DataAttributesPII)。如果您使用 Mechanical Turk 并且未指定您的输入数据不含 PII,则您的人工审核任务将失败。

    使用 FreeOfAdultContent 标记声明您的输入数据不包含成人内容SageMaker。如果工作线程包含成人内容,则 可能会限制可查看您的任务的工作Mechanical Turk线程。

您可以在以下笔记本中查看有关如何使用此 API 的示例,这些笔记本位于 GitHub:Amazon A2IJupyter 笔记本示例上。

不支持 的时间Mechanical Turk?

以下方案不支持此人力。在每个场景中,您必须使用私有供应商人力。

  • Ground Truth 视频帧标记作业和 3D 点云标记作业不支持此人力。

  • 如果您的输入数据包含个人身份信息 (PII),则无法使用此人力。

  • Mechanical Turk 在某些 AWS 特殊区域中不可用。如果适用,请参阅您的特殊区域的文档以了解更多信息。