Desde que hace unos años descubrimos que los subtítulos de los Telediarios de RTVE estaban disponibles en su web, teníamos ganas de trabajar con esos datos. En parte porque el papel de la televisión pública es importante, pero también, desde el punto de vista técnico, porque llevábamos tiempo queriendo trabajar con información no estructurada, “texto en bruto”.
Así, Verba es para nosotros una oportunidad para aprender técnicas y herramientas de Procesamiento de Lenguaje Natural (PLN), y ver hasta qué punto son fiables con textos en español, de cara a usuarlas luego en otros ámbitos, como pueden ser pliegos de contratos, o minutas de reuniones.
La versión de Verba que lanzamos hoy es básicamente un buscador, y la única herramienta de PLN que usamos es una librería de Python, syntok
, para partir la transcripción en frases. Pero estamos trabajando en otras cosas, más interesantes desde un punto de vista PLN:
-
Hemos aplicado extracción de entidades (NER) al corpus de Telediarios de los últimos años, como explicamos en este issue. Ahora mismo esta información está en la base de datos, pero no se muestra porque no teníamos el interfaz cien por cien terminado.
-
Tenemos a medias el desarrollo de un modelo de Machine Learning que sea capaz de clasificar fragmentos del Telediario en temas (Sociedad, Deportes, Política internacional…). Como explico en el issue, la idea es entrenar el modelo con un corpus de noticias sacadas de la web de RTVE, noticias que han sido etiquetadas manualmente, y luego aplicar esto a las transcripciones de los Telediarios, para poder medir cuánto tiempo se dedica a hablar de “Medio ambiente”, y no solo contar menciones a términos concretos.
-
Para poder medir bien el tiempo que se dedica a cada tema, nuestra idea inicial era partir las transcripciones en las distintas noticias que las componen. Hubo un tiempo en el que la web de RTVE incluía las escaletas de cada día, o sea, los tiempos de inicio y fin de cada noticia. Pero hace un par de años dejaron de hacerlo. Nos gustaría encontrar un método para partir las transcripciones en trozos, tal vez un modelo de machine learning entrenado con las escaletas que sí existen, o tal vez algo más sencillo. Nuestra aproximación inicial era buscar silencios en los subtítulos, pero pronto vimos que no era un método demasiado fiable y que hacerlo bien era más complicado de lo que pensábamos, así que lo tenemos aparcado.
Para la parte de PLN y machine learning estamos usando Flair. Tenemos nuestras pruebas un poco desordenadas ahora mismo, abriremos el repositorio de esa parte en los próximos días y te mantendremos al tanto. Mientras tanto: ¿Tienes preguntas? Nos encantaría leer tus ideas y propuestas para echar una mano y mejorar Verba juntos.