Preparare i dati di addestramento

Scopri come preparare i dati audio e di testo per l'ottimizzazione di un modello Speech-to-Text personalizzato nella Google Cloud console Speech. La qualità dei dati di addestramento influisce sull'efficacia dei modelli creati. Dovrai creare un set di dati diversificato che contenga un contesto audio e di testo rappresentativo direttamente pertinente a ciò a cui il modello risponderà durante il tempo di inferenza in produzione, inclusi rumore e vocabolario insolito.

Per l'addestramento efficace di un modello Speech-to-Text personalizzato, devi:

  • Almeno 100 ore di dati di addestramento audio, solo audio o con la trascrizione di testo corrispondente come dato di fatto. Questi dati sono fondamentali per la fase di addestramento iniziale, in modo che il modello apprenda le sfumature dei pattern vocali e del vocabolario. Per maggiori dettagli, consulta Creare un set di dati di dati di fatto.
  • Un set di dati separato di almeno 10 ore di dati di convalida audio, con la trascrizione di testo corrispondente come dato di fatto.

Prima di iniziare

Assicurati di aver eseguito la registrazione per un Google Cloud account, creato un Google Cloud progetto e abilitato l'API Cloud Speech-to-Text:

  1. Accedi a Cloud Storage.
  2. Crea un bucket, se non ne hai già uno.

Crea un set di dati

Per creare un set di dati, devi creare due sottodirectory nel bucket Cloud Storage di tua scelta. Segui semplici convenzioni di denominazione:

  1. Crea una sottodirectory training_dataset per archiviare tutti i file di addestramento.
  2. Crea una sottodirectory validation_dataset per archiviare tutti i file di addestramento.
  3. Carica i file audio e di testo nelle directory seguendo le linee guida per l'annotazione dei dati di fatto .

Linee guida per i set di dati

  • Per l'addestramento e la convalida, i formati file supportati sono .wav per i file audio con codifica LINEAR16 e .txt per i file di testo, se disponibili. Evita i caratteri non ASCII nei nomi dei file.
  • I file audio nella stessa directory devono essere forniti in un file TXT separato, ciascuno con lo stesso nome del file WAV corrispondente, ad esempio my_file_1.wav, my_file_1.txt. Deve essere presente un solo file di trascrizione per file audio.

Dati di addestramento

  • Tutti i file per l'addestramento devono essere forniti nella stessa directory, senza cartelle nidificate.
  • (Facoltativo) Se disponibili, fornisci le trascrizioni dei file audio. Non sono richiesti timestamp.
  • Assicurati che la durata audio cumulativa dei file audio sia superiore a 100 ore. In caso contrario, il job di addestramento non andrà a buon fine.

Di seguito è riportato un esempio di come dovrebbe apparire la struttura della directory dopo il caricamento dei file come set di dati di addestramento:

├── training_dataset
│   ├── example_1.wav
│   ├── example_1.txt
│   ├── example_2.wav
│   ├── example_2.txt
│   ├── example_3.wav (Note: Audio only instance, without corresponding text)
│   └── example_4.wav (Note: Audio only instance, without corresponding text)

Dati di convalida

  • Tutti i file per la convalida vengono forniti nella stessa directory denominata validation_dataset senza cartelle nidificate.
  • Gli audio di convalida non devono durare più di 30 secondi ciascuno.
  • Fornisci le trascrizioni dei dati di fatto per ogni file audio nella stessa directory in un file TXT separato.

Di seguito è riportato un esempio di come dovrebbe apparire la struttura della directory dopo il caricamento dei file come set di dati di convalida:

├── validation_dataset
│   ├── example_1.wav
│   ├── example_1.txt
│   ├── example_2.wav
│   └── example_2.txt

Linee guida per l'annotazione dei dati di fatto

Consulta le seguenti istruzioni di formattazione.

Numeri

I numeri cardinali e ordinali devono essere trascritti solo in cifre.

  • Audio: "A deck of cards has fifty two cards, thirteen ranks of the four suits, diamonds, hearts, and spades"
  • Testo dei dati di fatto: "Un mazzo di carte ha 52 carte, 13 ranghi dei quattro semi, quadri, cuori e picche"

Valuta e unità

Trascrivili così come sono scritti comunemente nelle impostazioni locali di trascrizione. Abbrevia tutte le unità che seguono i valori numerici. Se dal contesto è chiaro che un numero o una sequenza di numeri si riferisce a valuta o ora, formattalo di conseguenza.

Data e ora

Trascrivi nel formato comune per date e ore utilizzato nella lingua di trascrizione. Scrivi le ore nel formato hh:mm, se possibile.

Indirizzi

Trascrivi con i nomi completi di località, strade e stati, ad esempio con abbreviazioni quando vengono pronunciate esplicitamente. Le entità e le località devono essere trascritte utilizzando una virgola tra di loro.

Nomi propri e accenti

Trascrivi utilizzando l'ortografia e la punteggiatura ufficiali. Se un nome personale può avere più ortografie e il contesto non è d'aiuto, utilizza l'ortografia più frequente.

Nomi di brand, prodotti e titoli di contenuti multimediali

Trascrivili così come sono formattati ufficialmente e scritti più comunemente.

Interiezioni

Le risate o altre vocalizzazioni non vocali devono essere trascritte utilizzando fino a tre sillabe. Le risate incluse nel discorso devono essere ignorate completamente. Esempio:

  • Audio: "ha ha ha ha ha"
  • Testo dei dati di fatto: "hahaha"

Più interlocutori

Non separarli con i tag degli speaker, perché la diarizzazione in genere non è supportata.

Passaggi successivi

Consulta le risorse per sfruttare i modelli vocali personalizzati nella tua applicazione: