Melhore os resultados da transcrição com a adaptação da fala

Visão geral

É possível usar o recurso adaptação de fala para ajudar a Speech-to-Text a reconhecer palavras ou frases específicas com mais frequência do que outras opções sugeridas. Por exemplo, suponha que seus dados de áudio geralmente incluem a palavra "clima". Quando a Speech-to-Text encontra a palavra "clima", você quer transcrevê-la como "clima" com mais frequência do que "lima". Nesse caso, você pode usar a adequação de fala para criar um viés e pedir para a Speech-to-Text reconhecer o termo como "clima".

A adaptação de fala é particularmente útil para os seguintes casos de uso:

  • Melhorar a precisão de palavras e frases que ocorrem com frequência nos dados de áudio. Por exemplo, é possível criar um alerta para o modelo de reconhecimento para que identifique comandos de voz normalmente falados pelos usuários.

  • Como expandir o vocabulário das palavras reconhecidas pela Speech-to-Text. O Speech-to-Text inclui um vocabulário muito extenso. No entanto, se os dados de áudio costumam conter palavras raras no uso geral do idioma, como nomes próprios ou palavras específicas de uma área, é possível adicioná-las usando a adaptação de fala.

  • Como melhorar a precisão da transcrição de fala quando o áudio fornecido tiver ruídos ou não for muito claro.

Opcionalmente, é possível ajustar a polarização do modelo de reconhecimento usando o recurso de otimização de adaptação de fala (Beta).

Como melhorar o reconhecimento de palavras específicas

Para aumentar a probabilidade da Speech-to-Text reconhecer a palavra "clima" ao transcrever seus dados de áudio, insira "clima" no campo phrases de um objeto SpeechContext. Atribua um objeto SpeechContext ao campo speechContexts do objeto RecognitionConfig na solicitação para a API Speech-to-Text.

O snippet a seguir mostra parte de um payload JSON enviado à API Speech-to-Text. O snippet JSON fornece a palavra "clima" para adaptação de fala.

"config": {
    "encoding":"LINEAR16",
    "sampleRateHertz": 8000,
    "languageCode":"en-US",
    "speechContexts": [{
      "phrases": ["weather"]
    }]
}

Melhorar o reconhecimento de frases com várias palavras

Quando você fornece uma frase com várias palavras, a Speech-to-Text tem mais chances de reconhecer essas palavras na sequência. Fornecer uma frase também aumenta a probabilidade de reconhecimento de partes da frase, incluindo palavras individuais. Consulte a página limites de conteúdo para limites sobre o número e o tamanho dessas frases.

O snippet a seguir mostra parte de um payload JSON enviado à API Speech-to-Text. O snippet JSON inclui uma matriz de frases com várias palavras atribuída ao campo phrases de um objeto SpeechContext.

"config": {
    "encoding":"LINEAR16",
    "sampleRateHertz": 8000,
    "languageCode":"en-US",
    "speechContexts": [{
      "phrases": ["weather is hot", "weather is cold"]
    }]
}

Como melhorar o reconhecimento usando classes

As classes representam conceitos comuns que ocorrem naturalmente no idioma, como moedas e datas. Uma classe permite melhorar a precisão da transcrição para grandes grupos de palavras que mapeiam um conceito comum, mas que nem sempre incluem palavras ou frases idênticas.

Por exemplo, suponha que seus dados de áudio incluem gravações de pessoas dizendo o próprio endereço. Você pode ter uma gravação de áudio de alguém dizendo "Minha casa fica na Avenida Central, 123, quarta casa à esquerda". Nesse caso, você quer que a Speech-to-Text reconheça a primeira sequência de números ("123") como um endereço, em vez de um número ordinal ("cento e vinte e três"). No entanto, nem todas as pessoas moram na "Avenida Central, 123". Não é muito prático listar todos os endereços possíveis em um objeto SpeechContext. Em vez disso, é possível usar uma classe para indicar que um número de rua deve ser reconhecido independentemente do número. Neste exemplo, a Speech-to-Text pode transcrever frases com mais precisão, como "Avenida Central, 123" e "Avenida Beira-Mar, 987", já que ambos são reconhecidos como números de endereço.

Tokens de classe

Para usar uma classe na adaptação de fala, inclua um token de classe no campo phrases do objeto SpeechContext. Consulte a lista de tokens de classe compatíveis para ver quais tokens estão disponíveis para seu idioma. Por exemplo, para melhorar a transcrição de números de endereço de um áudio de origem, forneça o valor $ADDRESSNUM no objeto SpeechContext.

É possível usar classes como itens independentes na matriz phrases ou incorporar um ou mais tokens de classe em frases mais longas com várias palavras. Por exemplo, é possível indicar um número de endereço em uma frase maior incluindo o token de classe em uma string: ["my address is $ADDRESSNUM"]. No entanto, essa frase não ajudará em casos em que o áudio contém uma frase semelhante, mas não idêntica, como "Estou na Avenida Principal, 123". Para ajudar no reconhecimento de frases semelhantes, é importante incluir o token de classe sozinho: ["my address is $ADDRESSNUM", "$ADDRESSNUM"]. Se você usar um token de classe inválido ou malformado, a Speech-to-Text ignora o token sem mostrar um erro e ainda usa o restante da frase como contexto.

O snippet a seguir mostra um exemplo de um payload JSON enviado para a API Speech-to-Text. O snippet JSON inclui um objeto SpeechContext que usa um token de classe.

  "config": {
    "encoding":"LINEAR16",
    "sampleRateHertz": 8000,
    "languageCode":"en-US",
    "speechContexts": [{
      "phrases": ["$ADDRESSNUM"]
     }]
  }

A seguir