Préparer les données d'entraînement

Découvrez comment préparer vos données audio et textuelles pour affiner un modèle Speech-to-Text personnalisé dans la console Speech Google Cloud . La qualité de vos données d'entraînement influe sur l'efficacité des modèles que vous créez. Vous devrez composer un ensemble de données varié contenant du contexte audio et textuel représentatif qui a une pertinence directe pour ce à quoi devra répondre le modèle pendant l'inférence en production (y compris du bruit et du vocabulaire inhabituel).

Pour entraîner efficacement un modèle Speech-to-Text personnalisé, vous avez besoin de ce qui suit :

  • Au moins 100 heures de données audio d'entraînement. Il peut s'agir d'audio seul ou d'audio avec transcription textuelle correspondante comme vérité terrain. Ces données sont essentielles pour la phase d'entraînement initiale, car elles permettent au modèle d'apprendre les nuances des schémas vocaux et du vocabulaire. Pour en savoir plus, consultez Créer un ensemble de données de vérité terrain.
  • Un ensemble de données distinct d'au moins 10 heures audio de données de validation, avec la transcription textuelle correspondante comme vérité terrain.

Avant de commencer

Assurez-vous d'avoir créé un compte Google Cloud , d'avoir créé un projet Google Cloudet d'avoir activé l'API Cloud Speech-to-Text :

  1. Accédez à Cloud Storage.
  2. Créez un bucket si vous n'en avez pas déjà un.

Créer un ensemble de données

Pour créer un ensemble de données, vous devez créer deux sous-répertoires dans le bucket Cloud Storage de votre choix. Respectez des conventions d'attribution de noms simples :

  1. Créez un sous-répertoire training_dataset où stocker tous vos fichiers d'entraînement.
  2. Créez un sous-répertoire validation_dataset où stocker tous vos fichiers d'entraînement.
  3. Importez vos fichiers audio et texte dans les répertoires en suivant les consignes pour les annotations de vérité terrain.

Consignes pour les ensembles de données

  • Pour l'entraînement et la validation, les formats de fichier pris en charge sont .wav pour les fichiers audio au format d'encodage LINEAR16 et .txt pour les fichiers texte, le cas échéant. Évitez les caractères non ASCII dans les noms de fichiers.
  • Les fichiers audio d'un même répertoire doivent être fournis dans un fichier TXT distinct, chacun portant le même nom que le fichier WAV correspondant (par exemple, my_file_1.wav, my_file_1.txt). Il ne doit y avoir qu'un seul fichier de transcription par fichier audio.

Données d'entraînement

  • Tous les fichiers d'entraînement doivent être fournis dans le même répertoire, sans dossiers imbriqués.
  • Facultatif : Fournissez les transcriptions des fichiers audio si elles sont disponibles. Aucun code temporel n'est requis.
  • Assurez-vous que la durée audio cumulée de vos fichiers audio est supérieure à 100 heures. Sinon, le job d'entraînement échouera.

Voici un exemple de structure de répertoires après l'importation des fichiers en tant qu'ensemble de données d'entraînement :

├── 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)

Données de validation

  • Tous les fichiers de validation se trouvent dans le même répertoire nommé validation_dataset, sans dossiers imbriqués.
  • Les contenus audio de validation ne doivent pas dépasser 30 secondes chacun.
  • Fournissez des transcriptions de vérité terrain pour chaque fichier audio d'un même répertoire dans un fichier TXT distinct.

Voici un exemple de structure de répertoires après l'importation des fichiers en tant qu'ensemble de données de validation :

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

Consignes pour les annotations de vérité terrain

Consultez les instructions de mise en forme suivantes.

Nombres

Les nombres cardinaux et ordinaux doivent être transcrits uniquement en chiffres.

  • Audio : "Un jeu de cartes contient cinquante-deux cartes, à savoir treize valeurs dans chacune des quatre enseignes carreau, cœur, pique et trèfle"
  • Texte de vérité terrain: "Un jeu de cartes contient 52 cartes, à savoir 13 valeurs dans chacune des 4 enseignes carreau, cœur, pique et trèfle"

Devises et unités

Transcrivez-les conformément aux règles de transcription régionales. Transcrivez sous une forme abrégée toutes les unités qui suivent des valeurs numériques. Si le contexte indique clairement qu'un nombre ou une séquence de chiffres fait référence à un prix ou à une valeur temporelle, formatez-le comme il se doit.

Date et heure

Transcrivez les dates et les heures dans le format couramment utilisé dans la langue de transcription. Si possible, écrivez les heures au format hh:mm.

Adresses

Transcrivez les noms complets des lieux, routes, États etc. N'utilisez leurs abréviations que lorsqu'elles sont explicitement prononcés par le locuteur. Pour transcrire une entité et le lieu associé, utilisez une virgule entre les deux termes.

Noms propres et accents

Transcrivez en utilisant l'orthographe et la ponctuation officielles. Si un nom personnel peut avoir plusieurs orthographes et que le contexte n'indique pas laquelle utiliser, utilisez l'orthographe la plus fréquente.

Marques, noms de produits et contenus multimédias

Transcrivez-les selon leur format officiel et leur forme la plus courante.

Interjections

Les rires et autres sons sans parole doivent être transcrits avec un maximum de trois syllabes. Les rires inclus dans la parole doivent être complètement ignorés. Exemple :

  • Audio : "ha ha ha ha ha"
  • Texte de vérité terrain : "hahaha"

Plusieurs locuteurs

Ne les séparez pas avec des tag de locuteur, car l'identification du locuteur n'est généralement pas prise en charge.

Étape suivante

Suivez les ressources suivantes pour utiliser les modèles de reconnaissance vocale personnalisés dans votre application :