EDA and NLP basics: Exploring the innards of the Spanish poetry


#1

Andrea Morales Garzón / Miguel López Pérez

Abstract:
¿Eres un amante de la visualización de datos? ¿Y del Procesamiento del Lenguaje Natural (NLP)? ¿Y de la poesía? Pues estás de suerte. Con esta charla, queremos mostrar los pasos básicos a seguir para resolver un problema de procesamiento de lenguaje natural, que pueden ser aplicados en cualquier problema de esta área con tanto por explorar. Abordaremos tareas clásicas de NLP, como el análisis de sentimientos, búsquedas de similitud en los propios datos y algunas visualizaciones del vocabulario.

Bio:
Andrea Morales se graduó en Ingeniería Informática, y realizó el Máster en Ingeniería Informática, ambos por la Universidad de Granada. Es investigadora contratada en el Proyecto Europeo H2020 Stance4Health, que persigue la creación de un servicio de nutrición personalizada centrado en el uso de tecnologías móviles e Inteligencia Artificial. Está interesada en el uso de modelos predictivos para la comprensión del lenguaje.

Miguel López realizó el Grado en Matemáticas en la UGR (2017). Luego, realizó un Master en Ciencia de Datos en la misma universidad (2018). Actualmente, se encuentra terminando su segundo año de doctorado en clasificación automática de imágenes de cáncer. Muy interesado en el aprendizaje automático y la modelización bayesiana aplicados en distintos campos.


#2

¿Se podrían crear generadores de poesía con el estilo de un autor determinado? ¿Puede llegar un momento en el que una persona no fuese capaz de determinar si una poesía determinada la escribió el autor original o un robot?


#3

Charla y explicación de 10. Me gusta mucho el NLP y ha sido genial. ¿Podéis compartir el github y la presentación?


#4

Nada, me contesto solo, tirando el vídeo para atrás se ve todo xddd


#5

¡Hola! ¿Qué criterio habéis seguido para seleccionar las stop words? Tiene que ser difícil en un campo como la poesía. Gracias


#6

Muchas gracias por tu apreciación :). Dejamos aquí el enlace al github de la charla con toda la info para que sea más cómodo acceder desde este post: https://github.com/andreamorgar/poesIA.


#7

Desde luego que este par de preguntas son bastante difíciles y no creemos que tengan una respuesta única.

  1. Sí, se podría aunque es difícil y todavía no está demasiado avanzado. En concreto, la generación de texto es una tarea bastante complicada aunque modelos como GPT-3 están haciendo grandes avances. Mientras que en otros campos como el de las imágenes (con los deepfakes) la generación sintética siguiendo un estilo es algo que está superado, en el texto es más complicado por su estilo particular. Aún así como bien hemos comentado se están haciendo diversos avances basados en redes generativas adversarias, por ejemplo, en las cuales podríamos meter el estilo del autor como un input al modelo. Dejamos un par de referencias para los más curiosos: https://arxiv.org/pdf/1711.06861.pdf https://arxiv.org/pdf/1909.03409.pdf
  2. Probablemente llegue ese momento (si no ha llegado ya). Aunque los algoritmos carezcan de inteligencia como la entendemos nosotros, son muy buenos en lo suyo y capaz de hacer algunas tareas mejor que los humanos. Aquí nos metemos ya en temas más filosóficos. Queremos recomendar un buen libro de divulgación que habla sobre este tema “the creativity code” de Marcus du Satoy.

Muchas gracias por las preguntas y tu atención :slight_smile:


#8

Hola! Enhorabuena por el trabajo y por la charla. Me ha gustado. Quería preguntar qué han utilizado para realizar el análisis de sentimiento? Gracias


#9

¡Hola! Primero, ¡muchas gracias por interesarte por la charla! :slight_smile: Para este caso, hemos utilizado un conjunto de stop words de propósito general en español. Como el corpus es extenso, y contiene gran variedad de poemas y autores, nos ha funcionado bien. Tenemos pendiente probar técnicas específicas para contrastar si funcionaría mejor un conjunto de stop words específico, (por ejemplo, utilizando técnicas como IDF para determinar de qué palabras podríamos prescindir).

Sin embargo, como bien dices, es difícil, puesto que existen palabras muy comunes en poesía que no resulta interesante prescindir de ellas. Un ejemplo claro son las palabras más populares que hemos mostrado en el wordcloud. Si eliminásemos estas palabras, que aparecen en una gran cantidad de textos, no seríamos capaces de detectar muchas de las estructuras literarias, complicando el análisis textual.


#10

¡Hola! ¡Muchas gracias por interesarte!:grin: Hemos utilizado la librería TextBlob, que permite analizar sentimientos “binarios” (positivos y negativos). Es muy sencilla y rápida de utilizar. Aún así, nosotros nos hemos encontrado con un problema al aplicarla a un corpus en español, puesto que utiliza la API de Google Translate, y tienes un límite diario de peticiones. Si te animas a probarla, te aconsejamos que hagas las pruebas con un dataset pequeñito, para que no te quedes a medias con tus experimentos :slight_smile: