准备训练数据 - Amazon Comprehend

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

准备训练数据

要训练成功的自定义实体识别模型,向模型训练器提供高质量的数据作为输入非常重要。如果没有好的数据,模型将无法学习如何正确识别实体。

您可以选择以下两种方式之一向 Amazon Comprehend 提供数据,以便训练自定义实体识别模型:

  • 注释— 提供实体在多个文档中的位置,以便 Amazon Comprehend 可以对实体及其上下文进行训练。要创建用于分析图像文件、PDF 或 Word 文档的模型,必须使用 PDF 批注训练识别器。

  • 实体列表(仅限纯文本)— 列出特定实体,以便 Amazon Comprehend 可以训练以识别您的自定义实体。注意:实体列表只能用于纯文本文档。

在这两种情况下,Amazon Comprehend 都会了解文档的类型和实体出现的上下文,并构建一个识别器,该识别器可以在您分析文档时进行泛化以检测新实体。

创建自定义模型(或训练新版本)时,可以提供测试数据集。如果您不提供测试数据,Amazon Comprehend 会保留 10% 的输入文档来测试模型。Amazon Comprehend 使用剩余的文档训练模型。

注释

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

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

文档和注释的最小数量因批注的类型而异:

  • PDF 注释— 为每个实体提供至少 250 个输入文档和至少 100 个注释。

  • 纯文本注释-为每个实体提供至少三个输入文档和至少 25 个注释。如果您提供的注释总数少于 50 个,则 Amazon Comprehend 会保留超过 10% 的输入文档来测试模型(除非您在训练请求中提供了测试数据集)。

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

    另外,不要忘记文档语料库的最小大小为 5 KB。

实体列表

借助自定义实体识别,Amazon Comprehend 可帮助您使用实体列表训练模型。如果要使用实体列表,则需要提供两条信息:实体名称列表及其相应的自定义实体类型,以及您希望实体将显示的未注释文档的集合。这是一个比注释选项更直接的选择,但可能会导致更粗糙、不太具体的结果。这是因为注解为训练模型时使用 Amazon Comprehend 提供了更多的上下文。如果没有这种上下文,Amazon Comprehend 在尝试识别实体时会有更多的误报。

当您提供实体列表时,Amazon Comprehend 会使用智能算法来检测文档中出现的实体,作为训练自定义实体识别器模型的基础。

例如,如果您要搜索名称为 JUDGE 的实体类型为 JUDGE 的 JOHN Johnson,则使用实体列表将使您能够识别其名称的实例。但是,如果没有注释 John Johnson 或 JUDGE 的确切位置,Amazon Comprehend 可能会查看名称为 John Johnson 的所有实例,包括与您的自定义实体具有相同姓名匹配的其他员工。

对于实体列表,在实体列表中为每个实体提供至少 200 个实体匹配项。

注释还是实体列表?

提供您自己的注释需要更多工作,但可以更加精细。不使用自己的注释速度更快,工作量也更少,但结果不太精确,也不太准确。

在某些情况下,避免使用注释所带来的更高开支和工作量更具商业意义。例如,John Johnson 这个名字对你的搜索很重要,但这个名字是否是确切的个人并不相关。或者使用实体列表时的指标足以为您提供所需的识别器结果。在这种情况下,使用实体列表可能是更有效的选择。

建议您在以下情况下使用注释模式:

  • 如果您计划对图像文件、PDF 或 Word 文档进行推断。在这种情况下,您可以使用带注释的 PDF 文件训练模型,并使用该模型为图像文件、PDF 和 Word 文档运行推理作业。

  • 当实体的含义可能模棱两可且取决于上下文时。例如,术语亚马逊可以指巴西的河流,也可以指在线零售商亚马逊。当您构建自定义实体识别器来标识业务实体时,例如亚马逊,则应使用注释而不是实体列表,因为此方法能够更好地使用上下文来查找实体。

  • 当你很舒服地设置一个获取注释的流程时,这可能需要一些努力。

我们建议在以下情况下使用实体列表:

  • 当你已经有了实体列表或者组成一个全面的实体列表相对容易的时候。如果您使用实体列表,则该列表应该是完整的,或者至少包含可能出现在您提供的用于培训的文档中的大多数有效实体。

  • 对于初次使用的用户,通常建议使用实体列表,因为这比构建注释需要更少的精力。但是,需要注意的是,训练过的模型可能不如使用注释那样准确。