Migliorare l'accuratezza del riconoscimento vocale con elenchi di frasi
Un elenco di frasi è un elenco di parole o frasi fornite in anticipo per aiutare a migliorarne il riconoscimento. L'aggiunta di una frase a un elenco ne aumenta l'importanza, rendendo così più probabile il riconoscimento.
Gli esempi di frasi includono:
- Nomi
- Posizioni geografiche
- Omonimi
- Parole o acronimi univoci per il settore o l'organizzazione
Gli elenchi di frasi sono semplici e contenuti:
- Just-in-time: viene fornito un elenco di frasi subito prima di avviare il riconoscimento vocale, eliminando la necessità di eseguire il training di un modello personalizzato.
- Contenuti: non è necessario un set di dati di grandi dimensioni. È sufficiente fornire una parola o una frase per aumentarne il riconoscimento.
Per le impostazioni locali degli elenchi di frasi supportate, vedere Lingua e supporto vocale per il servizio Voce.
È possibile usare elenchi di frasi con Speech Studio, l'SDK di Voce o l'interfaccia della riga di comando (CLI) di Voce. L'API di trascrizione batch non supporta gli elenchi di frasi.
È possibile usare elenchi di frasi con il riconoscimento vocale standard e personalizzato. In alcune situazioni, il training di un modello personalizzato che include frasi è probabilmente l'opzione migliore per garantire l'accuratezza. Ad esempio, nei casi seguenti è possibile usare Riconoscimento vocale personalizzato:
- Nel caso di elenchi di frasi di grandi dimensioni. Un elenco non deve contenere più di 500 frasi.
- Se è necessario un elenco di frasi per le lingue al momento non supportate.
Provare in Speech Studio
È possibile usare Speech Studio per testare il modo in cui l'elenco di frasi consente di migliorare il riconoscimento per il proprio audio. Per implementare un elenco di frasi con l'applicazione in produzione, si usa l'SDK o l'interfaccia della riga di comando di Voce.
Si supponga, ad esempio, che si desideri che il servizio Voce riconosca questa frase: "Ciao Rehaan, sono Jessie della banca Contoso.
Potresti scoprire che una frase è erroneamente riconosciuta come: "Ciao a tutti, sono Jesse della banca can’t do so".
Nello scenario precedente si vuole aggiungere "Rehaan", "Jessie" e "Contoso" all'elenco di frasi. I nomi devono quindi essere riconosciuti correttamente.
Provare ora Speech Studio per vedere in che modo l'elenco di frasi può migliorare l'accuratezza del riconoscimento.
Nota
Potrebbe essere richiesto di selezionare la sottoscrizione di Azure e la risorsa Voce, quindi di confermare la fatturazione per l'area.
- Passare a Riconoscimento vocale in tempo reale in Speech Studio.
- Per testare il riconoscimento vocale, caricare un file audio o registrare l'audio con un microfono. Ad esempio, selezionare Registra l'audio con un microfono e quindi pronunciare "Ciao Rehaan, sono Jessie della banca Contoso”. Selezionare quindi il pulsante rosso per interrompere la registrazione.
- Il risultato della trascrizione verrà visualizzato nella casella di testo Risultati dei test. Se "Rehaan", "Jessie" o "Contoso" sono stati riconosciuti in modo errato, è possibile aggiungere i termini a un elenco di frasi nel passaggio successivo.
- Selezionare Mostra opzioni avanzate, quindi attivare Elenco frasi.
- Immettere "Contoso;Jessie;Rehaan" nella casella di testo dell'elenco frasi. Più frasi devono essere separate da un punto e virgola.
- Usare di nuovo il microfono per testare nuovamente il riconoscimento. In caso contrario, è possibile selezionare la freccia di ripetizione dei tentativi accanto al file audio per eseguire nuovamente l'audio. I termini "Rehaan", "Jessie" o "Contoso" devono essere riconosciuti.
Implementare un elenco di frasi
Con l'SDK di Voce è possibile aggiungere frasi singolarmente e quindi eseguire il riconoscimento vocale.
var phraseList = PhraseListGrammar.FromRecognizer(recognizer);
phraseList.AddPhrase("Contoso");
phraseList.AddPhrase("Jessie");
phraseList.AddPhrase("Rehaan");
Con l'SDK di Voce è possibile aggiungere frasi singolarmente e quindi eseguire il riconoscimento vocale.
auto phraseListGrammar = PhraseListGrammar::FromRecognizer(recognizer);
phraseListGrammar->AddPhrase("Contoso");
phraseListGrammar->AddPhrase("Jessie");
phraseListGrammar->AddPhrase("Rehaan");
Con l'SDK di Voce è possibile aggiungere frasi singolarmente e quindi eseguire il riconoscimento vocale.
PhraseListGrammar phraseList = PhraseListGrammar.fromRecognizer(recognizer);
phraseList.addPhrase("Contoso");
phraseList.addPhrase("Jessie");
phraseList.addPhrase("Rehaan");
Con l'SDK di Voce è possibile aggiungere frasi singolarmente e quindi eseguire il riconoscimento vocale.
const phraseList = sdk.PhraseListGrammar.fromRecognizer(recognizer);
phraseList.addPhrase("Contoso");
phraseList.addPhrase("Jessie");
phraseList.addPhrase("Rehaan");
Con l'SDK di Voce è possibile aggiungere frasi singolarmente e quindi eseguire il riconoscimento vocale.
phrase_list_grammar = speechsdk.PhraseListGrammar.from_recognizer(reco)
phrase_list_grammar.addPhrase("Contoso")
phrase_list_grammar.addPhrase("Jessie")
phrase_list_grammar.addPhrase("Rehaan")
Con l'interfaccia della riga di comando di Voce è possibile includere un elenco di frasi in linea o un file di testo insieme al comando di riconoscimento.
Provare il riconoscimento da un microfono o da un file audio.
spx recognize --microphone --phrases "Contoso;Jessie;Rehaan;"
spx recognize --file "your\path\to\audio.wav" --phrases "Contoso;Jessie;Rehaan;"
È anche possibile aggiungere un elenco di frasi usando un file di testo contenente una frase per riga.
spx recognize --microphone --phrases @phrases.txt
spx recognize --file "your\path\to\audio.wav" --phrases @phrases.txt
I caratteri consentiti includono lettere e cifre specifiche delle impostazioni locali, spazi vuoti e caratteri speciali, ad esempio +, -, $, :, (, ), {, }, _, ., ?, @, \, ’, &, #, %, ^, *, `, <, >, ;, /. Altri caratteri speciali vengono rimossi internamente dalla frase.
Passaggi successivi
Consultare altre opzioni per migliorare l'accuratezza del riconoscimento.