Prepara los datos de entrenamiento

Aprende a preparar tus datos de audio y texto para ajustar un modelo personalizado de Speech-to-Text en la consola de Google Cloud Speech. La calidad de los datos de entrenamiento influye en la eficacia de los modelos que crees. Deberás componer un conjunto de datos diverso que contenga un contexto de audio y texto representativo que sea directamente relevante para lo que responderá el modelo durante el tiempo de inferencia en producción, incluido el ruido y el vocabulario inusual.

Para obtener el entrenamiento eficaz de un modelo personalizado de Speech-to-Text, necesitas lo siguiente:

  • Al menos 100 horas de audio de datos de entrenamiento, ya sea solo audio o con la transcripción de texto correspondiente como verdad fundamental. Estos datos son fundamentales para la fase de entrenamiento inicial, por lo que el modelo aprende los matices de los patrones de voz y el vocabulario. Para obtener más información, consulta Crea un conjunto de datos de verdad fundamental.
  • Un conjunto de datos separado de al menos 10 horas de audio de datos de validación, con la transcripción de texto correspondiente como verdad fundamental.

Antes de comenzar

Asegúrate de haberte registrado en una cuenta de Google Cloud, creado un proyecto de Google Cloud y habilitado la API de Speech-to-Text:

  1. Navega a Cloud Storage.
  2. Crea un bucket, si todavía no tienes uno.

Crea un conjunto de datos

Para crear un conjunto de datos, deberás crear dos subdirectorios en el bucket de Cloud Storage que elijas. Sigue las convenciones de nomenclatura sencillas:

  1. Crea un subdirectorio training_dataset para almacenar todos tus archivos de entrenamiento.
  2. Crea un subdirectorio validation_dataset para almacenar todos tus archivos de entrenamiento.
  3. Sube tus archivos de audio y texto en los directorios siguiendo los lineamientos de anotación de verdad fundamental.

Lineamientos para conjuntos de datos

  • Tanto para el entrenamiento como para la validación, los formatos de archivo compatibles son .wav para los archivos de audio con codificación LINEAR16 y .txt para los archivos de texto, si están disponibles. Evita los caracteres que no sean ASCII en los nombres de archivo.
  • Los archivos de audio en el mismo directorio deben proporcionarse en un archivo TXT independiente, cada uno con el mismo nombre que el archivo WAV correspondiente, por ejemplo, my_file_1.wav, my_file_1.txt. Solo debe haber un archivo de transcripción por archivo de audio.

Datos de entrenamiento

  • Todos los archivos para el entrenamiento se deben proporcionar en el mismo directorio, sin carpetas anidadas.
  • Opcional: Si está disponible, proporciona transcripciones a los archivos de audio. No se requieren marcas de tiempo.
  • Asegúrate de que la duración acumulativa de audio de tus archivos de audio sea superior a 100 horas. Si no lo es, el trabajo de entrenamiento fallará.

Este es un ejemplo de cómo debe verse la estructura del directorio después de que los archivos se suban como un conjunto de datos de entrenamiento:

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

Datos de validación

  • Todos los archivos para la validación se proporcionan en el mismo directorio llamado validation_dataset sin ninguna carpeta anidada.
  • Los audios de validación no deben durar más de 30 segundos cada uno.
  • Proporciona transcripciones de verdad fundamental para cada uno de los archivos de audio en el mismo directorio en un archivo TXT separado.

Este es un ejemplo de cómo debe verse la estructura del directorio después de que los archivos se suban como un conjunto de datos de validación:

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

Lineamientos de anotación de verdad fundamental

Consulta las siguientes instrucciones de formato.

Numbers

Los cardinales y los ordinales solo se deben transcribir en dígitos.

  • Audio: "Un mazo de cartas tiene cincuenta y dos cartas, trece niveles de los cuatro palos, diamantes, corazones y picas"
  • Texto de verdad fundamental: "Un mazo de cartas tiene 52 cartas, 13 niveles de los 4 palos, diamantes, corazones y picas"

Moneda y unidades

Transcríbelas como se escriben comúnmente en la configuración regional de la transcripción. Abrevia todas las unidades que siguen a valores numéricos. Si queda claro en el contexto que un número o secuencia de números se refiere a la moneda o la hora, asígnale el formato correspondiente.

Fecha y hora

Transcribe en el formato común para las fechas y horas que se usa en el idioma de la transcripción. Escribe las horas en formato hh:mm, cuando sea posible.

Direcciones

Transcribe con nombres completos de ubicaciones, rutas y estados (por ejemplo, con abreviaturas cuando se pronuncien explícitamente). Las entidades y las ubicaciones se deben transcribir con una coma entre ellas.

Nombres y acentos adecuados

Transcribe con la ortografía y la puntuación oficiales. Si un nombre personal puede tener varias ortografías y el contexto no ayuda, usa la ortografía más frecuente.

Marcas, nombres de productos y títulos de medios

Transcribelos con el formato oficial y el formato más común.

Interjecciones

La risa y otras vocalizaciones distintas del habla deben transcribirse con hasta tres sílabas. La risa que se incluye en el discurso debe ignorarse por completo. Ejemplo:

  • Audio: “ja ja ja ja ja”
  • Texto de verdad fundamental: “jajaja”

Varios interlocutores

No los separes con etiquetas de interlocutor, ya que, por lo general, no se admite la diarización.

¿Qué sigue?

Sigue los recursos para aprovechar los modelos de voz personalizados en tu aplicación: