Melhorar a precisão do reconhecimento com uma lista de frases
Uma lista de frases é uma lista de palavras ou frases fornecidas com antecedência para ajudar a melhorar seu reconhecimento. Adicionar uma frase a uma lista de frases aumenta sua importância, tornando-a mais provável de ser reconhecida.
Exemplos de frases incluem:
- Nomes
- Localizações geográficas
- Homônimos
- Palavras ou acrônimos exclusivos para seu setor ou organização
As listas de frases são simples e leves:
- Just-In-Time: uma lista de frases é fornecida logo 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.
Para localidades de lista de frases com suporte, consulte Suporte de idioma e voz para o serviço de Fala.
Você pode usar listas de frases com o Speech Studio, o SDK de Fala ou a CLI (Interface de Linha de Comando) de Fala. A API de transcrição do Lote não dá suporte a listas de frases.
É possível usar listas de frases com fala personalizada e padrão. Há algumas situações em que o treinamento de um modelo personalizado que inclui frases é, provavelmente, a melhor opção para melhorar a precisão. Por exemplo, nos seguintes casos, você usaria a fala personalizada:
- Se você precisar usar uma lista grande 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 têm suporte no momento.
Experimente-a no Speech Studio
Você pode usar o Speech Studio para testar como a lista de frases ajudaria a melhorar o reconhecimento para 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: "Oi Rehaan, sou a Jessie do banco Contoso".
Talvez você descubra que uma frase é reconhecida incorretamente como: "Olá a todos, eu sou a Jesse do não posso fazer banco."
No cenário anterior, você gostaria de adicionar "Rehaan", "Jéssica" e "Contoso" à sua lista de frases. Em seguida, os nomes devem ser reconhecidos corretamente.
Agora, teste o Speech Studio para ver como a lista de frases pode melhorar a precisão do reconhecimento.
Observação
Você pode ser solicitado a selecionar sua assinatura do Azure e o recurso de Fala e, em seguida, confirmar a cobrança para sua região.
- Vá para Reconhecimento de fala em tempo real no Speech Studio.
- Teste o reconhecimento de fala carregando um arquivo de áudio ou gravando áudio com um microfone. Por exemplo, selecione gravar áudio com um microfone e, em seguida, diga "Oi Rehaan, sou a Jéssica do banco Contoso. " Em seguida, selecione o botão vermelho para interromper a gravação.
- Você deverá ver o resultado da transcrição na caixa de texto Resultado do teste. Se "Rehaan", "Jessie" ou "Contoso" forem reconhecidos incorretamente, você poderá adicionar os termos a uma lista de frases na próxima etapa.
- Selecione Mostrar opções avançadas e ative a Lista de frases.
- Insira "Contoso;Jessie;Rehaan" na caixa de texto da lista de frases. Se houver mais de uma frase, elas precisam ser separadas por um ponto-e-vírgula.
- Use o microfone para testar o reconhecimento novamente. Caso contrário, você pode selecionar a seta de nova tentativa 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 de reconhecimento.
Tente o reconhecimento a partir de um microfone ou de um arquivo 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 contenha 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 do local, caracteres de espaço em branco e caracteres especiais, como +, -, $, :, (, ), {, }, _, ., ?, @, \, ’, &, #, %, ^, *, `, <, >, ;, /. Outros caracteres especiais são removidos internamente da frase.
Próximas etapas
Confira mais opções para aprimorar a precisão do reconhecimento.