Melhore a precisão do reconhecimento com a lista de frases

Uma lista de frases é uma lista de palavras ou frases fornecida com antecedência para ajudar a melhorar o seu reconhecimento. Adicionar uma frase a uma lista de frases aumenta a sua importância, tornando-a mais provável de ser reconhecida.

Para obter as localidades da lista de frases suportadas, consulte Suporte de idioma e voz para o serviço de Fala.

Exemplos de frases incluem:

  • Nomes
  • Localizações geográficas
  • Homónimos
  • Palavras ou acrónimos exclusivos da sua indústria ou organização

As listas de frases são simples e leves:

  • Just-in-time: Uma lista de frases é fornecida pouco antes de iniciar o reconhecimento de fala, eliminando a necessidade de treinar um modelo personalizado.
  • Leve: você não precisa de um grande conjunto de dados. Forneça uma palavra ou frase para aumentar o seu reconhecimento.

Você pode usar listas de frases com o Speech Studio, o Speech SDK ou a CLI (Speech Command Line Interface). A API de transcrição em lote não suporta listas de frases.

Você pode usar listas de frases com fala padrão e personalizada. Há algumas situações em que treinar um modelo personalizado que inclui frases é provavelmente a melhor opção para melhorar a precisão. Por exemplo, nos seguintes casos, você usaria fala personalizada:

  • Se você precisar usar uma grande lista de frases. Uma lista de frases não deve ter mais de 500 frases.
  • Se você precisar de uma lista de frases para idiomas que não são suportados no momento.

Experimente no Speech Studio

Você pode usar o Speech Studio para testar como a lista de frases ajudaria a melhorar o reconhecimento do seu áudio. Para implementar uma lista de frases com seu aplicativo em produção, use o SDK de fala ou a CLI de fala.

Por exemplo, digamos que você queira que o serviço de Fala reconheça esta frase: "Olá Rehaan, sou Jessie do banco Contoso".

Você pode achar que uma frase é incorretamente reconhecida como: "Olá a todos, eu sou Jesse de não posso fazer isso banco."

No cenário anterior, convém adicionar "Rehaan", "Jessie" e "Contoso" à sua lista de frases. Em seguida, os nomes devem ser reconhecidos corretamente.

Agora experimente o Speech Studio para ver como a lista de frases pode melhorar a precisão do reconhecimento.

Nota

Poderá ser-lhe pedido para selecionar a sua subscrição do Azure e o recurso de Voz e, em seguida, confirmar a faturação da sua região.

  1. Vá para Fala em tempo real para texto no Speech Studio.
  2. Você testa o reconhecimento de fala carregando um arquivo de áudio ou gravando áudio com um microfone. Por exemplo, selecione gravar áudio com um microfone e diga "Olá Rehaan, sou Jessie do banco Contoso. " Em seguida, selecione o botão vermelho para parar a gravação.
  3. Você deve ver o resultado da transcrição na caixa de texto Resultados do teste . Se "Rehaan", "Jessie" ou "Contoso" foram reconhecidos incorretamente, você pode adicionar os termos a uma lista de frases na próxima etapa.
  4. Selecione Mostrar opções avançadas e ative a Lista de frases.
  5. Digite "Contoso; Jéssica; Rehaan" na caixa de texto da lista de frases. Várias frases precisam ser separadas por ponto-e-vírgula. Screenshot of a phrase list applied in Speech Studio.
  6. Use o microfone para testar o reconhecimento novamente. Caso contrário, você pode selecionar a seta de repetição ao lado do arquivo de áudio para executar novamente o áudio. Os termos "Rehaan", "Jessie" ou "Contoso" devem ser reconhecidos.

Implementar lista de frases

Com o SDK de fala, você pode adicionar frases individualmente e, em seguida, executar o reconhecimento de fala.

var phraseList = PhraseListGrammar.FromRecognizer(recognizer);
phraseList.AddPhrase("Contoso");
phraseList.AddPhrase("Jessie");
phraseList.AddPhrase("Rehaan");

Com o SDK de fala, você pode adicionar frases individualmente e, em seguida, executar o reconhecimento de fala.

auto phraseListGrammar = PhraseListGrammar::FromRecognizer(recognizer);
phraseListGrammar->AddPhrase("Contoso");
phraseListGrammar->AddPhrase("Jessie");
phraseListGrammar->AddPhrase("Rehaan");

Com o SDK de fala, você pode adicionar frases individualmente e, em seguida, executar o reconhecimento de fala.

PhraseListGrammar phraseList = PhraseListGrammar.fromRecognizer(recognizer);
phraseList.addPhrase("Contoso");
phraseList.addPhrase("Jessie");
phraseList.addPhrase("Rehaan");

Com o SDK de fala, você pode adicionar frases individualmente e, em seguida, executar o reconhecimento de fala.

const phraseList = sdk.PhraseListGrammar.fromRecognizer(recognizer);
phraseList.addPhrase("Contoso");
phraseList.addPhrase("Jessie");
phraseList.addPhrase("Rehaan");

Com o SDK de fala, você pode adicionar frases individualmente e, em seguida, executar o reconhecimento de fala.

phrase_list_grammar = speechsdk.PhraseListGrammar.from_recognizer(reco)
phrase_list_grammar.addPhrase("Contoso")
phrase_list_grammar.addPhrase("Jessie")
phrase_list_grammar.addPhrase("Rehaan")

Com a CLI de fala, você pode incluir uma lista de frases em linha ou com um arquivo de texto junto com o comando reconheça.

Experimente o reconhecimento a partir de um microfone ou de um ficheiro de áudio.

spx recognize --microphone --phrases "Contoso;Jessie;Rehaan;"
spx recognize --file "your\path\to\audio.wav" --phrases "Contoso;Jessie;Rehaan;"

Você também pode adicionar uma lista de frases usando um arquivo de texto que contém uma frase por linha.

spx recognize --microphone --phrases @phrases.txt
spx recognize --file "your\path\to\audio.wav" --phrases @phrases.txt

Os caracteres permitidos incluem letras e dígitos específicos da localidade, caracteres de espaço em branco e caracteres especiais, como +, -, $, :, (, ), {, }, _, ., ?, @, \, ', &, #, %, ^, *, ', , , ;, <>/. Outros caracteres especiais são removidos internamente da frase.

Próximos passos

Confira mais opções para melhorar a precisão do reconhecimento.