你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
陈述
重要
LUIS 将于 2025 年 10 月 1 日停用,从 2023 年 4 月 1 日开始,你将无法创建新的 LUIS 资源。 建议将 LUIS 应用程序迁移到对话语言理解,以便从持续的产品支持和多语言功能中受益。
语句是你的应用需要解释的来自用户的输入。 若要训练 LUIS 从这些输入中提取意向和实体,请务必为每种意向都捕获多种不同的示例语句。 主动学习或继续训练新语句的过程对于 LUIS 提供的机器学习智能至关重要。
收集你认为用户会输入的话语。 提供含义相同但以多种不同方式构造的语句:
- 话语长度 - 根据客户端应用程序选择短、中和长
- 单词和短语的长度
- 单词放置 - 实体位于话语的开头、中间和末尾
- 语法
- 复数形式
- 词干
- 名词和动词选择
- 标点 - 正确的和不正确的语法都使用
选择发生了变化的语句
在开始为 LUIS 模型添加示例语句时,需要记住几个原则:
陈述并非始终格式正确
应用可能需要处理句子(例如“Book a ticket to Paris for me”)或句子片段(例如“Booking”或“Paris flight”),用户也经常会犯拼写错误。 在规划应用时,请考虑在将用户输入传递到 LUIS 之前是否需要使用必应拼写检查进行更正。
如果你没有对用户语句进行拼写检查,则应针对包含拼写错误的语句训练 LUIS。
使用用户的代表性语言
在选择语句时,请注意,你认为是常用术语或短语的内容对于客户端应用程序的典型用户来说可能并不常见。 用户可能没有领域经验,或使用不同的术语。 请谨慎使用仅当用户是专家时才会说的术语或短语。
选择发生了变化的术语和短语
你会发现,即使你努力创造不同的句型,你仍然会重复一些词汇。 例如,以下语句含义类似,但术语和短语不同:
- “怎么买计算机?”
- “在哪里买计算机?”
- “我想买台计算机,应该怎么操作?”
- “我什么时候能有台计算机?”
这里的核心术语“计算机”没有变化。 可以使用替代话语“台式电脑”、“笔记本电脑”、“工作站”,甚至是“机器”。 LUIS 可以根据上下文智能地推断同义词,但当你创建用于训练的话语时,最好是改变它们。
每个意向的示例陈述
每个意向都需要有示例语句,至少 15 个。 如果你的意向没有任何示例语句,则无法训练 LUIS。 如果你的意向仅包含一个示例语句或极少的示例语句,LUIS 可能无法准确预测该意向。
添加语句小组
每次在模型上迭代来改进该模型时,请勿添加大量语句。 请考虑按 15 句的数量来添加语句。 然后,再次进行训练、发布和测试。
LUIS 使用由 LUIS 模型作者精心挑选的话语构建有效的模型。 添加太多话语是没有价值的,因为它会引起混乱。
最好先从几个语句开始,然后审查终结点语句以进行正确的意向预测和实体提取。
话语规范化
言语规范化是指在训练和预测时忽略文本类型(如标点符号和音调符号)的影响这一过程。
语句规范化设置在默认情况下是关闭的。 这些设置包括:
- 单词形式
- 音调符号
- 标点
如果启用规范化设置,则对于该规范化设置的所有言语,“测试”窗格、批量测试和终结点查询中的分数都会变化。
在 LUIS 门户中克隆版本时,版本设置会保留在新的克隆版本中。
通过在 LUIS 门户中的“应用程序设置”页上,选择顶部导航菜单中的“管理”,使用该门户来设置你的应用的版本设置。 也可使用更新版本设置 API。 有关详细信息,请参阅参考文档。
单词形式
规范单词形式会忽略扩展到词根之外的单词的差异。
音调符号
音调符号是文本中的标记或符号,例如:
İ ı Ş Ğ ş ğ ö ü
标点符号
规范化标点是指在训练模型和预测终结点查询之前,从话语中删除标点。
标点是 LUIS 中单独的标记。 末尾包含句号的语句不同于末尾不包含句号的语句,它们可能得到两种不同的预测。
如果标点未规范化,则默认情况下,LUIS 不会忽略标点符号,因为某些客户端应用程序可能会为这些符号赋予含义。 请确保包含使用标点的示例语句和未使用标点的示例语句,以便让两种样式都返回相同的相对分数。
请确保模型在示例语句(有标点和没有标点两种情况)中或在模式中(这种情况更容易忽略标点)处理标点。 例如:我在申请 {Job} 岗位[。]
如果标点在客户端应用程序中没有特定含义,请考虑通过规范化标点来忽略标点。
忽略单词和标点
若要忽略模式中的特定单词或标点,请将 pattern 与方括号 []
的 ignore 语法配合使用。
使用所有言语的训练
训练是非确定性的:在不同版本或应用中,语句预测可能略有不同。 可以去除非确定性训练,方法是使用 UseAllTrainingData 名称/值对更新版本设置 API,以使用所有训练数据。
测试陈述
开发人员应通过向预测终结点 URL 发送语句来开始使用实际数据测试其 LUIS 应用程序。 这些陈述用于通过审查陈述来改善意向和实体的表现。 使用 LUIS 门户中的测试窗格提交的测试不会通过终结点发送,不会有助于主动学习。
评审陈述
在模型经过训练、发布并接收终结点查询后,请审查 LUIS 建议的陈述。 LUIS 会选择意向或实体得分较低的终结点陈述。
最佳实践
字词含义的标签
如果选词或字词排列方式相同,但含义并不相同,请不要用实体来标记它。
在下面的语句中,“fair”一词是同形,这意味着它拼写相同,但含义不同:
- “What kinds of county fairs are happening in the Seattle area this summer?”
- “Is the current 2-star rating for the restaurant fair?”
如果希望事件实体查找所有事件数据,请标记第一个语句中的 fair 一词,但不在第二个语句中标记。
请勿忽略可能的语句变体
LUIS 会预期一个意向的话语会存在变体。 在总体意思相同的情况下,话语形式可能会有所不同。 其差异可能涉及话语长度、字词选择和字词位置等方面。
请勿使用相同格式 | 请务必使用不同的格式 |
---|---|
购买一张到西雅图的票 | 购买 1 张到西雅图的票 |
购买一张到巴黎的票 | Reserve two tickets on the red eye to Paris next Monday |
购买一张到奥兰多的票 | 我要预订 3 张到奥兰多的票,去度春假 |
第二列使用了不同的动词(购买、预订、预定)、不同的数量(1、两、3)和不同的字词排序,但表达的是相同的意向,即购买旅行的机票。
请勿为意向添加过多的语句示例
发布应用后,仅在开发生命周期过程中添加主动学习中的言语。 如果话语太过相似,请添加模式。