本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
创建标记作业 (API)
使用亚马逊创建贴标任务 SageMaker API,你使用CreateLabelingJob
操作。有关为内置任务类型创建标记作业的具体说明,请参阅该任务类型页面。要了解如何创建流式标签作业(一种永久运行的标签作业),请参阅创建流媒体标签Job.
要使用CreateLabelingJob
操作,您需要:
-
工作人员任务模板 (
UiTemplateS3Uri
) 或人工任务 UI ARN (HumanTaskUiArn
)在 Amazon S3 中。-
对于 3D 点云作业、视频对象检测和跟踪任务以及 NER 作业,请使用中列出的 ARN
HumanTaskUiArn
用于您的任务类型。 -
如果您使用的是 3D 点云任务以外的内置任务类型,则可以将工作人员说明添加到其中一个预构建的模板中,并将此模板(使用 .html 或 .liquid 扩展名)保存在 S3 存储桶中。在任务类型页面上查找预构建模板。
-
如果使用自定义标记工作流,您可以创建一个自定义模板,并将该模板保存在 S3 存储桶中。要了解如何构建自定义工作人员模板,请参阅第 2 步 2 步:创建您的自定义工作任务模板。有关可用于自定义模板的自定义 HTML 元素,请参阅Crowd HTML 元素参考。有关各种标签任务的演示模板存储库,请参阅亚马逊 SageMaker Ground Truth 示例任务界面
.
-
-
指定您在 Amazon S3 中的输入数据的输入清单文件。在中指定输入清单文件的位置
ManifestS3Uri
. 有关创建输入清单的信息,请参阅输入数据。如果您创建流式标签作业,则这是可选的。要了解如何创建流式标记任务,请参阅创建流媒体标签Job. -
用于存储输出数据的 Amazon S3 存储桶。您可以指定此存储桶,也可以选择在中指定前缀
S3OutputPath
. -
标签类别配置文件。每个标签类别名称必须唯一。使用指定 Amazon S3 中此文件的位置
LabelCategoryConfigS3Uri
参数。此文件的格式和标签类别取决于您使用的任务类型:-
对于图像分类和文本分类(单标签和多标签),必须指定至少两个标签类别。对于所有其他任务类型,所需的最小标签类别数为一个。
-
对于命名实体识别任务,必须在此文件中提供工作人员指令。请参阅在标签类别配置文件中提供工作人员指令以获取详细信息和示例。
-
对于 3D 点云和视频帧任务类型,请使用中的格式使用标签类别和框架属性创建标签类别配置文件.
-
对于所有其他内置任务类型和自定义任务,标签类别配置文件必须是以下格式的 JSON 文件。通过将
label_1
、label_2
、...
、label_n
替换为标签类别,确定要使用的标签。{ "document-version": "2018-11-28" "labels": [ {"label": "
label_1
"}, {"label": "label_2
"}, ... {"label": "label_n
"} ] }
-
-
网络 ACL 和安全组都允许 (因此可到达您的实例) 的发起 ping 的Amazon Identity and Access Management(IAM) 角色使用AmazonSageMakerGroundTruthExecution
附加了托管 IAM 策略并具有访问您的 S3 存储桶的权限。在中指定此角色 RoleArn
. 要了解有关此政策的更多信息,请参阅将 IAM 托管策略与Ground Truth 结合使用. 如果您需要更精细的权限,请参阅分配 IAM 使用Ground Truth 的权限。如果您的输入或输出存储桶名称不包含
sagemaker
,则可以将类似于以下内容的策略附加到传递给CreateLabelingJob
操作的角色。{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::
my_input_bucket
/*" ] }, { "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": [ "arn:aws:s3:::my_output_bucket
/*" ] } ] } -
用于处理输入和输出数据的注释前和注释后(或注释-合并)Amazon Lambda 函数 Amazon 资源名称 (ARN)。
-
Lambda 函数在每个函数中都是预定义的Amazon内置任务类型的区域。要查找您所在地区的预注释 Lambda ARN,请参阅PreHumanTaskLambdaArn. 要查找您所在地区的注释整合 Lambda ARN,请参阅AnnotationConsolidationLambdaArn.
-
对于自定义标签工作流程,您必须提供自定义的注释前和注释后 Lambda ARN。要了解如何创建这些 Lambda 函数,请参阅第 3 步 3 步:使用以下方式处理Amazon Lambda.
-
-
您在中指定的工作团队 ARN
WorkteamArn
. 当您订阅供应商员工队伍或创建私人工作组时,您会收到工作团队 ARN。如果您正在为视频帧或点云任务类型创建标注作业,则不能使用Amazon Mechanical Turk人力。对于所有其他任务类型,要使用 Mechanical Turk 员工,请使用以下 ARN。Replace(替换)
用Amazon您用于创建标签作业的区域。region
arn:aws:sagemaker:
region
:394669845002:workteam/public-crowd/default如果您将Amazon Mechanical Turk劳动力,使用
ContentClassifiers
中的参数DataAttributes
的InputConfig
声明您的内容不包含个人身份信息和成人内容。GGround Truth要求如果您使用 Mechanical Turk 员工,则您的输入数据不包含个人身份信息 (PII)。如果你使用 Mechanical Turk 但没有指定你的输入数据不含个人身份信息,请使用
FreeOfPersonallyIdentifiableInformation
标记,您的标签作业将失败。使用FreeOfAdultContent
flag 来声明您的输入数据不包含成人内容。SageMaker 如果您的任务包含成人内容,可能会限制可以查看您的任务的 Amazon Mechanical Turk 工作人员。要了解有关工作团队和人力的更多信息,请参阅创建和管理人力。
-
如果你使用 Mechanical Turk 员工,你必须指定在执行单项任务时向员工支付的价格
PublicWorkforceTaskPrice
. -
要配置任务,必须使用提供任务描述和标题
TaskDescription
和TaskTitle
分别地。(可选)您可以提供时间限制,控制工作人员在单项任务上必须工作多长时间(TaskTimeLimitInSeconds
)以及任务在工作人员门户中保留多长时间,可供工作人员使用(TaskAvailabilityLifetimeInSeconds
)。 -
(可选)对于某些任务类型,您可以让多个工作人员标记单个数据对象(为
NumberOfHumanWorkersPerDataObject
参数输入大于 1 的数字)。有关注释合并的更多信息,请参阅合并注释。 -
(可选)要创建自动数据标记作业,请指定中列出的 ARN 之一LabelingJobAlgorithmSpecificationArn在
LabelingJobAlgorithmsConfig
. 此 ARN 标识自动数据标记任务中使用的算法。与此 ARN 关联的任务类型必须与的任务类型相匹配PreHumanTaskLambdaArn
和AnnotationConsolidationLambdaArn
您指定。以下任务类型支持自动数据标记:图像分类、边界框、语义分割和文本分类。允许进行自动数据标签的最小对象数量为 1,250 个,我们强烈建议至少提供 5,000 个对象。要了解有关自动数据标记任务的更多信息,请参阅自动数据标记. -
(可选)您可以提供
StoppingConditions
如果条件得到满足,则会导致标签作业停止。您可以使用停止条件来控制标签作业的成本。
示例
以下代码示例演示了如何使用CreateLabelingJob
. 要查看其他示例,我们建议您使用Ground Truth 标记里面的 Jupyter 笔记本 SageMakera 的示例部分 SageMaker 笔记本实例。要了解如何使用笔记本示例,请参阅 SageMaker 示例,请参阅示例笔记本. 您还可看到以下示例笔记本 GitHub 在SageMaker 示例存储库
有关此操作的更多信息,请参阅CreateLabelingJob。有关如何使用其他特定语言的 SDK 的信息,请参阅另请参阅在CreateLabelingJobs
主题。