Procedure consigliate per il training del modello di riconoscimento vocale

Nota

La personalizzazione del modello di riconoscimento vocale, incluso il training della pronuncia, è disponibile negli account di valutazione di Video Indexer di Azure e negli account di Resource Manager. Gli account classici non supportano questa funzionalità. Per informazioni su come usare l'esperienza di linguaggio personalizzata, vedere Personalizzare un modello linguistico.

Tramite l'integrazione di Video Indexer di Azure AI con i servizi di riconoscimento vocale di Azure AI, un modello di lingua universale viene utilizzato come modello di base, addestrato con dati di proprietà Microsoft e riflette l'uso comune della lingua parlata. Il modello di base è sottoposto a training preliminare con dialetti e fonetici che rappresentano vari domini comuni. Il modello di base funziona bene nella maggior parte degli scenari di riconoscimento vocale.

Tuttavia, a volte la trascrizione del modello di base non gestisce in modo accurato alcuni contenuti. In queste situazioni, è possibile usare un modello di riconoscimento vocale personalizzato per migliorare il riconoscimento del vocabolario o della pronuncia specifico del dominio specifico del contenuto fornendo dati di testo per eseguire il training del modello. Tramite il processo di creazione e adattamento dei modelli di personalizzazione vocale, il contenuto può essere trascritto correttamente. Non è previsto alcun costo aggiuntivo per l'uso della personalizzazione del riconoscimento vocale di Video Indexer per intelligenza artificiale di Azure.

Quando usare un modello di riconoscimento vocale personalizzato

Se il contenuto contiene terminologia specifica del settore o quando i risultati della trascrizione presentano imprecisioni, è possibile creare ed eseguire il training di un modello di riconoscimento vocale personalizzato. Può riconoscere i termini e migliorare la qualità della trascrizione. Potrebbe essere utile creare un modello personalizzato solo se si prevede che le parole e i nomi pertinenti vengano visualizzati ripetutamente nel contenuto che si prevede di indicizzare. Il training di un modello a volte è un processo iterativo. Dopo il training iniziale, è possibile che i risultati possano usare il miglioramento e che siano necessari altri training, vedere la sezione Migliorare il modello personalizzato per indicazioni.

Se alcuni nomi o parole vengono usati raramente nel contenuto, non è necessario un modello di riconoscimento vocale personalizzato. È invece possibile modificare e correggere manualmente la trascrizione direttamente nel sito Web di Azure AI Video Indexer. Per termini più frequenti o specifici del dominio, è consigliabile creare un modello di riconoscimento vocale personalizzato per migliorare l'accuratezza della trascrizione. Per altre informazioni sulla modifica e sulla correzione delle trascrizioni, vedere Visualizzare e aggiornare le trascrizioni nel sito Web di Azure AI Video Indexer.

Per un elenco delle lingue che supportano modelli e pronuncia personalizzati, vedere le colonne Personalizzazione e pronuncia della tabella di supporto della lingua in Supporto della lingua in Azure AI Video Indexer.

Eseguire il training dei set di dati

Quando si indicizza un video, è possibile usare un modello di riconoscimento vocale personalizzato per migliorare la trascrizione. I modelli vengono sottoposti a training caricandoli con set di dati che possono includere dati di testo normale e dati di pronuncia.

Il testo usato per testare ed eseguire il training di un modello personalizzato deve includere esempi di un set diversificato di contenuto e scenari che si desidera che il modello riconosca. Quando si creano e si esegue il training dei set di dati, tenere presenti i fattori seguenti:

  • Includere testo che copre i tipi di istruzioni verbali che gli utenti effettuano quando interagiscono con il modello. Ad esempio, se il contenuto è principalmente correlato a uno sport, eseguire il training del modello con contenuto contenente terminologia e materia relativa allo sport.
  • Includere tutte le varianze vocali che si desidera che il modello riconosca. Molti fattori possono variare il parlato, tra cui accenti, dialetti e combinazioni linguistiche.
  • Includere solo i dati rilevanti per il contenuto che si prevede di trascrivere. L'inclusione di altri dati può danneggiare la qualità complessiva del riconoscimento.

Tipi di set di dati

