0

我正在向预建模型添加一些特定于领域的单词,并且这些单词被正确识别,但它们没有按照我在转录中指定的大小写(使用音频+人工标签训练模型)

任何文档中都没有提及如何处理或如何准备训练数据,也没有提及使这成为可能所需的数据量。

如何使用 Azure 认知服务语音工作室指定单词应大写?

4

1 回答 1

0

结帐文本规范化选项。文本规范化是一种修改语音引擎规范化文本方式的能力。例如,当用户说“我想订购 2 个 4 块鸡块”时。它可以被识别为“两个四块”(默认)或“2 个四块”(反向文本规范化,或 ITN)。

以下规范化规则会自动应用于转录:

  • 使用小写字母。
  • 删除单词中除撇号以外的所有标点符号。
  • 将数字扩展为文字/口头形式,例如美元金额。

要选择不同的文本规范化选项,您需要修改集成代码,如下所示:

  renderWebChat({
    directLine: createDirectLine({
      secret: 'YOUR_DIRECT_LINE_SECRET'
    }),
    language: 'en-US',
    webSpeechPonyfillFactory: await createCognitiveServicesSpeechServicesPonyfillFactory({
      credentials: {
        region: 'YOUR_REGION',
        subscriptionKey: 'YOUR_SUBSCRIPTION_KEY'
      },
      textNormalization: 'itn'
    })
  }, document.getElementById('webchat'));

支持的文本规范化选项是“display”(默认)、“itn”、“lexical”和“maskeditn”。

在 Speech Studio 中创建项目后,请使用 REST API 引用您在应用程序中创建的资产。 发音评估参数设置EnableMiscue: true。您可能会在 REST 请求的查询字符串中包含参数:

参数:format (设置详细) 指定结果格式。可接受的值为simpledetailed。简单结果包括RecognitionStatusDisplayTextOffsetDuration详细响应包括显示文本的四种不同表示。默认设置是simple

详细识别的典型响应:(服务还需要音频数据,此示例中未包含该数据。)

{
  "RecognitionStatus": "Success",
  "Offset": "1236645672289",
  "Duration": "1236645672289",
  "NBest": [
    {
      "Confidence": 0.9052885,
      "Display": "What's the weather like?",
      "ITN": "what's the weather like",
      "Lexical": "what's the weather like",
      "MaskedITN": "what's the weather like"
    },
    {
      "Confidence": 0.92459863,
      "Display": "what is the weather like",
      "ITN": "what is the weather like",
      "Lexical": "what is the weather like",
      "MaskedITN": "what is the weather like"
    }
  ]
}

在使用语音数据进行训练时,(音频 + 人工标记的成绩单)在 pronunciation.txt 中添加您的特定领域的单词,如下所示。(如果你能具体分享你的话,我可以提供帮助)

在此处输入图像描述

在此处输入图像描述

响应参数结果以 JSON 格式提供。您可以参考的一些领域是:

参数:显示文本

经过大写、标点符号、反向文本规范化(将口语文本转换为更短的形式,例如“200”的 200 或“史密斯医生”的“Dr. Smith”)和亵渎掩蔽后的识别文本。仅在成功时呈现。使用详细格式时,为 NBest 列表中的每个结果提供 DisplayText 作为 Display。

NBest 列表中的对象可以包括:

参数:ITN

已识别文本的逆文本规范化(“规范”)形式,带有电话号码、数字、缩写(“doctor smith”到“dr smith”)和其他应用的转换。

参数:显示

已识别文本的显示形式,添加了标点符号和大小写。此参数与 format 设置为 simple 时提供的 DisplayText 相同。

发音评估识别的典型反应:

{
  "RecognitionStatus": "Success",
  "Offset": "400000",
  "Duration": "11000000",
  "NBest": [
      {
        "Confidence" : "0.87",
        "Lexical" : "good morning",
        "ITN" : "good morning",
        "MaskedITN" : "good morning",
        "Display" : "Good morning.",
        "PronScore" : 84.4,
        "AccuracyScore" : 100.0,
        "FluencyScore" : 74.0,
        "CompletenessScore" : 100.0,
        "Words": [
            {
              "Word" : "Good",
              "AccuracyScore" : 100.0,
              "ErrorType" : "None",
              "Offset" : 500000,
              "Duration" : 2700000
            },
            {
              "Word" : "morning",
              "AccuracyScore" : 100.0,
              "ErrorType" : "None",
              "Offset" : 5300000,
              "Duration" : 900000
            }
        ]
      }
  ]
}

参考:Speech-to-text REST API v3.0评估和提高自定义语音准确性训练和部署自定义语音模型美国英语文本规范化

于 2021-06-30T10:27:12.853 回答