Minería de datos para el análisis predictivo de redes sociales
Publicado: 2022-03-11Las redes sociales, de una forma u otra, han existido desde que las personas comenzaron a interactuar. De hecho, ponga a dos o más personas juntas y tendrá la base de una red social. Por lo tanto, no sorprende que, en el mundo actual de Internet en todas partes, las redes sociales en línea se hayan vuelto completamente ubicuas.
Dentro de este mundo de las redes sociales en línea, un fenómeno particularmente fascinante de la última década ha sido el crecimiento explosivo de Twitter, a menudo descrito como “el SMS de Internet”. Lanzado en 2006, Twitter ganó rápidamente popularidad mundial y se ha convertido en uno de los diez sitios web más visitados del mundo. En mayo de 2015, Twitter cuenta con 302 millones de usuarios activos que, en conjunto, producen 500 millones de tuits por día. Y estos números están en continuo crecimiento.
Dado este enorme volumen de datos de redes sociales, los analistas han llegado a reconocer a Twitter como un tesoro virtual de información para la extracción de datos, el análisis de redes sociales y la información para detectar tendencias de opinión pública y oleadas de apoyo a (u oposición a) diversos políticos y iniciativas sociales. Las empresas de ciencia de datos encuentran que los temas de tendencias de Twitter son cada vez más útiles como un valioso proxy para medir la opinión pública.
Este artículo describe las técnicas que empleé para una prueba de concepto que analizó efectivamente los temas de tendencia de Twitter para predecir, como caso de prueba de muestra, los patrones de votación regionales en las elecciones presidenciales de Brasil de 2014.
La elección
El 5 de octubre de 2014 se celebraron elecciones presidenciales generales en Brasil. Ningún candidato obtuvo más del 50% de los votos, por lo que el 26 de octubre se celebró una segunda vuelta electoral.
En la primera vuelta, Dilma Rousseff (Partido dos Trabalhadores) obtuvo el 41,6% de los votos, por delante de Aecio Neves (Partido da Social Democracia Brasileira) con el 33,6% y Marina Silva (Partido Socialista Brasileiro) con el 21,3%. Rousseff y Neves disputaron la segunda vuelta el 26 de octubre y Rousseff fue reelegida por un estrecho margen, 51,6% frente al 48,4% de Neves. El análisis de este artículo se relaciona específicamente con la segunda vuelta de las elecciones del 26 de octubre.
El Partido dos Trabalhadores (PT) es uno de los partidos políticos más importantes de Brasil. Es el partido político de los presidentes actuales y anteriores, Dilma Roussef y Luis Inacio Lula da Silva. Partido da Social Democracia Brasileira (PSDB) es el partido político del anterior presidente Fernando Henrique Cardoso.
Minería de datos y extracción de datos de temas de tendencias de Twitter
Comencé la extracción de datos de redes sociales extrayendo datos de Twitter Trend Topic para las 14 ciudades brasileñas para las cuales se suministran datos a través de la API de Twitter, a saber: Brasilia, Belem, Belo Horizonte, Curitiba, Porto Alegre, Recife, Río de Janeiro, Salvador, Sao Paulo, Campinas, Fortaleza, Goiania, Manaus y Sao Luis.
Consulté la API REST de Twitter para obtener los 10 principales temas de tendencia de Twitter para estas 14 ciudades en un intervalo de 20 minutos (limitado por algunas restricciones que tiene Twitter en su API). La limitación de la consulta a estas 14 ciudades se realiza especificando su Yahoo! WOEID de GeoPlanet (ID de dónde en la Tierra).
Para esta prueba de concepto, utilicé Python y una biblioteca de Twitter (inteligentemente llamada "twitter") para obtener todos los datos de redes sociales para el día de la segunda vuelta electoral (26 de octubre), así como los dos días anteriores (octubre 20). 24 y 25). Para cada día, realicé alrededor de 70 consultas diferentes para ayudar a identificar los temas de tendencias instantáneas.
A continuación se muestra un ejemplo del objeto JSON devuelto en respuesta a cada consulta (este ejemplo se basó en una consulta de datos el 26 de octubre a las 12:40:00 a. m. y solo muestra los datos de Belo Horizonte).
[{"created_at": "2014-10-26T02:32:59Z", "trends": [{"url": "http://twitter.com/search?q=%23GolpeNoJN", "name": "#GolpeNoJN", "query": "%23GolpeNoJN", "promoted_content": null}, {"url": "http://twitter.com/search?q=%23SomosTodosDilma", "name": "#SomosTodosDilma", "query": "%23SomosTodosDilma", "promoted_content": null}, {"url": "http://twitter.com/search?q=%23EAecio45Confirma", "name": "#EAecio45Confirma", "query": "%23EAecio45Confirma", "promoted_content": null}, {"url": "http://twitter.com/search?q=Uilson", "name": "Uilson", "query": "Uilson", "promoted_content": null}, {"url": "http://twitter.com/search?q=%22Lucas+Silva%22", "name": "Lucas Silva", "query": "%22Lucas+Silva%22", "promoted_content": null}, {"url": "http://twitter.com/search?q=%22Marcelo+Oliveira%22", "name": "Marcelo Oliveira", "query": "%22Marcelo+Oliveira%22", "promoted_content": null}, {"url": "http://twitter.com/search?q=Cruzeiro", "name": "Cruzeiro", "query": "Cruzeiro", "promoted_content": null}, {"url": "http://twitter.com/search?q=Tupi", "name": "Tupi", "query": "Tupi", "promoted_content": null}, {"url": "http://twitter.com/search?q=%22Real+x+Bar%C3%A7a%22", "name": "Real x Bar\u00e7a", "query": "%22Real+x+Bar%C3%A7a%22", "promoted_content": null}, {"url": "http://twitter.com/search?q=Wanessa", "name": "Wanessa", "query": "Wanessa", "promoted_content": null} ], "as_of": "2014-10-26T02:40:03Z", "locations": [{"name": "Belo Horizonte", "woeid": 455821}] }]
Breve introducción al análisis de redes sociales
La teoría de las redes sociales es el estudio de cómo las personas, organizaciones o grupos interactúan con otros dentro de su red. Hay tres tipos principales de redes sociales:
- Las redes egocéntricas están conectadas con un solo nodo o individuo (por ejemplo, usted y todos sus amigos y familiares).
- Las redes sociocéntricas son redes cerradas por defecto. Dos ejemplos de uso común de este tipo de red son los niños en un salón de clases o los trabajadores dentro de una organización.
- Las redes de sistemas abiertos son redes en las que las líneas límite no están claramente definidas, lo que hace que este tipo de red sea típicamente el más difícil de estudiar. El tipo de red sociopolítica que analizamos en este artículo es un ejemplo de red de sistema abierto.
Las redes sociales se consideran redes complejas, ya que muestran características topológicas no triviales, con patrones de conexión entre sus elementos que no son puramente regulares ni puramente aleatorios.

