【问题标题】:Google Cloud Speech API word Hints谷歌云语音 API 词提示
【发布时间】:2017-03-24 21:41:53
【问题描述】:

您能否给出在 Google 云语音 API 中使用单词提示的示例。我尝试对 brook.flac 使用 Rest API 执行器。我输入短语布鲁克林(而不是布鲁克林),但结果是一样的。它们真的有效吗?

【问题讨论】:

    标签: api speech hints


    【解决方案1】:

    来自https://cloud.google.com/speech-to-text/docs/speech-adaptation

    对于任何给定的识别任务,您还可以传递一个 SpeechContext(SpeechContext 类型),它提供信息以帮助处理给定的音频。目前,上下文可以保存一个短语列表,作为识别器的“提示”;这些短语可以提高识别此类单词或短语的概率。

    您可以通过以下几种方式使用这些短语提示:

    提高您的音频数据中可能出现过多的特定字词和短语的准确性。例如,如果特定命令通常由用户说出,您可以提供这些作为短语提示。如果提供的音频包含噪声或包含的语音不是很清晰,则此类附加短语可能特别有用。 在识别任务的词汇表中添加额外的单词。 Cloud Speech API 包含一个非常大的词汇表。但是,如果专有名称或特定领域的单词超出词汇表,您可以将它们添加到提供给您请求的 SpeechContext 的短语中。 短语既可以作为小词组提供,也可以作为单个词提供。 (有关这些短语的数量和大小的限制,请参阅内容限制。)当作为多词短语提供时,提示会提高按顺序识别这些词的概率,但在较小程度上也会提高识别部分单词的概率。短语,包括单个单词。

    例如,这个 shwazil_hoful.flac 文件包含一些虚构的词。如果在没有提供这些超出词汇表的单词的情况下执行识别,则识别器将不会返回所需的转录,而是返回词汇表中的单词,例如:“it's a swing all day”。

    {
      "config": {
        "encoding":"FLAC",
        "sampleRateHertz": 16000,
        "languageCode":"en-US"
      },
      "audio":{
        "uri":"gs://speech-demo/shwazil_hoful.flac"
      }
    }
    

    但是,当识别请求提供这些词汇表外的单词时,识别器将返回所需的转录本:“这是 shwazil hoful day”。

    {
      "config": {
        "encoding":"FLAC",
        "sampleRateHertz": 16000,
        "languageCode":"en-US",
        "speechContexts": {
          "phrases":["hoful","shwazil"]
         }
      },
      "audio":{
        "uri":"gs://speech-demo/shwazil_hoful.flac"
      }
    }
    

    或者,如果某些词通常在一个短语中一起说,它们可以组合在一起,这可能会进一步增加它们被识别的信心。

    {
      "config": {
        "encoding":"FLAC",
        "sampleRateHertz": 16000,
        "languageCode":"en-US",
        "speechContexts": {
          "phrases":["shwazil hoful day"]
         }
      },
      "audio":{
        "uri":"gs://speech-demo/shwazil_hoful.flac"
      }
    }
    

    一般来说,在提供语音上下文提示时要谨慎。通过将短语限制为仅预期说出的短语,可以实现更好的识别准确性。例如,如果有多个对话状态或设备操作模式,则只提供与当前状态对应的提示,而不是总是为所有可能的状态提供提示。

    【讨论】:

    • @PavelPopov 我发现了一些东西,将包含您想要的提示词的短语指示给 Google 语音 API 比仅指示单词要好得多。 Api 可以在语音识别过程中更成功地检测到您的自定义词,即使它周围的词与您指定作为提示的短语不同。
    • 如果我有成百上千的特殊词汇(例如医学词汇)需要被识别怎么办?我应该将所有这些音频文件添加到语音上下文中吗?那么 Google 需要多长时间来处理这些文件?
    • @asmaier 你使用 kaldi kaldi-asr.org 构建了一个专门的系统,它会比 google 准确得多。
    • 您的链接已失效(或者更确切地说,不再有该文本)。新链接:cloud.google.com/speech-to-text/docs/context-strength
    猜你喜欢
    • 2023-04-09
    • 2017-03-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-11
    • 1970-01-01
    • 2017-05-01
    相关资源
    最近更新 更多