Descripción del modelo ASR

¿Qué es el modelo ASR?

El modelo de reconocimiento de voz (Automatic Speech Recognition), es un modelo desarrollado para hacer transcripción automática de audio a texto, a través de técnicas de Machine Learning. La traducción automática, si bien no es un asunto nuevo en el desarrollo de software, sí lo es en función de modelos en el idioma español, ya que la gran mayoría funcionan para el inglés; ahora, si bien existen algunos orientados al español, según el equipo de ingenieros, no son tan buenos debido a que el español, y en particular el español colombiano, cuenta con muchos y muy variados dialectos que hacen difícil automatizar transcripciones en este idioma. En este sentido, el modelo ASR implementado por la Comisión de la Verdad se ha entrenado en un dialecto específico (y que se instaura como su valor agregado): el dialecto el colombiano con todos sus acentos; en efecto, el modelo ha sido entrenado a partir de las entrevistas acopiadas por la entidad durante todo su ejercicio de escucha. Ahora bien, al ser entrevistas que ya están transcritas, es posible comparar los resultados; en este sentido, es un modelo que no solo se entrena, sino que también es posible medir sus resultados comparando la transcripción que arroja con la versión real.

Ese es el plus de este modelo: usando el corpus que recogió la Comisión, se entrenó un modelo para poder reconocer ese tipo de sonidos, de acentos, de palabras, que son diferentes. Ese es el valor agregado que tiene esto. No es una tarea sencilla reconocer esos dialectos del caribe, andino, etc.; en ese sentido, estos modelos tienen una forma de ser calificados: tienes datos de entrenamiento, y con esos datos de entrenamiento que ya están transcritos, el modelo se entrena y se mide...

¿Cuál es su alcance?

La necesidad de este desarrollo va de la mano con la misionalidad de la Comisión en términos de su proceso de escucha. En este sentido, el modelo se pensó, en un principio, como apoyo a la labor realizada por los transcriptores. Ahora, si bien el modelo ha alcanzado resultados importantes, no funciona al 100% por las dificultades dialécticas ya señaladas; debido a esto, el alcance que se le ha dado dentro de la Comisión de la Verdad es el de recuperación de información de archivos de audio que no sean entrevistas transcritas (videos, audios de reuniones, etc.). En este sentido, todos los audios o videos almacenados en las bases de datos pueden recuperarse con mayor precisión, ya que no solo dependen de los metadatos que catalogan dichos recursos, sino que, a partir de la transformación automática del audio en texto, el motor de búsqueda puede realizar una exploración y recuperación de datos adicionales.

Antes, con solamente los audios, dependíamos de los metadatos de los recursos; si en el metadato no decía algo que, por ejemplo, en el audio sí se extrajo, entonces no iba a ser parte de la búsqueda. Esa forma de recuperación de información se está haciendo ahorita con el modelo ASR...

Por ejemplo. Una entrevista realizada a una persona particular, perteneciente a algún grupo u organización, posiblemente no sea catalogada a partir del nombre del grupo; esto conlleva a que al hacer una búsqueda por el nombre del grupo, la entrevista no aparezca en los resultados arrojados por el motor. El modelo, buscando solucionar esta limitante, transcribe automáticamente el audio posibilitando su recuperación a través de este criterio de búsqueda. Es allí donde está la recuperación de información: hay una mayor información, extraída del audio, para poder ser recuperada en las búsquedas.

El concepto de recuperar información es porque el modelo no es exactamente igual a lo que está sonando en el audio; no obstante, sí extrae ciertas cosas importantes, por eso hablamos de recuperar información y no de transcribir: nos va a halar palabras claves, ciertos momentos, ciertos lugares, etc. Debido a esto, se decidió ampliarlo: no solo se hace para entrevistas, sino para cualquier multimedia (MP3, WAV, videos, MP4); se les extrae el audio y se transcribe...

Lo que se extrae, que es el resultado del modelo, complementa lo que el equipo de catalogación realiza con el esquema definido de metadatos; en efecto, los metadatos, por su misma naturaleza, no tienen el nivel detallado de información que sí tiene, por ejemplo, un audio transcrito.

¿Cómo es su interacción?

La conexión con la base de datos se realiza para identificar dónde están los audios (su ubicación física) y cómo se llaman, para poder transcribirlos.

Dicho flujo se realiza a través del script ContentExtractAudio.py

sim-data-processing/-/blob/develop/procesado-general

Ahora bien, la interacción del modelo con la base de datos se establece de manera periódica; es decir, no se ejecuta el modelo sobre todos los audios, sino sobre audios nuevos buscando que el proceso de transcripción sea más rápido. Para el caso de la Comisión de la Verdad, la ejecución se hace a través de batches (procesamiento por lotes), con el fin de que pueda ejecutarse el modelo de forma paralela en varios tipos de formatos. La Comisión conformó seis batches, cada uno con un grupo determinado de formatos:

  • Primer grupo: MP3

  • Segundo grupo: wav, WAV

  • Tercer grupo: mp3

  • Cuarto grupo: mov, flv

  • Quinto grupo: wma, vob, wmv, avi, m4a, dvf, asf, mpg, m4v, amr, vm1, mts, voc

  • Sexto grupo: wma, vob, wmv, avi, m4a, dvf, asf, mpg, m4v, amr, vm1, mts, voc

El script está parametrizado; eso quiere decir, que tiene unos parámetros establecidos para definir qué formato de audio se quiere transcribir. Adicionalmente, permite marcar los audios que ya han sido transcritos para poder ejecutarse sobre los audios nuevos que ingresan a la base de datos.

Has de cuenta que tenemos unos 15 formatos de audio, eso significaba que tocaba ir a buscar todos los archivos que sean .MP3, todos los que son .WAV, todos los que son .MP4, etc. Eran muchos. Las primeras veces que ejecutábamos ese proceso se demoraba días; entonces, lo que se hizo fue dividir eso en grupos: de los 15 ya solo ejecutábamos 6 grupos. Entonces, los agrupamos o los organizamos, y ejecutamos una parte solamente para los MP3, porque son muchos; luego se coge otro grupo que son .WAV y .MP4; y luego otro grupo que tiene otros formatos que sabemos que son poquitos. Entonces, eso hace que sea más fácil; por ejemplo, si alguien no cuenta con una infraestructura muy completa, lo puede hacer por grupos para que sea más trabajable...

El cierre de la ejecución del modelo dentro de la Comisión de la Verdad, se da cuando ingrese el último audio.

Flujos

El flujo que realiza el script para activar el modelo y actualizar la base de datos es el siguiente:

Última actualización