IBM Cloud Docs
将语法用于定制语言模型

将语法用于定制语言模型

IBM Watson® Speech to Text 服务支持将语法用于定制语言模型。 可以向定制语言模型添加语法,并将其用于语音识别。 语法用于限制服务可以从音频中识别的短语集。

语法使用正式的语言规范来定义一组用于转录字符串的生产规则。 这些规则指定如何通过语言的字母表来形成有效的字符串。 将语法应用于语音识别时,服务只能返回该语法生成的一个或多个短语。

例如,需要识别特定词或短语(如 yesno)、单独的字母或数字或者名称列表时,使用语法会比检查替代词和文字记录更有效。 此外,通过将搜索空间限制为搜索有效字符串,服务可以更快、更准确地交付结果。

将定制语言模型与语法一起用于语音识别时,服务可能返回根据语法确定的有效短语,也可能返回空结果。 如果结果不为空,那么服务会在最终文字记录中包含置信度分数,就像对所有识别请求所做的一样。 对于语法,分数指示的是响应与语法匹配的可能性。 误报的可能性始终存在,对于简单的语法尤其如此,因此在评估服务的响应时,必须始终考虑服务结果的置信度。

有关支持语法的语言和模型及其支持级别(一般可用或测试版)的更多信息,请参阅 自定义语言支持

支持的语法格式

Speech to Text 服务支持采用以下标准格式定义的语法:

  • 扩充巴科斯范式 (ABNF),使用类似于传统 BNF 语法的纯文本表示法。 此格式的媒体类型为 application/srgs
  • XML 格式,使用 XML 元素来表示语法。 此格式的媒体类型为 application/srgs+xml

这两种语法格式都具有上下文无关语法 (CFG) 的表达能力。 但是,服务只能对乔姆斯基谱系中的 3 型正则语法解码。 此类语法表示有限状态自动机。

有关语法的常规信息,请参阅以下维基百科页面:

Speech Recognition Grammar Specification

Speech to Text服务支持W3C 语音识别语法规范1.0版定义的语法。 该规范提供了有关受支持格式的详细信息以及有关定义语法的详细信息。 有关支持的介质类型的信息,请参阅规范 附录 G.介质类型和文件后缀

目前,服务支持该 Speech Recognition Grammar Specification 的所有功能。 具体而言,服务不支持该规范以下部分中描述的功能:

语法中的词必须采用 UTF-8 编码(ASCII 是 UTF-8 的子集)。 使用其他任何编码都可能导致编译语法时发生问题,或者在解码时产生意外结果。 服务会忽略语法头中指定的编码。