Don Quijote de la Red

quijote-y-sanchoEn este lugar publico mis artículos en inglés para alcanzar una mayor audiencia interesada en temas aleatorios, no obstante publicar un artículo sobre Don Quijote en lengua inglesa se me hace extraño, y no solamente porque echo de menos el uso de mi lengua vernácula paciendo en tierras lejanas, sino también porque, a lo Quijote, sueño con poder cooperar con otros Quijotes (aunque nunca le haré un feo a un buen Sancho) interesados en la siguiente aventura de redes:

Recientemente publiqué un artículo (Don Quijote de la Network) acerca del uso de análisis de redes sociales como herramienta para analizar las interacciones o, para ser más exactos, las co-apariciones  de personajes en obras literarias.

La chispa de tal acción, he de reconocerlo, fue el observar a través de una celosía que la herramienta para análisis de redes Gephi ofrecía como uno de sus ejemplos la red de co-apariciones de la novela Los Miserables; famosa obra literaria de Victor Hugo.

Por más que busqué no encontré en la red equivalente para la historia del famoso hidalgo Don Quijote de la Mancha, y como yaciendo sentado no había rocín que se me acercara no tuve más remedio que arremeter contra este molino a pie. Así que juzguen vuesas mercedes pero acuérdense al tiempo de arrimar el hombro o de dar ánimo a las dádivas y, siendo así, que Dios se lo pague que yo no puedo. Comienzo.

Co-apariciones versus Interacciones

Puestos a describir una red social en una novela sería de interés que dicha red describiera interacciones entre personajes, por ejemplo A (habla / besa / ignora / …) B. Por suerte o por desgracia este es un trabajo que solamente puede hacer bien un ser humano y no se puede automatizar de forma adecuada con la tecnología actual.

Por ejemplo, si nos encontramos con la frase ‘Don Quijote soñaba con su amada’ es muy difícil para una máquina saber que la amada de Don Quijote es Dulcinea y, en este caso, esta interacción se perdería en el análisis.

No obstante, una red que se parecerá mucho a la red de interacciones será la red de co-apariciones puesto que en un gran número de ocasiones podremos identificar a A o B por su nombre o por un seudónimo… Y a falta de pan buenas son tortas, y si pan es lo que se quiere entonces uno ha de leerse el libro de cabo a rabo y anotar todas las interacciones.

Volviendo a las co-apariciones, si los personajes A y B aparecen en el siguiente orden: A,B,A,B,A,A,A,B entonces dispondremos de dos nodos A y B en nuestra red donde:

  • A conecta consigo mismo con peso 2 (un A,A,A)
  • A conecta con B con peso 3 ( tres A,B)
  • B conecta con A con peso 2 (dos B,A)

La red de co-apariciones de Los Miserables de Victor Hugo está basada en el trabajo de Donald E. Knuth (The Standford GraphBase: A platform from combinatorial Computing. Addison-Wesley. Reading, MA 1993).

Para este proyecto he desarrollado un paquete en lenguaje R que permite leer un texto en formato TXT o PDF y, dado un grupo de personajes y sus seudónimos, genera una matriz de co-apariciones con su correspondiente archivo para poder cargarlo en Gephi  y así analizar la red descrita en dicha matriz.

No daré más detalles de este paquete en este artículo puesto que tengo pensado publicar otro artículo más extenso y técnico sobre el tema y donde daré todo lujo de detalles sobre su utilización para analizar obras literarias. Volvamos pues a Don Quijote.

Los personajes de Don Quijote

Cada personaje corresponde a un nodo en nuestra red que tendrá que ser identificado manualmente. Aunque disponemos de herramientas que identifican entidades en un texto como la ofrecida por The Standford Natural Language Processing Group, lo cierto es que a lo sumo solo podemos usarlo como herramienta informativa puesto que estas herramientas automáticas pueden tanto ignorar algún personaje como ofrecer innumerables entidades en las que no estamos interesados.

Pero incluso si la herramienta funcionara de forma perfecta a la hora de identificar a todos los personajes, lo que no puede hacer es conectarlos con sus seudónimos, por ejemplo, la máquina nunca podría asociar Dulcinea con Aldonza Lorenzo; dicha conexión, por el momento, la ha de realizar un ser humano.

Dichos seudónimos y equivalentes han de ser descritos mediante el uso de expresiones regulares. Por ejemplo,  ‘(E|e)l ama’ considera como equivalentes El ama y el ama. ‘(Dulcinea | Aldonza Lorenzo)’ considera Dulcinea como seudónimo de Aldonza Lorenzo. etcétera.

Y es aquí donde voy a empezar a suplicar a mis Sanchos y Quijotes que tengan la merced de revisar las siguiente lista de personajes de la primera parte del Don Quijote de la Mancha con seudónimos y equivalentes para bien completalla o enmendalla y, si fuera posible, situar o elaborar la lista para la parte segunda del libro.

