我是否必须创建自己的 LUIS 实体才能识别单词 "latest"

Do I have to make my own LUIS entity to recognize the word "latest"

我目前正在使用预建实体 ORDINAL,它可以很好地识别 FIRST 和 LAST 这两个词。但是,从测试中,我看到我的用户使用 "latest" 这个词,但它没有将其识别为 ORDINAL。

那我应该自己做实体吗?任何帮助我指出正确方向的帮助将不胜感激。

对于这种情况,您有三个选择,其中两个在 LUIS 中。

LUIS:选项 1 - 简单实体

  • 在您的应用程序中创建一个简单的实体,并将 latest 及其同义词添加到您的 LUIS 应用程序中。
  • 好处包括更少的代码债务、能够手动标记标记以及使用机器学习来识别 latest 及其同义词 (注意:您仍然需要提供 LUIS 的同义词以认识)
  • 缺点包括在您的应用程序中使用的实体少了一个(简单、分层和复合实体的任意组合的当前限制为每个应用程序 30 个)。

LUIS:选项 2 - 列出实体

  • 在您的应用程序中创建一个列表实体,并将 latest 添加为子列表的规范形式,并将其同义词作为列表中的值进行匹配。
  • 好处包括 RegEx 匹配,从您的应用程序中抽象出来。 LUIS 将识别列表实体中已存在的任何标记。
  • 缺点包括丢失一个列表实体 一个 同义词集有限的单词(列表实体的当前限制为每个应用程序 50 个)。您必须将每个标记手动添加到子列表才能被识别。用户无法使用列表实体标记令牌。 未用于 LUIS 的机器学习方面,无助于提高意图预测分数。

应用级别:RegExp/sub-string解析

  • 创建一个标记提取器(使用 RegExp 或其他技术)来识别单词 latest 及其同义词
  • 这样做的好处包括减少 LUIS 资源(实体和列表实体)的支出,更重要的是,从 LUIS 接收结果所需的时间可能会略微减少。
  • 这样做的缺点包括由于您必须在应用程序中执行匹配而增加的代码债务。