El análisis de redes sociales examina la estructura de las relaciones entre las entidades sociales. Estas entidades suelen ser personas, pero también pueden ser grupos sociales, organizaciones políticas, redes financieras, residentes de una comunidad, ciudadanos de un país, etc. El estudio empírico de las redes ha desempeñado un papel central en las ciencias sociales y muchas de las herramientas matemáticas y estadísticas utilizadas para estudiar las redes se desarrollaron por primera vez en la sociología.
Establecimiento de la red
Para crear una red utilizando los Trend Topics de Twitter, definí las siguientes reglas:
- Cada ciudad es un vértice (es decir, un nodo) en la red.
- Si hay al menos un tema de tendencia común entre dos ciudades, existe un borde (es decir, un vínculo) entre esas ciudades.
- Cada borde se pondera de acuerdo con el número de temas de tendencia en común entre esas dos ciudades (es decir, cuantos más temas de tendencia tengan en común dos ciudades, mayor será el peso que se atribuye al vínculo entre ellas).
Por ejemplo, el 26 de octubre, las ciudades de Fortaleza y Campinas tenían 11 temas de tendencia en común, por lo que la red de ese día incluye una ventaja entre Fortaleza y Campinas con un peso de 11:
Además, para ayudar en el proceso de ponderar las relaciones entre las ciudades, también consideré temas que no estaban relacionados con la elección en sí (la premisa es que las ciudades que comparten otras prioridades e intereses comunes pueden estar más inclinadas a compartir las mismas inclinaciones políticas). ).
Aunque el orden de los temas de tendencia podría tener alguna importancia para el análisis, con el fin de simplificar la prueba de concepto, opté por ignorar el orden de los temas en la lista de temas de tendencia.
Topología de la red
La topología de red es esencialmente la disposición de los diversos elementos (enlaces, nodos, etc.) de una red. Para la red social que estamos analizando, la topología de la red no cambia drásticamente durante los 3 días, ya que los nodos de la red (es decir, las 14 ciudades) permanecen fijos. Sin embargo, se pueden detectar diferencias en los pesos de los enlaces entre los nodos, ya que la cantidad de temas de tendencia comunes entre las ciudades varía a lo largo de los 3 días, como se muestra en la comparación a continuación de la topología de la red en el día 24 frente al día 25.
Predicción de resultados electorales utilizando datos de temas de tendencias de Twitter
Para ayudarnos a predecir los resultados de las elecciones, consideramos no solo los temas de tendencia en común entre las ciudades, sino también cómo el contenido de esos temas se relaciona con el posible apoyo a cada uno de los dos partidos políticos principales; es decir, el Partido dos Trabalhadores (PT) y el Partido da Social Democracia Brasileira (PSDB).
Primero, creé una lista de palabras y frases percibidas como indicadoras de una inclinación positiva o apoyo a una de las partes. (Ciertamente, completar esta lista es una tarea muy compleja. En el contexto de esta prueba de concepto, adopté deliberadamente un enfoque simplificado. En todo caso, esto hace que el calibre de los resultados sea aún más intrigante, ya que una lista de términos más ajustada y frases presumiblemente mejorarían aún más la precisión de los resultados).
Luego, para cada nodo, cuento:
- el número de sus enlaces que incluyen términos que indican apoyo a PT
- el número de sus enlaces que incluyen términos que indican soporte para PSDB
Usando nuevamente la ciudad de Fortazela como ejemplo, terminé con recuentos de:
Fortaleza['PT'] = 56 Fortaleza['PDSB'] = 37
Por lo tanto, llegamos a la conclusión de que los residentes de Fortaleza tienen una preferencia general por el Partido dos Trabalhadores (PT).
Resultados y Conclusiones
Basado en este algoritmo, el análisis arroja resultados que son sorprendentemente similares a los resultados electorales reales, especialmente si se considera la simplicidad general de nuestro enfoque. Aquí hay una comparación de los resultados predictivos basados en los datos de Twitter Trend Topic con los resultados reales de las elecciones (el rojo se usa para representar al Partido dos Trabalhadores y el azul se usa para representar al Partido da Social Democracia Brasileira):
Un mayor rigor científico, así como algoritmos y métricas más sofisticados, sin duda mejorarían aún más los resultados.
Aquí hay algunas métricas, por ejemplo, que podrían usarse para inferir la importancia o la influencia de un nodo, lo que a su vez podría informar el tipo de análisis predictivo descrito en este artículo:
Centralidad del nodo. Existen numerosas medidas de centralidad de nodos que se pueden emplear para ayudar a identificar los nodos más importantes o influyentes en una red. La centralidad de intermediación, por ejemplo, considera que un nodo es muy importante si forma puentes entre muchos otros nodos. La centralidad de valores propios, por otro lado, basa la importancia de un nodo en la cantidad de otros nodos muy importantes que se vinculan a él.
Coeficiente de agrupamiento. El coeficiente de agrupamiento de un nodo mide la medida en que los "vecinos" de un nodo están conectados entre sí. Esta es otra medida que puede ser relevante para evaluar el supuesto grado de influencia de un nodo en sus nodos vecinos.
Grado de centralidad. La centralidad del grado se basa en el número de enlaces (es decir, conexiones) a un nodo. Esta es una de las medidas más simples de la "importancia" de un nodo dentro de una red.
Pero incluso sin ese nivel de sofisticación, los resultados logrados con esta simple prueba de concepto proporcionaron una demostración convincente del análisis predictivo eficaz utilizando datos de Twitter Trend Topic. Claramente, existe el potencial de llevar el análisis de datos de redes sociales aún más lejos en el futuro.
Lecturas adicionales en el blog de ingeniería de Toptal:
- Grafique la ciencia de datos con Python/NetworkX