你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

自定义命名实体识别的常见问题解答

查找与 Azure AI 语言中的自定义 NER 相关的概念和场景的常见问题解答。

如何开始使用该服务?

请参阅快速入门来快速创建第一个项目,或者查看如何创建项目以了解更多详细信息。

有哪些服务限制?

有关详细信息,请参阅服务限制一文。

需要多少个标记文件?

通常,如果标记是以精确、一致且完整的状态完成的,则不同且具有代表性的标记数据可带来更好的结果。 固定数量的标记实例无法让每个模型都表现良好。 性能高度依赖于架构,以及架构的不确定性。 不明确的实体类型需要更多的标记。 性能还取决于标记的质量。 建议每个实体的标记实例数为 50。

训练需要很长时间,这是预期吗?

训练过程可能需要很长时间。 大致估计,对于合并长度为 12800000 个字符的文件,预期的训练时间为 6 小时。

如何以编程方式构建自定义模型?

注意

目前只能使用 REST API 或 Language Studio 来构建模型。

可以使用 REST API 构建自定义模型。 按照此快速入门开始创建项目并通过 API 创建模型,该快速入门提供了有关如何调用创作 API 的示例。

准备好开始使用模型进行预测时,可以使用 REST API 或客户端库。

可以在同一项目中的同一数据集上训练多个模型。 成功训练模型后,可以查看其性能。 可以在 Language Studio部署和测试模型。 可以为数据添加或移除标签,还可以训练新模型并对其进行测试。 查看服务限制,以了解同一项目可以拥有的训练模型数目上限。 训练模型时,可以确定如何将数据集拆分为训练集和测试集。 还可以将数据随机分成训练集和测试集,在这种情况下无法保证反映的模型评估是关于同一测试集,结果不具有可比性。 建议你开发自己的测试集,并使用它来评估两个模型,以便能够度量改进程度。

模型分数低(或高)是否一定意味着生产环境中的性能不佳(或良好)?

模型评估可能并不总是全面的。 这取决于:

  • 如果测试集太小,那么,良好/不佳的分数并不代表模型的实际性能。 此外,如果特定的实体类型在测试集中缺失或未能充分表示,它会影响模型的性能。
  • 数据多样性:如果数据只涉及到你预期在生产环境中出现的文本的几个方案/示例,则模型将不会公开到所有可能的方案,并且可能会在该模型未针对其进行过训练的方案中表现不佳。
  • 数据表示:如果用于训练模型的数据集不代表将在生产环境中引入到模型的数据,则模型性能将会受到很大影响。

有关详细信息,请参阅数据选择和架构设计一文。

如何提高模型性能?

  • 查看模型混淆矩阵。 如果你注意到某一实体类型经常无法被正确预测,请考虑为此类添加更多标记实例。 如果你注意到某两个实体类型经常在预测中产生混淆,则表明该架构不明确,应该考虑将它们合并为一个实体类型以提高性能。

  • 查看测试集预测。 如果其中一个实体类型具有的标记实例远远多于其他类型,则模型可能会偏向于这种类型。 将更多数据添加到其他实体类型或从占主导地位的类型中删除示例。

  • 详细了解数据选择和架构设计

  • 查看测试集以并排查看预测实体和标记实体,从而更好地了解模型性能,并确定是否有必要对模式或标记进行任何更改。

在重新训练模型时,为什么会获得不同的结果?

  • 训练模型时,可以确定是否希望数据随机拆分为训练集和测试集。 如果这样做,则不能保证反映的模型评估是针对同一个测试集,所以结果没有可比性。

  • 如果要重新训练同一模型,测试集将是相同的,但你可能会注意到模型所做的预测略有变化。 这是因为训练的模型不够可靠,这是数据的代表性和独特性程度以及标记数据质量方面的因素。

如何获得不同语言的预测?

首先,需要在创建项目时启用多语言选项,也可稍后从项目设置页启用它。 在训练和部署模型之后,便能够开始以多种语言查询它。 可能会获得不同语言的不同结果。 若要提高任何语言的准确度,请以该语言将更多标记实例添加到项目,以将经过训练的模型引入到该语言的更多语法。

我训练了模型,但无法测试它

需要部署模型,然后才能测试它。

如何使用经训练的模型进行预测?

部署模型后,可以使用 REST API客户端库调用预测 API

数据隐私和安全性

自定义 NER 是一个数据处理器,用于一般数据保护条例 (GDPR) 目的。 在符合 GDPR 策略的情况下,自定义 NER 用户具有完全的控制权,可以通过 Language Studio 或使用 REST API 以编程方式来查看、导出或删除任何用户内容。

你的数据仅存储在你的 Azure 存储帐户中。 自定义 NER 仅在训练期间有权从其中进行读取。

如何克隆我的项目?

若要克隆项目,需要使用导出 API 导出项目资产,然后将其导入到新项目中。 请参阅 REST API 参考了解这两个操作。

后续步骤