Nuevo conjunto de datos de mitad de año: ¡Más datos, más idiomas!

El equipo de Common Voice se complace en anunciar la publicación de un nuevo conjunto de datos que incluye un total de 2366 horas de datos de voz, y por primera vez ¡31 horas en español!

El proyecto ha visto un aumento en las colaboraciones y publicación de muchos nuevos idiomas en los últimos seis meses. Queremos asegurarnos de que la comunidad puede usar los datos de manera rápida y eficiente. Para hacer esto, hemos avanzado con una versión de mitad de año que incluye todos los clips grabados en 28 idiomas, disponibles en la página Archivo de datos en Common Voice.

Los nuevos idiomas que se publican hoy son: Casco, chino (simplificado), Dhivehi, estonio, kinyarwanda, mongol, ruso, sakha, español y sueco; algunos de estos son los primeros conjuntos de datos disponibles públicamente para estos idiomas.

Somos conscientes que los proyectos de investigación necesitarán una identificación de versión y lo vamos a hacer por idioma a través de nuestra convención de nombres: Idioma, número total de horas y fecha de publicación.

<LOCALE>_<TOTAL_INCLUDING_UNVALIDATED_HOURS>h_<ISO_DATE>

p.ej. en_1085h_2019-06-12

Esperamos vuestros comentarios y vuestras aportaciones mientras colaboramos para avanzar en el desarrollo de tecnologías de voz abierta.

Según lo prometido, pronto compartiremos información a la comunidad con una propuesta más detallada sobre nuestra estrategia para los conjuntos de datos a largo plazo, que probablemente incluya un ciclo de publicación de datos más predecible.

Finalmente, todo el equipo de Common Voice desea extender un sincero agradecimiento a esta gran comunidad y a todos los que han contribuido o han validado las voces.

¡Gracias!

2 Likes

Excelente!!! Muchas gracias, no puedo esperar para hacer mis pruebas :slight_smile:

Analizando los datos podemos ver que la mayoría de frases tienen unas 4 grabaciones, algo que no es muy útil para entrenar DeepSpeech.

Recuerdo este tema

Espero que a finales de mes podamos tener el extractor de wikipedia lo suficientemente maduro para incorporar más idiomas y hacer una extracción grande para el español.

Estoy de acuerdo que no funciona para entrenar, para hacer pruebas está más que perfecto. Anteriormente no podía tener buenos sets de prueba porque de una u otra forma eran del mismo dominio lo cual me generaba resultados erróneos. Ahora con este set puedo hacer mis pruebas en él y tener resultados realistas.

Fyi
Comparto los resultados que tengo de momento:

Horas LR Dropout Epochs Mode Batch Size Test set WER
500 0.00012 0.24 1 Transfer Learning 12 Train-es-common voice 27%
500 0.000001 0.11 2 Transfer Learning 10 Train-es-common voice 46%
500 0.0001 0.22 6 From scratch 24 Train-es-common voice 50%

Genial @carlfm01

¿Podrías explicar un poco qué significan los datos que pones en la tabla para los que no somos expertos?

¡Gracias!

Con gusto

Horas = Horas totales con las que estoy entrenando.
WER= Porcentaje de error por palabras
Mode= Cuando usé transfer learning quiero decir que usé el modelo entrenado del inglés tomando sus capas y ajustandolas con el nuevo set de datos en español, y from scratch bueno, todo inició de 0 con valores aleatorios.

El resto son hyperparametros, para ver con los que se entrenó el modelo en inglés puede verlos aquí:

LR = Learning rate, es un hyperparametro que se usa para indicarle al modelo cuanto ajuste tiene que hacer “cuando aprende” por cada batch más info aquí:https://en.wikipedia.org/wiki/Learning_rate

Batch_size: La cantidad de ejemplos que se usan por cada iteración

Epoch: 1 epoch es decir que se completa una vuelta completa de entrenamiento en todo el set de datos.

Dropout: Porcentaje que se usa para eliminar unidades de una capa de manera aleatoria.

Para el que quiere leer toda la terminología completa:

¿Cómo se complejo sería entrenar un modelo con el dataset que tenemos ahora mismo en español?

Sería bueno ver qué resultados da ahora, aunque sean malos (o muy malos por ahora) a la hora de reconocer conversaciones cotidianas.

Personalmente no es que sea complicado, es que estoy limitado en hardware, tengo experimentos que quiero hacer en cola como por ejemplo entrenar sólo la capa lstm (la que aprender las relaciones) con datos de un TTS y ver que tanta información semántica se puede retener. Eventualmente prodría sacar el tiempo para ver dónde estamos con los datos de common voice, librivox y voxforge. Hacer 1 epoch me tomó 2 días usando transfer learning en una K80.

Creo que compartiendo mi modelo para que pruebes no hay problema, incluye datos como tatoeba y por eso no lo puedo compartir públicamente.

Los modelos no tienen que tener la misma licencia que los datos que se usaron para entrenarlos. En el caso de Common Voice sí, porque además liberamos los datos, pero los modelos son como el binario.

La idea que estábamos hablando la semana pasada era montar una página web super sencilla que usará algún modelo entrenado con lo que hay ahora y que la gente pudiera ver el estado.

Voy a enviar el modelo en español para pruebas.