parteI <- c('(Don Quijote|don Quijote|quijote)', 
            '(El cura|el cura|Pedro Pérez|Pero Pérez)',
            '(E|e)l ama',
            '(Antonia Quijana|la sobrina|La sobrina)',
            '(E|e)l ventero',
            'Juan Haldudo',
            'Andrés',
            '(Dulcinea|Aldonza Lorenzo)',
            'Pedro Alonso',
            '(El barbero|el barbero|maese Nicolás|Maese Nicolás)',
            'Frestón',
            '(G|g)igantes',
            'Sancho',
            '(Juana Panza|Teresa)',
            'Sanchica',
            'Grisóstomo',
            'Marcela',
            'Guillermo el rico',
            '(M|m)aese Pedro',
            'Sarra',
            'Ambrosio',
            'Vivaldo',
            'Juan Palomeque',
            'Maritornes',
            '(E|e)l arriero',
            '(E|e)l cuadrillero',
            'Pedro Martínez',
            'Tenorio Hernández',
            'Alonso López',
            '(Ginesillo|Ginés de Pasamonte)',
            'Cardenio',
            'Luscinda',
            '(Dorotea|Micomicona)',
            '(D|d)on Fernando',
            'Anselmo',
            'Lotario',
            'Camila',
            'Ruy Pérez',
            '(Zoraida|María)',
            'Juan Pérez',
            'Clara', 
            '(D|d)on Luis',
            'Leandra',
            'Eugenio',
            'Anselmo',
            'Vicente')

 

La Red

Una vez disponemos de la lista de personajes con sus equivalentes y seudónimos necesitamos el texto del libro a analizar en formato PDF o TXT. Para este proyecto he utilizado la versión TXT de Don Quijote ofrecida por el encomiable proyecto Gutenberg.

Una vez disponemos de estas dos piezas podemos combinarlas para generar una matriz de co-apariciones y generar con ella su correspondiente red en Gephi.

A continuación se muestra la red de co-apariciones de los personajes de la primera parte del Don Quijote de la Mancha listados anteriormente. El tamaño de los nodos es proporcional al grado del nodo en la escala de 20 para el nodo más pequeño y 100 para el más grande, y la anchura de los arcos es proporcional al número de co-apariciones entre personajes.

Los colores de los nodos corresponden al resultado de maximizar la modularidad para obtener las ocho comunidades más relevantes.

quijote3.png

La lectura de la Red de Don Quijote

Los nodos más voluminosos (mayor grado), como era de esperar, son los de Don Quijote y Sancho. Además, sus co-apariciones son tan numerosas y su relación en el libro tan simbiótica que no he podido por más que considerar a ambos como una entidad única en el diseño de la red y reubicar manualmente sus correspondientes nodos el uno sobre el otro.

Después de Don Quijote y Sancho los nodos más predominantes en grado son los de El Cura y El Ventero. De hecho hay más de un cura y un ventero a lo largo de las andanzas del hidalgo y, para separarlos, debería haber asignado como sufijo a cada cura y ventero el capítulo en el que aparecen.

No obstante, me pareció en este primer análisis al menos tan interesante, y también más sencillo, analizar las figuras del cura y del ventero como entidades abstractas y únicas para Don Quijote. Efectivamente, es la cuadrilla Don Quijote, Sancho, Cura y Ventero la que dirige la historia de un punto al otro de la tragicomedia.

La red también nos muestra una isla de personajes con fuertes co-apareciones; Camila, Anselmo y Lotario que, sin embargo, no co-aparecen con nuestros principales protagonistas sino que indirectamente a través del cura. Estos tres forman el triangulo amoroso descrito en la historia del curioso impertinente dentro de la historia del hidalgo. También podemos ver como las isla de personajes ha sido identificada y coloreada correctamente por la modularidad.

La Red por Capítulos

Las versiones más recientes de Gephi permiten la creación de redes dinámicas, es decir, redes que evolucionan con el tiempo cambiando los parámetros que la definen.

El paquete utilizado para crear la red de co-apariciones permite indicar palabras lindero. La palabra más natural para separar secciones en una novela es Capítulo aunque se podrían utilizar otras si fuera necesario.

A continuación podemos ver una animación de la red de co-apariciones de Don Quijote de la mancha utilizando como palabra lindero Capítulo y mostrando los cambios en una ventana de tres capítulos.

ezgif.com-gif-maker (1).gif

Sumario y Futuro

Es de mi parecer que este tipo de análisis de redes puede ser de gran utilidad a la hora de entender y explicar obras literarias; podemos establecer de forma visual comparaciones entre novelas, identificar géneros literarios por su estructura, visualizar como las técnicas literarias avanzan con el tiempo…

De momento os dejo aquí la red Gephi para la primera parte de El ingenioso hidalgo don Quijote de la Mancha. Así que encuentre otros Quijotes o Sanchos, o tiempo, que dicen lo cura todo, publicaré la red de la segunda parte del ingenioso. Fin.

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s