Simple Science

Scienza all'avanguardia spiegata semplicemente

# Ingegneria elettrica e scienze dei sistemi# Elaborazione dell'audio e del parlato# Suono

Migliorare il Riconoscimento Vocale per Nomi Rari

Questo metodo migliora l'accuratezza del riconoscimento per i nomi rari nei risultati vocali.

― 6 leggere min


Correzione degli erroriCorrezione degli erroridi riconoscimento deinomiriconoscimento di nomi di entità rare.Un metodo per migliorare il
Indice

Negli ultimi tempi, i sistemi che riconoscono automaticamente il parlato sono diventati abbastanza avanzati e precisi. Tuttavia, questi sistemi fanno ancora errori, soprattutto per quanto riguarda nomi di entità come persone, luoghi o canzoni che non compaiono spesso nei loro addestramenti. Insieme a questi sistemi di riconoscimento vocale, sono emersi modelli linguistici di grandi dimensioni come strumenti utili per vari compiti linguistici, incluso il correggere errori nel riconoscimento vocale.

Il Problema con i Nomi Rari

Quando i sistemi di riconoscimento vocale vengono addestrati, imparano da un sacco di dati, ma se certi nomi o termini non vengono inclusi frequentemente, il sistema fatica a riconoscerli correttamente. Questo è particolarmente un problema per gli assistenti vocali, da cui gli utenti si aspettano che capiscano una vasta gamma di nomi, inclusi quelli che non sono molto noti.

Utilizzare i Modelli Linguistici per la Correzione

I modelli linguistici di grandi dimensioni possono essere davvero efficaci quando sono abbinati a database di conoscenza rilevante. Possono estrarre informazioni da questi database per aiutarli a svolgere meglio i compiti. Questo metodo è chiamato generazione aumentata da recupero. In questo contesto, possiamo usare un metodo simile per correggere errori nel riconoscere i nomi delle entità dal parlato.

Il Nostro Approccio

Proponiamo un metodo che utilizza un database vettoriale dove memorizziamo nomi di entità rilevanti. Quando il sistema di riconoscimento vocale produce un nome potenzialmente errato, possiamo creare una query basata su quell'output. Questa query viene inviata al nostro database vettoriale per trovare i nomi di entità corretti. I nomi recuperati vengono quindi combinati con l'output originale del parlato e forniti a un modello linguistico progettato per correggere gli errori nel riconoscimento vocale.

Come Funziona

Il nostro metodo prevede quattro passaggi principali:

  1. Generazione della Query: Generiamo query dall'output vocale per trovare nomi rilevanti.
  2. Recupero delle Entità: Cerchiamo i nomi in un database usando le query generate.
  3. Costruzione del contesto: Raccogliamo il contesto necessario per aiutare il nostro modello linguistico a fare correzioni.
  4. Applicazione del Modello Linguistico: Infine, forniamo il contesto raccolto al modello linguistico, che fornisce output corretti.

Generazione delle Query

Creare query efficaci è fondamentale per recuperare i nomi giusti. Esploriamo tre modi principali per generare queste query, ognuno con i suoi pro e contro:

  • Tutti gli N-grammi: Questo metodo usa tutte le possibili sequenze di parole dall'output vocale. Anche se è semplice e non richiede regole aggiuntive, può generare troppe query, rendendo più difficile trovare quella giusta.

  • Corrispondenza di Template: Questo approccio usa schemi specifici nella lingua per identificare potenziali nomi. Anche se genera meno query, richiede di creare questi schemi manualmente, il che potrebbe far perdere alcuni nomi.

  • Tagging delle Entità Nominate: Questo metodo utilizza un modello che è stato addestrato per identificare nomi all’interno dell'output vocale. Questo è più flessibile e cattura più casi limite, ma comporta una complessità aggiuntiva, in quanto necessita di un proprio addestramento.

Recupero dei Nomi

Per il passo del recupero, dobbiamo abbinare le nostre query con i nomi nel nostro database. Abbiamo diversi metodi per questo:

  • Okapi BM25: Un metodo per classificare la rilevanza del testo.
  • T5 Semantic Embeddings: Questo metodo cattura il significato dietro le parole.
  • Acoustic Neighbor Embeddings: Questo si concentra sui suoni, che è essenziale per riconoscere i nomi in base a come vengono pronunciati.

Tra questi, gli Acoustic Neighbor Embeddings si sono rivelati i più efficaci nei nostri test.

Costruzione del Contesto

Per assicurarci che le nostre correzioni siano accurate, dobbiamo creare un contesto che includa nomi rilevanti senza sopraffare il sistema con informazioni non necessarie. Filtro i nomi recuperati in base a metriche di distanza per garantire che manteniamo solo i candidati più correlati.

Consideriamo anche due formati per le nostre stringhe di suggerimento. Una opzione include solo il nome recuperato, mentre l'altra aggiunge la query usata per trovare quel nome. Dopo aver creato questo contesto, lo presentiamo al modello linguistico.

Lavori Precedenti

Ci sono vari studi sulla correzione degli errori nel riconoscimento vocale, specialmente riguardo ai nomi. Alcuni lavori hanno esaminato come sfruttare la fonetica e le somiglianze acustiche per migliorare il riconoscimento. Tuttavia, pochi hanno incluso un passo di recupero, il che limita la loro capacità di ricordare nomi rilevanti.

Il nostro metodo semplifica il processo utilizzando codificatori generici e un modello più piccolo anziché architetture complesse. Questo consente correzioni più efficienti senza necessità di input audio, rendendo il metodo adattabile a scenari in cui sono disponibili solo output testuali.

Testare il Nostro Metodo

Per testare il nostro approccio, ci siamo concentrati su quanto migliorava il riconoscimento per nomi legati alla musica in un sistema di assistente vocale. Abbiamo usato diverse fonti di dati, incluso un dataset ampiamente riconosciuto che include vari domini. Abbiamo anche creato query musicali sintetiche per ampliare il nostro dataset e garantire di poter testare il nostro metodo con una gamma di nomi comuni e rari.

Abbiamo addestrato i nostri sistemi per riconoscere diverse entità e abbiamo valutato le loro prestazioni in base a quanto accuratamente trascrivevano i nomi.

Risultati del Test

Attraverso i nostri test, abbiamo misurato quanto bene il nostro sistema ha funzionato in termini di Tasso di errore delle parole (WER). Abbiamo prima confrontato vari metodi per generare chiavi e query e abbiamo scoperto che gli Acoustic Neighbor Embeddings hanno superato significativamente gli altri, ottenendo tassi di successo molto più elevati.

Successivamente, abbiamo provato diverse strategie per adattare il nostro modello linguistico al nostro compito specifico. Abbiamo trovato che un modello di adattamento più piccolo ha funzionato altrettanto bene di quelli più grandi, rendendolo più efficiente.

Quando abbiamo applicato le nostre tecniche di Generazione di query, abbiamo notato miglioramenti nel WER quando utilizzavamo suggerimenti per entità nominate. Anche quando non fornivamo suggerimenti, abbiamo visto comunque piccoli guadagni, il che suggeriva che il nostro sistema stava effettuando correzioni in modo efficace da solo.

Dare Senso ai Risultati

I risultati migliori che abbiamo ottenuto hanno mostrato riduzioni significative nel WER attraverso vari test. L'efficacia del nostro metodo è stata particolarmente evidente quando si trattava di affrontare nomi rari in query legate alla musica. È importante sottolineare che abbiamo assicurato che le nostre correzioni non influenzassero negativamente la capacità del sistema di comprendere i nomi in altri ambiti.

Conclusione

In conclusione, abbiamo presentato un metodo semplice per correggere gli errori nel riconoscimento dei nomi dagli output vocali. Incorporando un passo di recupero insieme a un modello linguistico adattato, abbiamo migliorato l'accuratezza del riconoscimento per nomi di entità rari. Le nostre scoperte dimostrano che sfruttare somiglianze acustiche può portare a miglioramenti significativi nella comprensione, in particolare per assistenti vocali che servono utenti con richieste di nomi diverse e potenzialmente poco comuni.

Fonte originale

Titolo: Retrieval Augmented Correction of Named Entity Speech Recognition Errors

Estratto: In recent years, end-to-end automatic speech recognition (ASR) systems have proven themselves remarkably accurate and performant, but these systems still have a significant error rate for entity names which appear infrequently in their training data. In parallel to the rise of end-to-end ASR systems, large language models (LLMs) have proven to be a versatile tool for various natural language processing (NLP) tasks. In NLP tasks where a database of relevant knowledge is available, retrieval augmented generation (RAG) has achieved impressive results when used with LLMs. In this work, we propose a RAG-like technique for correcting speech recognition entity name errors. Our approach uses a vector database to index a set of relevant entities. At runtime, database queries are generated from possibly errorful textual ASR hypotheses, and the entities retrieved using these queries are fed, along with the ASR hypotheses, to an LLM which has been adapted to correct ASR errors. Overall, our best system achieves 33%-39% relative word error rate reductions on synthetic test sets focused on voice assistant queries of rare music entities without regressing on the STOP test set, a publicly available voice assistant test set covering many domains.

Autori: Ernest Pusateri, Anmol Walia, Anirudh Kashi, Bortik Bandyopadhyay, Nadia Hyder, Sayantan Mahinder, Raviteja Anantha, Daben Liu, Sashank Gondala

Ultimo aggiornamento: 2024-09-09 00:00:00

Lingua: English

URL di origine: https://arxiv.org/abs/2409.06062

Fonte PDF: https://arxiv.org/pdf/2409.06062

Licenza: https://creativecommons.org/licenses/by/4.0/

Modifiche: Questa sintesi è stata creata con l'assistenza di AI e potrebbe presentare delle imprecisioni. Per informazioni accurate, consultare i documenti originali collegati qui.

Si ringrazia arxiv per l'utilizzo della sua interoperabilità ad accesso aperto.

Altro dagli autori

Articoli simili