Esistono due tipi di set di dati che è possibile usare per la personalizzazione. Per determinare quale set di dati usare per risolvere i problemi, vedere la tabella seguente:

Caso d'uso Tipo di dati
Migliorare l'accuratezza del riconoscimento su vocabolario e grammatica specifici del settore, ad esempio terminologia medica o gergo IT. Testo normale
Definire la forma fonetica e visualizzata di una parola o di un termine con pronuncia non standard, ad esempio nomi di prodotto o acronimi. Dati di pronuncia

Dati di testo normale per il training

È possibile usare un set di dati che include frasi di testo normale di testo correlato per migliorare il riconoscimento di parole e frasi specifiche del dominio. Le frasi di testo correlate possono ridurre gli errori di sostituzione correlati al mancato riconoscimento di parole comuni e parole specifiche del dominio visualizzandoli nel contesto. Le parole specifiche del dominio possono essere parole non comuni o composte, ma la loro pronuncia deve essere semplice da riconoscere.

Procedure consigliate per set di dati di testo normale

  • Specificare frasi correlate al dominio in un singolo file di testo. Invece di usare frasi complete, è possibile caricare un elenco di parole. Tuttavia, mentre li aggiunge al vocabolario, non insegna al sistema come vengono normalmente usate le parole. Se si forniscono espressioni complete o parziali, ovvero frasi comunemente usate dagli utenti, il modello linguistico può apprendere le nuove parole e come vengono usate. Il modello linguistico personalizzato è utile non solo per aggiungere nuove parole nel sistema ma anche per modificare la probabilità di parole note per l'applicazione. L'indicazione di espressioni complete favorisce l'apprendimento da parte del sistema.
  • Usare i dati di testo vicini alle espressioni pronunciate previste. Le espressioni non devono essere complete o grammaticalmente corrette, ma devono riflettere con precisione l'input parlato previsto dal modello.
  • Provare ad avere ogni frase o parola chiave in una riga separata.
  • Per aumentare il peso di un termine, ad esempio i nomi dei prodotti, aggiungere diverse frasi che includono il termine.
  • Per le frasi comuni usate nel contenuto, fornire molti esempi è utile perché indica al sistema di ascoltare questi termini. 
  • Evitare di includere simboli non comuni (~, # @ % &) perché vengono scartati. Anche le frasi in cui vengono visualizzate vengono eliminate.
  • Evitare di inserire input troppo grandi, ad esempio centinaia di migliaia di frasi, perché in questo modo si diluisce l'effetto di potenziamento.

Usare questa tabella per assicurarsi che il file del set di dati di testo normale sia formattato correttamente:

Proprietà Valore
Codifica testo DBA UTF-8
Numero di espressioni per riga 1
Dimensione massima dei file 200 MB

Provare a seguire queste linee guida nei file di testo normale:

  • Evitare di ripetere caratteri, parole o gruppi di parole più di tre volte, ad esempio yeah yeah yeah yeah il servizio potrebbe eliminare righe con troppe ripetizioni.
  • Non usare caratteri speciali o caratteri UTF-8 superiori a U+00A1.
  • Gli URI vengono respinti.
  • Per alcune lingue, ad esempio giapponese o coreano, l'importazione di grandi quantità di dati di testo può richiedere molto tempo o può verificarsi un timeout. È consigliabile dividere il set di dati in più file di testo con un massimo di 20.000 righe in ognuno.

Dati di pronuncia per il training

È possibile aggiungere al modello di riconoscimento vocale personalizzato un set di dati di pronuncia personalizzato per migliorare il riconoscimento di parole, frasi o nomi non annunciati.

I dati di pronuncia devono includere la forma parlata di una parola o di una frase e la forma visualizzata riconosciuta. La forma parlata è la sequenza fonetica specificata, ad esempio Triple A. Può essere composto da lettere, parole, sillabe o una combinazione di tutti e tre. Il modulo visualizzato riconosciuto è il modo in cui si desidera che la parola o la frase venga visualizzata nella trascrizione. Questa tabella include alcuni esempi:

Modulo visualizzato riconosciuto Forma parlata
D-3BO C-3PO
CNTK c n t k
AAA Tripla A

I set di dati di pronuncia vengono forniti in un singolo file di testo. Includere l'espressione parlata e una pronuncia personalizzata per ognuna. Ogni riga del file deve iniziare con il modulo riconosciuto, quindi un carattere di tabulazioni e quindi la sequenza fonetica delimitata da spazi.

3CPO    three c p o 
CNTK    c n t k 
IEEE    i triple e 

Quando si creano e si addestrano set di dati di pronuncia per l'addestramento, tenere presente quanto segue:

Ti sconsigliamo di usare file di pronuncia personalizzati per modificare la pronuncia delle parole comuni.

Se sono presenti alcune varianti del modo in cui una parola o un nome viene trascritto in modo non corretto, è consigliabile usare alcuni o tutti durante il training del set di dati di pronuncia. Ad esempio, se Robert viene menzionato cinque volte nel video e trascritto come Robort, Roperte robbers. È possibile provare a includere tutte le varianti nel file come nell'esempio seguente, ma bisogna fare attenzione durante l'addestramento con parole reali come robbers, perché se nel video viene menzionato robbers, viene trascritto come Robert.

Robert Roport
Robert Ropert
Robert Robbers

Il modello di pronuncia non è destinato agli acronimi. Ad esempio, se si vuole che Doctor sia trascritto come Dr., non può essere ottenuto tramite un modello di pronuncia.

Fare riferimento alla tabella seguente per assicurarsi che i file del set di dati di pronuncia siano validi e formattati correttamente.

Proprietà Valore
Codifica testo UTF-8 BOM (per l'inglese è supportato anche ANSI)
Numero di pronunce per riga 1
Dimensione massima dei file 1 MB (1 kB per il livello gratuito)

Migliorare i modelli personalizzati

Il training di un modello di pronuncia può essere un processo iterativo, perché è possibile acquisire maggiori informazioni sulla pronuncia dell'oggetto dopo il training iniziale e la valutazione dei risultati del modello. I modelli esistenti non possono essere modificati. Il training di un modello in modo iterativo richiede la creazione e il caricamento di set di dati con altre informazioni. È necessario anche eseguire il training di nuovi modelli personalizzati in base ai nuovi set di dati. È quindi necessario reindicizzare i file multimediali con il nuovo modello di riconoscimento vocale personalizzato.

Esempio:

Si supponga di pianificare l'indicizzazione dei contenuti sportivi e prevedere problemi di accuratezza della trascrizione con terminologia sportiva specifica, nonché nei nomi di giocatori e allenatori. Prima dell'indicizzazione, è stato creato un modello di riconoscimento vocale con un set di dati di testo normale. Contiene terminologia sportiva pertinente e un set di dati di pronuncia con alcuni nomi dei giocatori e degli allenatori. Si indicizzano alcuni video usando il modello di riconoscimento vocale personalizzato e quando si esamina la trascrizione generata, si scopre che, mentre la terminologia viene trascritta correttamente, molti nomi non lo sono. È possibile eseguire i passaggi seguenti per migliorare le prestazioni in futuro:

  1. Esaminare la trascrizione e prendere nota di tutti i nomi trascritti in modo non corretto. Potrebbero rientrare in due gruppi:

    • Nomi non presenti nel file di pronuncia.
    • I nomi sono nel file di pronuncia, ma risultano ancora trascritti erroneamente.
  2. Creare un nuovo file del set di dati. Scaricare il file del set di dati di pronuncia o modificare l'originale salvato in locale. Per il gruppo A, aggiungere i nuovi nomi al file con come sono stati trascritti erroneamente (Michael Mikel). Per il gruppo B, aggiungere altre righe con ogni riga con il nome corretto e un esempio univoco di come fosse trascritto in modo non corretto. Ad esempio:

    Stephen Steven
    Stephen Steafan
    Stephen Steevan

  3. Caricare questo file come un nuovo file di dataset.

  4. Creare un nuovo modello di riconoscimento vocale e aggiungere il set di dati originale di testo normale e il nuovo file del set di dati di pronuncia.

  5. Reindicizzare il video con il nuovo modello di riconoscimento vocale.

  6. Se necessario, ripetere i passaggi da 1 a 5 fino a quando i risultati siano soddisfacenti.