Data Mining de la información SocialCaso: Twitter en el Perú
Javier Albarracín / @jalbarracin
Adap – 22 de Noviembre, 2012
Data Mining de la Información Social 2
01PrometobrevísimaIntroducción :)
Data Mining de la Información Social 3
Definición de Data Mining01
Fuente: Facebook NOV 2012 y Twitter (Estimación Quántico) NOV 2012
Es un campo de las ciencias de la computación referido al proceso que intenta descubrir patrones en grandes volúmenes de conjuntos de datos. Utiliza los métodos de la inteligencia artificial, aprendizaje automático, estadística y sistemas de bases de datos.
El objetivo general del proceso de minería de datos consiste en extraer información de un conjunto de datos y transformarla en una estructura comprensible para su uso posterior.
Data Mining de la Información Social 4
Libro y Herramienta que no debes perderte: WEKA01
http://www.cs.waikato.ac.nz/ml/weka/
Eibe Frank & Ian Witten● Explica como funcionan los algorítmos.● Te ayuda a seleccionar el mejor abordaje a problemas
particulares, comparar y evaluar los resultados de diferentes técnicas.
● Cubre técnicas de mejoramiento de performance.● Muestra como usar el software Weka Machine Learning.
Data Mining de la Información Social 5
Quantico: bloques de construcción:01
Big DataProcesamiento
de LenguajeSocial
Intelligence
Algoritmo deSentimiento
Captura yAlmacenamiento
Segmentaciónde Usuarios
Actitudes“Real-time”
AnalisisModelo deInfluencia
Data Mining de la Información Social 6
02Descubriendo usuarios peruanos de twitter en el mundo del internet libre
Data Mining de la Información Social 7
El desafío: Tres usuarios de twitter peruanos... ¿Cómo identificar su nacionalidad?
02
Fuente: Twitter / Noviembre 2012
Data Mining de la Información Social 8
Seleccionamos una lista de peruanos “Notablemente peruanos” y obtuvimos uno a uno todos sus seguidores
02
Fuente: Twitter / Noviembre 2012
@larepublica_pe262.768 seguidores
@elcomercio481.019 seguidores
@Uterope62.137 seguidores
@elmorsa14.432 seguidores
@RicardoMoran65.768 seguidores
@Ollanta_HumalaT436.420 seguidores
@JulianaOxenford59.173 seguidores
@CuchoPenaloza20.167 seguidores
~500Peruanos
“NotablementePeruanos”
Seleccionados
* “Notablemente peruano” = Estamos seguros que son usuarios que son ampliamente conocidos en Perú. No estamos hablando de nacionalidad.
Data Mining de la Información Social 9
La Hipótesis: La proporción típica de “peruanos notables” a los que sigue un peruano es mayor a la de un extranjero.
02
Fuente: Twitter / Noviembre 2012
Tú
?
?
?
?
?
p(PeruanosN)
X
?
?
?
?
?
?
p(PeruanosN)
>
Data Mining de la Información Social 10
Encontrar el “cut-off” no ha sido tan dificil...02
Fuente: Twitter / Noviembre 2012
p(Peruanos)2
.5 m
illo
ne
s d
e p
eru
ano
s q
ue
sig
ue
n a
“p
eru
an
os
no
tab
les
”
Probabilidad de “Ser Peruano”p >= 99%
Probabilidad de “Ser Peruano”p >=70%
Probabilidad de “Ser Peruano”p < 70%
1.3MM
X
Y
Z
Data Mining de la Información Social 11
Un ejemplo de usuario de twitter “X”, “Y” y “Z”02
Fuente: Twitter / Noviembre 2012
X Y Z
?
Data Mining de la Información Social 12
Hasta el momento hemos analizado 3 países. En Perú estimamos 1.3 Millones de Usuarios de Twitter :)
02
PERU: 9.5MM fb1.3MM tw
VENEZUELA: 9.9MM fb2.7MM tw
ECUADOR: 5MM fb0.8MM
BRASIL: 60.6MM fb~15.0MM tw
COLOMBIA: 17.4MM fb~3.5MM tw
MEXICO: 39.38MM fb~8MM tw
GUATEMALA: 2.2MM fb~0.3MM
HONDURAS: 1.2MM fb~0.2MM tw
COSTA RICA: 1.9MM fb~0.3MM
PANAMA: 1.0MM fb~0.3MM tw
CHILE: 9.7MM fb~2.5MM tw
ARGENTINA: 20.4MM fb~2.5MM tw
URUGUAY: 1.6MM fb~0.3MM tw
PARAGUAY: 1.3MM fb~0.1MM tw
BOLIVIA: 1.7MM fb~0.2MM tw
NICARAGUA: 0.8MM fb~0.2MM tw
182MM Usuarios de facebook~38 MM Usuarios de twitter
Fuente: Facebook NOV 2012 y Twitter (Estimación Quántico) NOV 2012
Data Mining de la Información Social 13
03Estimando la Edad (y utilizando un truco simple para estimar el género) de los usuarios de twitter.
Data Mining de la Información Social 14
Hipótesis “Personas del misma generación siguen a algunos usuarios con mayor proporción que otras generaciones”
03
@nelsonmanrique
@merinobeatriz
@padelriol
@adammoband
@spencerlandia
Data Mining de la Información Social 15
Weka: Arbol de decisión utilizando el algoritmo J48 (C4.5 Open Source – Ross Quinlan)
03
Data Mining de la Información Social 16
Metodología: Grupo de 100 personas se divide en 2 grupos.03
50 50Con edad conocida, nos servirá para diseñar el modelo.
Con edad conocida, nos servirá para probar el modelo.
Data Mining de la Información Social 17
Hipótesis “Personas del misma generación siguen a algunos usuarios con mayor proporción que otras generaciones”
03
22 23 24 26 28 32 38 40 44 46 48
@usuarioperiodista1
@usuarioperiodista2
@usuariomusico1
@usuariomusico2
@usuariocanaltv1
@usuarioartista1
@usuariopolitico1
@usuarioartista2
@usuarioperiodista3
@usuariopolitico2
@usuarioradio1
@usuarioliderop1
50
O
O
Y
M
Y
O
M
Y
M
M
Y
O
Muestra: 100 Usuarios con edad conocida
Usu
ario
s In
flue
ncia
dore
s (c
on
>5,
000
follo
we
rs)
Influenciador TwitterClasificador
22 23 24 26 28 32 38 40 44 46 48
@usuarioperiodista1
@usuarioperiodista2
@usuariomusico1
@usuariomusico2
@usuariocanaltv1
@usuarioartista1
@usuariopolitico1
@usuarioartista2
@usuarioperiodista3
@usuariopolitico2
@usuarioradio1
@usuarioliderop1
50
O
O
Y
M
Y
O
M
Y
M
M
Y
O
Muestra: 50 Usuarios con edad conocidaInfluenciador TwitterClasificador
Data Mining de la Información Social 18
Interpretando los resultados del modelo03
J48 pruned tree*----------------------
P_Y <= 15| P_T <= 14| | P_M <= 88: “36 - 45 Años” | | P_M > 88: “25 - 35 Años” | P_T > 14: “>45 Años” P_Y > 15| P_Y <= 25: “25 - 35 Años” | P_Y > 25: “< 25 Años”
Correctly Classified Instances 48 95.4545 %Incorrectly Classified Instances 2 4.5455 %Kappa statistic 0.938 Mean absolute error 0.0394Total Number of Instances 50
Correctly Classified Instances 46 90.9091 %Incorrectly Classified Instances 4 9.0909 %
Modelo Generado
Modelo Contrastado
50
50
* Este no es el modelo final, este es un modelo simplificado para la presentación, pero válido y funcional.
Data Mining de la Información Social 19
Matriz de Confusión03
A B C D <-- clasificado como
17 0 0 0 A = <25 años
1 15 0 0 B = 25-35 años
0 1 10 1 C = 36-45 años
0 1 0 4 D = >45 años
Grupo: 50 Usuarios con edad conocida (modelo contrastado)
=== Detailed Accuracy By Class ===
TP Rate FP Rate ROC Area Class1 0.030 0.998 < 25 Años0.938 0.058 0.981 25 - 35 Años0.833 0 0.982 36 - 45 Años0.800 0.026 0.978 > 45 Años0.909 0.035 0.987 weighted avg.
* Este no es el modelo final, este es un modelo simplificado para la presentación, pero válido y funcional.
Data Mining de la Información Social 20
Estimando “rápidamente” el género de los twitteros: Seleccionamos los nombres que más se repiten...
03
Luis MaryoTula
20133 Luis M17026 Jose M16478 Carlos M15664 Juan M11274 Jorge M9013 Maria F8516 Miguel M6632 Cesar M6470 Diego M5936 Victor M5775 Daniel M5616 Julio M5208 Ana F5127 David M5081 Claudia F5005 Manuel M4630 Andrea F4590 Diana F4565 Javier M
1MM
1.3MM
12000+2300
Bas
e To
tal U
suar
ios
de T
witt
er P
erua
nos
Nombres únicos ordenados del más repetido al menos repetido
De la base de 1.3 MM de Twitteros pudimos colocarle género con un alto grado de precisión a 1MM
Data Mining de la Información Social 21
04Creando un algorítmo de “análisis del sentimiento” con sabor nacional.
Data Mining de la Información Social 22
Algoritmo de sentimiento: El objetivo es generar un score de sentimiento para la expresión
04
Reglasde Contexto
DiccionarioPalabras y Frases
“Lemmatización”Limpieza deTexto
bieeeeen jugado!
bien jugado!
detestando todo
detestar todo
“Detestar” -> -3“Bien” -> +1“la rompen” -> +2
Potencia: “muy bueno” vs. “bueno”
Negación:“no es bueno”
Ppos/PnegLemasTypos Reglas
Data Mining de la Información Social 23
Algoritmo de sentimiento: El objetivo es generar un score de sentimiento para la expresión
04
Que basuuuuraaa el patita de serv. al cliente por eso no compraré ni muerto en crappybrand.
Intención deCompra
Sentimiento
Sentimiento Categoria-3
-3
-6
Data Mining de la Información Social 24
05¿Qué es lo que podemos hacer con tantos juguetes? :)
Data Mining de la Información Social 25
Geolocalizando la conversación...05
Data Mining de la Información Social 26
QUANTICO TV !05
Data “DUMMY” no es información real. Solamente como ejemplo de una posible visualización a ser lanzada en unas semanas.
Data Mining de la Información Social 27
QUANTICO TV !05
Data “DUMMY” no es información real. Solamente como ejemplo de una posible visualización a ser lanzada en unas semanas.
Data Mining de la Información Social 28
Quantico Trends, hace simple el trabajo de análisis
Revisión demillones defuentes
• Lectura ad-hoc de medios nacionales
• 1.3 Millones+ de Twitteros Peruanos mapeados
• Páginas de Facebook peruanas (abiertas)
• Miles de blogs peruanos, videos youtube, foros, webs…
Organizamosy clasificamoslos temas
Asignación de score desentimiento
• Clasificamos “keywords” de la Empresa y la competencia
• Clasificamos por negocios : Marcas, Categorias, Temas..
• Clasificaciones adicionales (ej. “Evento1”, “Evento2”)
• Se le asigna un score de sentimiento automáticamente
• Expresiones “locales” (ej. “que mostra la promo”)
Generaciónde Alertase Informes
• La herramienta envía alertas automáticas de acuerdo a distintos criterios definidos.
• Se generan informes periódicos que se comparten internamente con los diferentes stakeholders.
05
Data Mining de la información SocialCaso: Twitter en el Perú
Javier Albarracín / @jalbarracin
Adap – 22 de Noviembre, 2012
muchas gracias!