Manuela Lucas

¿A quién seguir esta primavera?

February 13, 2012

Desde ya hace tiempo venimos escuchando en diversos medios de comunicación como se habla del movimiento 15M como una cosa muerta y del pasado. Parece como si el movimiento solo existiera durante el tiempo que ocupa las plazas o actúa usando la desobediencia civil. Resulta curioso ver como cuando esto pasa, se exige que se den soluciones a los problemas actuales, bien desde el voto, bien por medios legales. Sin embargo cuando se ha estado trabajando fuera de las plazas durante meses, generando contenidos y poniendo en común el trabajo de mucha gente y por tanto de muchas opiniones, se dice que es un movimiento diluido. Vamos, que hagamos lo que hagamos, no parece que vayan a entender nunca lo que tengamos que aportar. Pero realmente lo peor no es que tengamos que escucharlo o leerlo, sino la cantidad de gente que atiende a esos medios. Son muchos y no se dan cuenta como están jugando con ellos para empequeñecer al movimiento una otra y otra vez.

Decimos 15M porque es el término que usan en estos medios, es el nombre que ellos eligieron al fin y al cabo. Sin embargo, durante estos meses nos hemos dado cuenta de que poner la etiqueta 15M no gusta a todo el mundo. Por eso preferimos utilizar el termino Spanish Revolution, pues nos parece que une a mucha más gente. Intentad imaginar que hubiera pasado si todos los medios hubieran usado Spanish Revolution en vez de 15M en sus titulares.

Por todo esto, hemos realizado un análisis en Twitter para mostrar de una manera más o menos objetiva y visual cuales podrían ser las cuentas más relevantes en la Spanish Revolution. Basándonos en las conexiones existentes entre una serie de cuentas, obtenemos una red de usuarios sobre la que aplicamos una serie de métodos algorítmicos para de alguna manera ordenar visualmente todas estas cuentas.

Hemos intentado quitar toda subjetividad de la ecuación, porque entendemos que así el resultado es lo más imparcial posible. Más adelante os explicamos como hemos elegido las cuentas. Es importante decir que la veracidad de este resultado depende de la opinión de cada uno para considerar que Twitter representa de una manera más o menos acertada la situación que hay fuera. Así que cada uno le de el valor que crea conveniente y saque sus propias conclusiones

También queriamos recalcar que todas las herramientas que hemos usado son de código libre, así que si creéis que los resultados no son representativos os animamos a que lo hagáis vosotros también por vuestra cuenta y así poder analizar los diferentes resultados.

Hemos puesto a vuestra disposición dos formas de interactuar con el análisis. La primera es la visualización que aparece justo a continuación, y es una imagen en alta resolución en la que podéis hacer zoom para ver los detalles. Os recomendamos que uséis la opción de pantalla completa. También tenéis disponible un sencillo visualizador web de grafos, con un número mas pequeño de cuentas para que podáis ver como están conectada cada una de ellas con las demás.

Aqui tenéis el visualizador web. Las 499 cuentas más importantes de nuestra #SpanishRevolution. Podéis buscar cuentas concretas y si pincháis en cada una de ellas podréis ver las conexiones que tienen, tanto a quienes siguen, como quienes les siguen.

A continuación os explicamos el proceso de selección de las cuentas. Este proceso es un poco más técnico, así que esperamos no aburriros, pero entendemos que es importante contarlo en detalle para mostraros la objetividad del análisis. Decir que estos datos son de hace unas tres semanas, así que es posible que algunas conexiones falten.

Selección de las cuentas

  1. Lo primero es elegir unas cuentas que puedan representar los diferentes aspectos de la #SpanishRevolution durante estos meses (semillas). Este es el único momento donde nuestra subjetividad entra en juego, y de hecho no os vamos a decir las cuentas que hemos elegido nosotros, porque no creemos que sea relevante. Si creéis que está muy condicionado por esto, os animamos a que intentéis adivinar cuales son. Son dieciséis cuentas.
  2. Una vez elegidas estas cuentas, obtenemos todos los usuarios que están conectados a estas semillas, tanto los que las siguen como las que siguen éstas. El número de usuarios obtenidos es de cerca de medio millón.
  3. Para refinar un poco las cuentas a añadir finalmente, lo que hacemos es eliminar todas las que no estén conectadas por lo menos un numero de veces determinado con las semillas. Para obtener una cantidad de cuentas más o menos manejable, el número de conexiones mínimo es ocho. Con esto, al final nos quedamos con unas 2800 cuentas
  4. A continuacion obtenemos las conexiones entre todas las cuentas elegidas. Al final son algo más de medio millón de conexiones entre estas 2800 cuentas.

Cuando realizamos el estudio por primera vez y obtuvimos los resultados, nos dimos cuenta que alguna de las semillas utilizadas no era realmente importante y tras una segunda selección de semillas volvimos a realizar el análisis.

Análisis y Visualización

Ahora que ya tenemos toda la información, tenemos nuestra red de usuarios conectados entre si. Hay que entender que los análisis son solo para esta red, no es el análisis de los usuarios dentro de Twitter. Por ejemplo, habrá usuarios que aun teniendo mucha repercusión en Twitter, aparecerán en esta red, pero serán menos relevantes.

Para realizar este paso usamos Gephi, un programa de código abierto para analizar grafos y poder procesar la información a través de diferentes algoritmos matemáticos. Estos métodos no os los vamos a explicar ya que quedan fuera del alcance del análisis. No obstante al final tenéis todas las referencias por si alguien esta interesado en profundizar un poco.

Lo que os vamos a explicar es el significado que tiene cada atributo de los nodos del grafo:

Tamaño de las cuentas: Aplicamos un algoritmo a toda la red para determinar la importancia de cada cuenta. Básicamente, una cuenta es más importante cuanto más importantes sean las cuentas a las que está conectada. El algoritmo se llama centralidad por autovalor (Eigenvector Centrality)

Color: El color viene determinado por la clase de cuenta que es dentro de la red. El algoritmo para obtener estas clases es quizás el menos preciso de todos, ya que en ocasiones el número de clases puede variar. En esta red la mayoría de las veces salen cuatro clases y algunas veces cinco. Evidentemente solo sabemos a qué clase pertenece cada uno, no qué es cada clase. Es arriesgado intentar clasificar a todos los que aparecen aquí, os pedimos benevolencia, y que simplemente sirva para ver lo acertado que es. El algoritmo es el de Modularidad de la red.

Colocación: Para organizar la red se ha aplicado un algoritmo “por fuerzas”. Una manera sencilla de entender este tipo de algoritmos, es imaginar que los nodos (cuentas) son planetas que ejercen fuerzas entre si (conexiones), que hacen que se repelan o atraigan hasta conseguir colocarse en una situación estable. En concreto el algoritmo usado se llama ARF (Attractive and repulsive forces) y ha sido desarrollado por el Chair of Systems Design of ETH Zurich.

Hay que entender que cada uno de estos algoritmos funciona de una manera independiente. Por ejemplo el algoritmo de colocación no tiene en cuenta el color o el tamaño de los nodos. Sin embargo podemos ver que existe una relación entre las clases asignadas, y la posición de cada una dentro de la red.

Durante todo el tiempo que hemos pasado realizando este análisis, nosotros también hemos ido aclarando algunas opiniones que teníamos. Y realmente hemos empezado a seguir a gente a raíz de esto. Y en la mayoría de las ocasiones creemos que ha sido acertado. Por eso realmente animamos a todos a hacer que esta red crezca y siga haciéndose mucho más grande.

Nosotros no queremos analizar exhaustivamente los datos para sacar las claves de todo esto, simplemente lo ponemos a vuestra disposición para que seáis vosotros mismos los que saquéis conclusiones como lo hicimos nosotros.

Este es nuestro primer artículo, así que, si has llegado hasta aquí te lo agradecemos enormemente. Seguiremos analizando la situación actual por caminos como el que hemos seguido hoy.

Gracias por leernos. ¡Comenta, difunde y comparte!

Referencias

Inspiración

“The VIZoSPHERE” por Moritz Stefaner

Datos

Twitter API

Python

MongoDB

PyMongo

Python-Twitter

Neo4j Python

Visualización y Análisis

Gephi

Visualizar Web

Centralidad por autovalor

Modularidad de clase

ARF