通过说明,添加标签的人员可了解如何将标签应用到数据。说明中应该有已带标签的样本数据和其他明确指示。
AI Platform Data Labeling Service 支持 PDF 说明:
- PDF 说明。PDF 说明可以提供精确的指示,例如每种情况的正例和负例或相关说明。创建此类说明也更加便捷,尤其是对一些复杂的任务而言,例如图片边界框或视频对象跟踪。
一个项目可以有多组说明,每组说明用于不同的 Data Labeling Service 请求。您可获取可用说明列表,也可删除不再需要的说明。如需了解详情,请参阅说明资源页面。
设计优秀说明
好的说明是获得绝佳人工标签结果的最重要因素。您的使用场景您最了解,因此您需要让添加标签的人员也了解您的需求。下面是创建优秀说明的几项准则:
添加标签的人员并不具备您所在领域的相关知识。对于不熟悉您的使用场景的人来说,您要求标签添加者做出的区分应该易于理解。
应避免创建过于冗长的说明。最理想的效果是标签添加者能够在 20 分钟内看完并且理解说明。
说明应描述任务的概念,并详细指出如何为数据添加标签。例如,对于边界框任务,可描述您希望标签添加者如何绘制边界框。边界框应该较紧凑还是较松散?如果对象有多个实例,则标签添加者是该绘制一个大的边界框,还是该绘制多个小的边界框?
如果您的说明具有对应的标签集,则应涵盖该标签集中的所有标签。说明中的标签名称应与标签集中的名称一致。
为了创建优秀的说明,通常需要进行多次迭代。我们建议您先为小型数据集添加标签,然后再根据获得的结果对说明进行调整。
好的说明文件应包含以下几个部分:
- 标签列表和描述:列出您要使用的所有标签并描述每个标签的含义。
- 示例:对于每个标签,请提供至少 3 个正例和 1 个负例。这些示例应涵盖不同的用例。
- 涵盖边缘用例。尽可能多地阐明边缘用例,让标签添加者无需自行解释标签。例如,如果您需要绘制人物边界框,最好能清楚地说明以下事项:
- 如果有多个人物,您是否需要为每个人物绘制一个边界框?
- 如果某个人被遮挡了,您是否需要为其绘制边界框?
- 对于图片中只显示了部分身体的某个人,您是否需要绘制边界框?
- 您是否需要为照片或绘画中的人物绘制边界框?
- 说明如何添加注释。例如:
- 对于边界框,您需要紧凑型还是松散型的?
- 对于文本实体提取,相关实体应该从哪里开始、在哪里结束?
- 阐明标签。如果两个标签相似或易于混淆,请提供示例来阐明区别。
创建说明
PDF 说明
以下示例显示了 PDF 说明可能包含的内容。在开始执行任务之前,标签添加者将查看说明。
您可以创建 Google 幻灯片,并将幻灯片导出为 PDF 文件来创建说明。
向项目添加说明
网页界面
打开数据标签服务界面。
说明页面会显示之前为当前项目创建的说明的状态。
如需为其他项目添加说明,请从标题栏右上角的下拉列表中选择项目。
点击标题栏中的创建按钮。
在新建说明页面上,为说明文件输入名称和描述。
从数据类型下拉列表中,选择标签添加者将对其应用标签的数据项类型:图片、视频或文本。
在说明位置部分,输入说明文件的完整路径。
您必须指定 PDF 说明文件。该文件必须与数据集和标签集位于同一 Google Cloud Storage 存储分区中。
点击创建说明。
您会返回到说明列表页面;在文件导入期间,您的说明会显示“进行中”状态。
命令行
以下示例会创建一个名为test_spec_set_display_name
的标签集。您必须定义 PROJECT_ID
和 GCS_PDF_FILE_PATH
环境变量,并将它们分别指向您的 Google Cloud 项目 ID 以及您要使用的 PDF 文件的 Cloud Storage URI。
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json" \ https://datalabeling.googleapis.com//v1beta1/projects/${PROJECT_ID}/instructions \ -d '{ "instruction": { "displayName": "curl_testing_instruction", "description": "instruction for curl commands testing", "dataType": "IMAGE", "pdfInstruction": { "gcsFileUri": "${GCS_PDF_FILE_PATH}" } }, }'
您将看到如下所示的输出:
{ "name": "projects/data-labeling-codelab/instructions/5c73dbc1_0000_23e0_a25b_94eb2c119c4c" }
Python
您必须先安装 Python 客户端库,然后才能运行此代码示例。您应提供 PdfInstruction
类型的说明。如需其他数据类型的说明,请将 dataType
从“IMAGE”替换为相应的数据类型。
Java
在运行此代码示例之前,您必须先安装 Java 客户端库。您应提供 PdfInstruction
类型的说明。如需其他数据类型的说明,请将 dataType
从“IMAGE”替换为相应的数据类型。
更新项目中的说明
如需更新说明,请按照将说明添加到项目中所述,更新说明文件,然后重新上传。
提交数据标签任务时,服务会拍摄说明文件的快照,并使用该快照指示该任务为数据添加标签。如果您在数据标签任务进行期间更新了说明,这样做可以避免服务返回不一致的结果。如果您更新了说明并且希望投入使用,请提交新的数据标签任务。