注释 - Amazon Comprehend

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

注释

注释通过将您的自定义实体类型与培训文档中出现的位置相关联,在上下文中标注实体。

通过将注释与文档一起提交,可以提高模型的准确性。使用注释,您不仅可以提供要查找的实体的位置,还可以为要查找的自定义实体提供更准确的上下文。

例如,如果您正在搜索实体类型为 JUDGE 的 John Johnson 这个名字,那么提供注释可能有助于模型了解您要查找的人是一名法官。如果它能够使用上下文,那么 Amazon Comprehend 就不会找到名叫 John Johnson 的人是律师或证人。在不提供注释的情况下,Amazon Comprehend 将创建自己的注释版本,但在仅包括法官方面效果不佳。提供自己的注释可能有助于获得更好的结果,并生成能够在提取自定义实体时更好地利用上下文的模型。

最小注释数量

训练模型所需的最小输入文档和注释数量取决于注释的类型。

PDF 注释

要创建用于分析图像文件、PDF 或 Word 文档的模型,请使用 PDF 注释训练识别器。对于 PDF 注释,请为每个实体提供至少 250 个输入文档和至少 100 个注释。

如果您提供测试数据集,则测试数据必须包含创建请求中指定的每种实体类型的至少一个注释。

纯文本注释

要创建用于分析文本文档的模型,您可以使用纯文本注释来训练识别器。

对于纯文本注释,请为每个实体提供至少三个带注释的输入文档和至少 25 个注释。如果您提供的注释总数少于 50 个,Amazon Comprehend 将保留超过 10% 的输入文档用于测试模型(除非您在训练请求中提供了测试数据集)。别忘了,最小文档语料库大小为 5 KB。

如果您的输入仅包含少量训练文档,则可能会遇到错误,即训练输入数据包含提及其中一个实体的文档太少。再次提交作业并附上提及该实体的其他文件。

如果您提供测试数据集,则测试数据必须包含创建请求中指定的每种实体类型的至少一个注释。

有关如何使用小型数据集对模型进行基准测试的示例,请参阅在 AWS 博客网站上 Amazon Comprehend 宣布降低自定义实体识别的注释限制

注释最佳实践

要在使用注释时获得最佳结果,需要考虑很多因素,包括:

  • 请谨慎地注释您的数据,并确认您是否对实体的每个提及进行了注释。不精确的注释可能会导致结果不佳。

  • 输入数据不应包含重复项,例如您要进行注释的 PDF 的副本。重复样本的存在可能会导致测试集污染,并可能对训练过程、模型指标和模型行为产生负面影响。

  • 确保您的所有文档都带有注释,并且没有注释的文档是由于缺乏合法实体而不是疏忽造成的。例如,如果你有一份写着“J Doe 当工程师已有 14 年了”的文档,那么你还应该为“J Doe”和“John Doe”提供注释。如果不这样做,会使模型混淆,并可能导致模型无法将“J Doe”识别为 ENGINEER。这应该在同一文档中和跨文档中保持一致。

  • 通常,注释越多,结果越好。

  • 您可以使用最少数量的文档和注释来训练模型,但是增加数据通常可以改进模型。我们建议将带注释的数据量增加 10%,以提高模型的准确性。您可以对测试数据集进行推理,该数据集保持不变,并且可以通过不同的模型版本进行测试。然后,您可以比较后续模型版本的指标。

  • 提供尽可能与真实用例非常相似的文档。应避免使用重复模式的合成数据。输入数据应尽可能多样化,以避免过度拟合,并帮助底层模型更好地概括真实示例。

  • 重要的是,文档的字数应多种多样。例如,如果训练数据中的所有文档都很短,则生成的模型可能难以预测较长文档中的实体。

  • 尝试为训练提供与实际检测自定义实体(推理时间)时预期使用的相同的数据分布。例如,在推理时,如果您希望向我们发送的文档中没有实体,那么这也应该是您的训练文档集的一部分。

有关其他建议,请参阅提高自定义实体识别器性能