big data: el poder de la información - conceptos...

98
BIG DATA: el Poder de la información Conceptos, Infraestructuras y Datos Xavi Barber Centro de Investigación Operativa. Universidad Miguel Hernández de Elche Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 1 / 98

Upload: others

Post on 26-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

BIG DATA: el Poder de la informaciónConceptos, Infraestructuras y Datos

Xavi Barber

Centro de Investigación Operativa.Universidad Miguel Hernández de Elche

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 1 / 98

Page 2: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

1 Big Data y Marketing

2 Hadoop y su arquitectura

3 Utilidades del Big Data

4 Cómo trabajar con grandes bases de datos

5 Machine Learning

6 Técnicas de Machine Learning

7 Data Mining y R

8 Text analytics

9 Redes Sociales

10 WordCloud desde twitter

11 Facebook

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 2 / 98

Page 3: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

willfreedom

ring

day

drea

mlet

ever

y

able

one faith

free

mountain

natio

n

shall

blackchildren

god

land

last

little

mad

e

men

new

sing

state

today white

alab

ama

boys

brotherhood

even

former

geor

gia

girls

handsheat

hill

hope join

live

sons

stone

thee

true

words

allow

almighty

amer

ica

back

brothers

city

color

country

creed

died

fathers

four

great

hew

hills

holdjail

lips

lord

low

must

old

red

sit

skin

stillta

ble

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 3 / 98

Page 4: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Big Data y Marketing

Big Data y Marketing

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 4 / 98

Page 5: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Big Data y Marketing

Introducción

Ahora la moda es Big Data, la gente habla de ellos y creé que son casi cosa demagos. Se cree que las predicciones serán hechas con 100% de precisión, locual es totalmente absurdo y totalmente falto de sustento. Denota a miparecer una postura exagerada y sobre cargada de fanatismo con la sensaciónde que todo es predecible.

-No es así, ni todo es predecible ni todo se solventa con Big Data, se requieremucho más que eso para muchos problemas técnicas y mucho menos para lamayoría de problemas de algunas empresas.“Big data is like teenage sex: everyone talks about it, nobodyreally knows how to do it, everyone thinks everyone else is doingit, so everyone claims they are doing it...” Dan Ariely

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 5 / 98

Page 6: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Big Data y Marketing

Si bien en cualquier proyecto o análisis la mayor cantidad de tiempo se invierteen el procesamiento y limpieza de lo datos, no tienen valor extra la informaciónsi no se hace uso de alguna técnica de explotación. Lo que se llama ciencia dedatos es más cercana a un puñado de algoritmos, de técnicas y metodologías,pero además se debe tener la curiosidad y libertad de experimentar con lainformación para tratar de aprovecharla lo mejor posible.

Data Scientist (n.): "Person who is better at statistics thanany software engineer and better at software engineering than anystatistician”.... Josh Wills

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 6 / 98

Page 7: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Big Data y Marketing

Definiciones

Sistemas que manipulan grandes conjuntos de datos.Las dificultades más habituales en estos casos se centran en la captura, elalmacenamiento, búsqueda, compartición, análisis, y visualización.La tendencia a manipular ingentes cantidades de datos se debe a la necesidaden muchos casos de incluir los datos relacionados del análisis en un granconjunto de datos .

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 7 / 98

Page 8: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Big Data y Marketing

Estamos viviendo la época de la revolución del Big Data, donde los grandesvolúmenes de datos, usados para trabajar, han superado con creces, la capacidad deprocesamiento de un simple host. El Big Data nace para solucionar estos problemas:

Como almacenar y trabajar con grandes volúmenes de datos.Y la más importante, como poder interpretar y analizar estos datos, denaturaleza muy dispar.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 8 / 98

Page 9: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Big Data y Marketing

Si miramos alrededor nuestro, vemos que cualquier dispositivo que usamos generadatos, estos pueden ser analizados actualmente.De esta gran cantidad de datos que tenemos a nuestro alcance, sólo el 20% setrata de información estructura y el 80% son datos no estructurados. Estosúltimos añaden complejidad en la forma que se tienen que almacenar y analizar.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 9 / 98

Page 10: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Big Data y Marketing

Hadoop aparece en el mercado como una solución para estos problemas, dando una

forma de almacenar y procesar estos datos.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 10 / 98

Page 11: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Hadoop y su arquitectura

Hadoop y su arquitectura

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 11 / 98

Page 12: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Hadoop y su arquitectura

Recopilando información

http://www.ticout.com/blog/2013/04/02/introduccion-a-hadoop-y-su-ecosistema/

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 12 / 98

Page 13: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Hadoop y su arquitectura

Apache Hadoop es un framework que permite el procesamiento de grandesvolúmenes de datos a través de clusters, usando un modelo simple deprogramación.Además su diseño permite pasar de pocos nodos a miles de nodos de formaágil.Hadoop es un sistema distribuido usando una arquitectura Master-Slave,usando para almacenar su Hadoop Distributed File System (HDFS) yalgoritmos de MapReduce para hacer cálculos.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 13 / 98

Page 14: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Hadoop y su arquitectura

http://www.ticout.com/blog/2013/04/02/introduccion-a-hadoop-y-su-ecosistema/

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 14 / 98

Page 15: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Hadoop y su arquitectura

Internet de las CosasInternet de las cosas se refiere a una red de objetos cotidianos interconectados.El concepto de Internet de las cosas se atribuye a Auto-ID Center, fundado en1999 y basado en el MIT.

https://pixabay.com/es/red-iot-internet-de-las-cosas-782707/

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 15 / 98

Page 16: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Hadoop y su arquitectura

La idea es muy simple pero su aplicación es difícil. Si todas las latas, libros, zapatoso partes de un vehículo estuvieran equipados con dispositivos de identificaciónminúsculos, la vida cotidiana en nuestro planeta sufriría una transformación. Ya noexistirían cosas fuera de stock o productos perdidos, porque nosotros sabríamosexactamente lo que se consume en el otro lado del planeta. El robo sería una cosadel pasado, sabríamos dónde está el producto en todo momento. Lo mismo seaplica a los paquetes perdidos.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 16 / 98

Page 17: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Hadoop y su arquitectura

Si todos los objetos de la vida cotidiana, desde el yogur a un avión, estuvieranequipados con etiquetas de radio, podrían ser identificados y gestionados porequipos de la misma manera que si lo fuesen por seres humanos.Con la próxima generación de aplicaciones de Internet (protocolo IPv6) sepodrían identificar todos los objetos, algo que no se puede hacer con IPv4, elsistema actualmente en uso. Este sistema sería, por tanto, capaz de identificarinstantáneamente cualquier tipo de objeto.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 17 / 98

Page 18: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Hadoop y su arquitectura

El Internet de las cosas debe codificar de 50 a 100.000 millones de objetos yseguir el movimiento de estos. Todo ser humano está rodeado de 1.000 a5.000 objetos.Actualmente, el término Internet de las Cosas se usa con una denotación deconexión avanzada de dispositivos, sistemas y servicios que va más allá deltradicional M2M y cubre una amplia variedad de protocolos, dominios yaplicaciones ( códigos QR, etc.).

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 18 / 98

Page 19: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Hadoop y su arquitectura

Inteligencia: El Internet de las cosas probablemente será “no determinista” yde red abierta (ciberespacio), en la que entidades inteligentes auto-organizadas(servicio Web) u objetos virtuales (avatares) serán interoperables y capaces deactuar de forma independiente (que persiguen objetivos propios ocompartidos), en función del contexto, las circunstancias o el ambiente. Segenerará una Inteligencia Ambiental.Consideraciones temporales: En esta Internet de los objetos, hecha de milesde millones de eventos paralelos y simultáneos, el tiempo ya no será utilizadocomo una dimensión común y lineal, sino que dependerá de la entidad de losobjetos, procesos, sistema de información, etc.

Este Internet de las cosas tendrá que basarse en los sistemas de TI en paralelomasivo (computación paralela).

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 19 / 98

Page 20: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Utilidades del Big Data

Utilidades del Big Data

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 20 / 98

Page 21: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Utilidades del Big Data

Redes Sociales

Las redes sociales son el origen de ese Big Data en la gran mayoría deocasiones. Mediante herramientas de monitoreo se pueden capturar enormescantidades de conversaciones públicas referidas a las marcas o conceptos quese desean examinar.Posteriormente, utilizando tecnologías que incorporen inteligencia artificial yprocesamiento de lenguaje natural, se pueden convertir esas conversacionespúblicas entre personas en datos tremendamente útiles.Los datos extraídos incluyen el género de las personas que conversan, el idiomautilizado, su rango de edad, su profesión, su ubicación geográfica o elsentimiento expresado, permitiendo una segmentación de targets muy fiable enun tiempo record y con unos costes mínimos si lo comparamos con losmétodos tradicionales.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 21 / 98

Page 22: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Utilidades del Big Data

-Otro uso habitual consiste en la extracción de las asociaciones semánticasutilizadas por cada target, de forma que el departamento de marketing puedeconocer exactamente qué palabras están utilizando, en positivo y en negativo, losfuturos clientes antes incluso de empezar a definir la campaña.-La tecnología juega un papel crucial en el Big Data Marketing, aunque la existenciade herramientas comerciales de costes ajustados hace que no se trate ya de unterreno reservado a las grandes corporaciones, sinó al alcance de cualquier empresade tamaño medio.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 22 / 98

Page 23: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Utilidades del Big Data

360º de visión sobre el cliente

Para conseguir un conocimiento total del cliente, las compañías deben obtenerinformación de fuentes internas y externas para poder asesorarle y entendercuál es la mejor manera de ayudarle. El objetivo es comprender elcomportamiento del cliente y predecir sus futuras acciones.Los empleados que trabajan directamente con los clientes deben poseer lainformación suficiente y adecuada para crear una relación de confianza yconseguir un compromiso o una fidelidad por parte del consumidor. Paraconseguirlo, el empleado debe poder disponer al instante tanto de informacióninterna (según el comportamiento del cliente en otras experiencias con lapropia compañía) como externa (sobre sus gustos e intereses, obtenida deredes sociales, correo electrónico, etc).

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 23 / 98

Page 24: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Utilidades del Big Data

Gran volumen de Datos

Hay que aclarar que la palabra cliente es un nombre genérico, que pasará adenominarse paciente en el sector de la salud, un sospechoso en un caso policial,etc.Finalmente, para 2020 se prevé que el Big Data continue creciendo, y que en eseaño se llegue al 4300% en la generación de datos anuales, “gracias a los cambiostecnológicos acelerados de transición de lo analógico a lo digital, y al rápidoaumento en la generación de datos, tanto por particulares como por grandesempresas”.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 24 / 98

Page 25: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Cómo trabajar con grandes bases de datos

Cómo trabajar con grandes bases de datos

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 25 / 98

Page 26: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Cómo trabajar con grandes bases de datos

Cloud Computing vs Big Data

Big Data es un concepto más amplio que decir “Grandes bases de datos”, esun nuevo paradigma de la recogida, almacenamiento, manipulación y lo másimportante extraer el significado de diferentes tipos de datos.Cloud Computing es el paradigma de la computación en el “aire”. No hayque configurar ninguna máquina ni servidor, ejemplos de ellos son:

EC2 - Amazon Web ServicesCompute Engine - IaaS — Google Cloud Platform

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 26 / 98

Page 27: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Cómo trabajar con grandes bases de datos

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 27 / 98

Page 28: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Cómo trabajar con grandes bases de datos

elección de softaware o lenguaje

SPSS y SAS son buenos y no se han quedado atrás en actualizaciones ymejoras al software, pero. . .La desventaja tanto de SPSS y SAS es que al no ser libres la velocidad con lacual se adaptan o mejoran es lenta, R y Python los han dejado atrás en cosade nada y basta ver la cantidad de librerías o módulos que existen de estosúltimos. Lo difícil es elegir entre ese montón de librerías las mejores paranuestras necesidades, para eso uno va y consulta en artículos de investigación,foros o blog y sin mucho esfuerzo las mejores persisten.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 28 / 98

Page 29: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Cómo trabajar con grandes bases de datos

Python

Python es un lenguaje de programación interpretado cuya filosofía hacehincapié en una sintaxis muy limpia y que favorezca un código legible.Se trata de un lenguaje de programación multiparadigma, ya que soportaorientación a objetos, programación imperativa y, en menor medida,programación funcional. Es un lenguaje interpretado, usa tipado dinámico y esmultiplataforma.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 29 / 98

Page 30: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Cómo trabajar con grandes bases de datos

Python 3: Fibonacci series up to n > def fib(n):a, b = 0, 1

while a > n:

print(a, end=' ')

a, b = b, a+b

print()

fib(1000)

0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 30 / 98

Page 31: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Cómo trabajar con grandes bases de datos

Map Reduce

MapReduce es una técnica de procesamiento y un programa modelo decomputación distribuida basada en java. El algoritmo MapReduce contiene dostareas importantes, a saber Mapa y reducir. Mapa toma un conjunto de datosy se convierte en otro conjunto de datos, en el que los elementos se dividen entuplas (pares clave/valor). En segundo lugar, reducir tarea, que toma la salidade un mapa como entrada y combina los datos tuplas en un conjunto máspequeño de tuplas. Como la secuencia de MapReduce el nombre implica, lareducción se realiza siempre después de que el mapa.La principal ventaja de MapReduce es que es fácil de escalar procesamiento dedatos en múltiples nodos. En el modelo MapReduce, el procesamiento dedatos primitivos son llamados mapas y reductores.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 31 / 98

Page 32: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Cómo trabajar con grandes bases de datos

public class WordCount {

public static class TokenizerMapperextends Mapper<Object, Text, Text, IntWritable>{

private final static IntWritable one = new IntWritable(1);private Text word = new Text();

public void map(Object key, Text value, Context context) throws IOException, InterruptedException {

StringTokenizer itr = new StringTokenizer(value.toString());while (itr.hasMoreTokens()) {

word.set(itr.nextToken());context.write(word, one);

}}

}

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 32 / 98

Page 33: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Cómo trabajar con grandes bases de datos

MapReduce con R

Existe la posibilidad de realizar “trabajos”" de MapReduce vía Hadoopstreming API a traves de R.Se trata de conectar con un servidor Hadoop pero a traves de nuestroordenador. Lanzamos las ordenes y nos devuelve los resultados en un tiempoinfinitamente inferior al que tardaría si intentasemos descargar los datos delservidor y utilizar R para realizar los modelos deseados.

En el siguiente enlace podreis encontrar más información al respecto:[link](http://www.revolutionanalytics.com/sites/default/files/

using-r-with-hadoop.pdf)

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 33 / 98

Page 34: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Cómo trabajar con grandes bases de datos

#! /usr/bin/env Rscript# map.Rlibrary(stringdist, quietly=TRUE)

input <- file("stdin", "r")

while(length(line <- readLines(input, n=1, warn=FALSE)) > 0) {# in case of empty lines# more sophisticated defensive code makes sense hereif(nchar(line) == 0) break

fields <- unlist(strsplit(line, "\t"))

# extract 2-gramsd <- qgrams(tolower(fields[4]), q=2)

for(i in 1:ncol(d)) {# language / 2-gram / countcat(fields[2], "\t", colnames(d)[i], "\t", d[1,i], "\n")

}}

close(input)

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 34 / 98

Page 35: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Machine Learning

Machine Learning

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 35 / 98

Page 36: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Machine Learning

Definición de ML

Machine learning is a method of data analysis that automates analytical modelbuilding. Using algorithms that iteratively learn from data, machine learning allowscomputers to find hidden insights without being explicitly programmed where tolook.(Definición de ML por SAS)

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 36 / 98

Page 37: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Machine Learning

DEbido a las nuevas tecnologías actuales, existe una gran información la cualdeseamos controlar de forma muy rápida y de manera completa, y sobre todoen el mundo empresaria.Algunos ejemplos que pueden resultar familiares:

El coche de Google sin conductor,La esencia del Machine Learning, las recomendaciones on-line de Amazon oNetflix,Conocer lo que los consumidores dicen de “tu” empresa en Redes SocialesDetección del fraude fiscal, en seguros, etc.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 37 / 98

Page 38: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Técnicas de Machine Learning

Técnicas de Machine Learning

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 38 / 98

Page 39: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Técnicas de Machine Learning

Supervised learning

Algoritmos que reciben la información de Entrada y Salida, así el algoritmoaprende y corregise los errores.

Métodos de ClasificaciónMétodos de Regresión

Ejemplo : anticiparse a las transacciones de tarjeta de crédito haciendoofertas al usuario previas a su gasto.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 39 / 98

Page 40: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Técnicas de Machine Learning

Unsupervised learning

Utilizado cunado no se dispone de un “histórico de datos”. El sistema noconoce la “verdadera respuesta”. El algoritmo debe ir viendo las respuesta yperseguir una meta óptima.

Mapas de ClasificaciónMapas de vecindadCluster k-meansMétodos de descoposición singular.

Ejemplo: Identificar segmentos de consumidores con característicassimilares los cuales puedan tratarse de forma similar en una campaña demarketing

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 40 / 98

Page 41: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Técnicas de Machine Learning

Semi-supervised learning y Reinforcement learning

Semi-supervised: igual que el supervisado pero con menos informacióndisponible. Un ejemplo es el reconocimiento de patrones (reconocimiento facialdesde una WebCam).

Reinforcement: usado en robótica, juegos y navegación. El algoritmo descubreatraves del prueba-error. El objetivo del algoritmo es aprender la mejor“política” posible.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 41 / 98

Page 42: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Técnicas de Machine Learning

Diferencia entre ML, Data Mining y Deep Learning

Data Mining aplica métodos desde distintas áreas para identificar patrones(conocidos) en los datos. Esto puede incluir algoritmos estadísticos, machinelearning, text analytics, series temporales y otras áreas analíticas. El datamingi también incluye el estudio y práctica del almacenamiento y manipulaciónde datos.

Machine Learning es una categoría dentro del Data mining que usaautomatismos y algoritmos iterativos paa encontrar patrones en los datos.Machine Learning se centra en algoritmos matemáticos, los cuales aprenden delos datos con una mínima intervención humana.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 42 / 98

Page 43: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Técnicas de Machine Learning

Las redes neuronales han introducido un nuevo concepto, el Deep Leraning,con gran importancia dentro de la Inteligencia Artificial, aprovechando lainformación del pasado. Los investigadores están ahora buscando cómo aplicarestos conocimientos al reconocimiento de patrones, sobre todo en el campo dela médicina, diagnóstico automático por imágenes, y en otros campos como losmercados financieros y el marketing en tiempo real.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 43 / 98

Page 44: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Data Mining y R

Data Mining y R

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 44 / 98

Page 45: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Data Mining y R

Paquestes de R para grandes bases de datos

Una vez demostrado que Big Data es simplemente lo que hace años se llamabaHigh Dimensional Data, vamos a ver cómo afrontar problemas con grandesbases de datos.

Rcpp: Para escribir funciones de R utilizando C++, aumentado la rapidez deejecución.data.table: Un camino alternativo para organizar conjuntos de datos paraorganizalos de forma muy, muy, muy rápida.parallel - Una altertativa cuando el banco de datos es muy grande.www.r-pbd.org: El proyecto “Programming with Big Data in R” es un conjuntode paquetes que permite realizar cálculos en high performance, high-level interfacesto MPI, ScaLAPACK, NetCDF4, y otras más.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 45 / 98

Page 46: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Data Mining y R

Métodos implementados en R

Neural networksDecision treesRandom forestsAssociations and sequence discoveryGradient boosting and baggingSupport vector machinesNearest-neighbor mappingk-means clusteringSelf-organizing mapsGenetic algorithmsExpectation maximizationMultivariate adaptive regression splinesBayesian networks Kernel density estimationPrincipal component analysisSingular value decompositionGaussian mixture modelsSequential covering rule buildingY otros más. . .

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 46 / 98

Page 47: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Text analytics

Text analytics

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 47 / 98

Page 48: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Text analytics

Text Mining

Es una de las ramas de la lingüística computacional que trata de obtenerinformacion y conocimiento a partir de conjuntos de datos que en principio notienen un orden o no estan dispuestos en origen para transmitir esainformacion.Es una tecnica clave en un mundo como el actual en el que continuamente serecogen datos desde distintas perspectivas y de muchos aspectos diferentes detodas las actividades propias de los seres humanos.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 48 / 98

Page 49: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Text analytics

La extracción de términos, es la técnica más básica que identifica lostérminos clave y entidades lógicas (nombres de las organizaciones, lugares,fechas y valores financieros entre otros). Es el formato más básico de mineríade texto. La estructura de datos más simple en la minería de texto es el vectorde características, una lista de las palabras ponderadas que aparecen en untexto.La extracción de información se basa en los términos extraídos del textopara identificar las relaciones básicas, tales como las funciones de las distintasempresas en una fusión,o la promoción de la reacción química de una enzima.La extracción de información se centra en un conjunto de hechos queconstituyen un evento, episodio, o estado.El análisis relacional, combina múltiples vínculos para formar modelos devarios pasos de procesos complejos. Es un conjunto de técnicas que permitetener una idea de las relaciones entre varias entidades con múltiples conexiones,pasos, o enlaces.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 49 / 98

Page 50: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Text analytics

Beneficios del Text Mining

Es importante diferenciar entre Minería de Datos de Texto y acceso a lainformación. Acceso a la información es ayudar a los usuarios a encontrar losdocumentos que satisfagan sus necesidades de información.El Text Mining se centra en cómo usar un bloque de información textual, comouna amplia base de conocimientos a partir de la cual se puede extraer nuevainformación nunca antes conocida.El Text Mining, contribuye a proporcionar sistemas suplementados conherramientas para el análisis exploratorio de los datos.También se puede entender el Text Mining como un proceso de análisisexploratorio de datos que conduce al descubrimiento de información hasta elmomento desconocida, o utilizada para responder a preguntas para las cualesno se conoce actualmente la respuesta.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 50 / 98

Page 51: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Text analytics

Text mining y R

pubmed.mineR: Text Mining of PubMed Abstractstext2vec: Fast Text Mining Framework for Vectorization and WordEmbeddingstextmineR: Functions for Text Mining and Topic Modelingtm: Text Mining PackageImport texts from files in the Alceste format using the tm text miningframeworkText Mining Distributed Corpus Plug-InImport Articles using

Text Mining E-Mail Plug-In

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 51 / 98

Page 52: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Redes Sociales

Redes Sociales

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 52 / 98

Page 53: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Redes Sociales

APIs

Para analizar el contenido de las redes sociales mediante técnicas de textmining, necesitamos primero obtener los datos.La gran mayoría de Redes Sociales publican sus APIs (ApplicationProgramming Interfaces) para que se puede acceder a su información desdeotras herramientas.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 53 / 98

Page 54: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Redes Sociales

Twitter

Existen distintos paquetes para obtener información de Twitter

Paquete DescripciónRKlout Fetch Klout Scores for Twitter UsersstreamR Access to Twitter Streaming API via RtwitteR R Based Twitter ClientgraphTweets Visualise Twitter Interactions

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 54 / 98

Page 55: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Redes Sociales

Twitter: ejemplosMapping Twitter Followers in R

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 55 / 98

Page 56: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Redes Sociales

Twitter conectar al APIPaso 1: CREAMOS UNA APLICACIÓN DENTRO DE TWITTER

Accedemos a la web https://apps.twitter.com ponemos nuestro usuario ycontraseña:

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 56 / 98

Page 57: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Redes Sociales

Paso 1: CREAMOS UNA APLICACIÓN DENTRO DE TWITTERNos indicará las “apps” que ya tenemos creadas o si queremos crear una nueva.Introducimos los datos y aceptamos las condiciones de uso.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 57 / 98

Page 58: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Redes Sociales

Paso 1: CREAMOS UNA APLICACIÓN DENTRO DE TWITTER

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 58 / 98

Page 59: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Redes Sociales

Paso 1: CREAMOS UNA APLICACIÓN DENTRO DE TWITTER

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 59 / 98

Page 60: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Redes Sociales

Paso 1: CREAMOS UNA APLICACIÓN DENTRO DE TWITTER - Vemosnuestros datos de autentificación

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 60 / 98

Page 61: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Redes Sociales

Paso 1: CREAMOS UNA APLICACIÓN DENTRO DE TWITTER - Tenermos quecrear nuestros token

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 61 / 98

Page 62: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Redes Sociales

Paso 1: CREAMOS UNA APLICACIÓN DENTRO DE TWITTER - Ya lostenemos creados token

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 62 / 98

Page 63: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Redes Sociales

Paso 1: CREAMOS UNA APLICACIÓN DENTRO DE TWITTER - Comporbamosque funcionan nuestros token

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 63 / 98

Page 64: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Redes Sociales

Paso 1: CREAMOS UNA APLICACIÓN DENTRO DE TWITTER - Nos dice loque vamos a hacer

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 64 / 98

Page 65: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Redes Sociales

Paso 1: CREAMOS UNA APLICACIÓN DENTRO DE TWITTER - La query quehacemos

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 65 / 98

Page 66: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Redes Sociales

Paso 1: CREAMOS UNA APLICACIÓN DENTRO DE TWITTER - La query quedevuelve

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 66 / 98

Page 67: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Redes Sociales

Paso 2: INSTALAR Y CARGAS LOS PAQUETES DE R– ROAuth: nos permite un interfax para la OAuth 1.0 specification, permitiendo alusuario identificarse vía OAuth al servidor que ha solicitado.– Twitter: Nos muestra el interface para la Twitter web API.

#install.packages("twitteR")#install.packages("ROAuth")library("twitteR")library("ROAuth")

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 67 / 98

Page 68: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Redes Sociales

Paso 3: CREAR Y GUARDAR LA TWITTER AUTHENTICATED CREDENTIALOBJECT

Para los usuarios de Windows:# Download "cacert.pem" filedownload.file(url="http://curl.haxx.se/ca/cacert.pem",destfile="cacert.pem")

#create an object "cred" that will save the authenticated object that we can use for later sessionscred <- OAuthFactory$new(consumerKey='3ws7ZnTp5KodYS4RsS0WZZC8x',

consumerSecret='ngKsMpyXsAxAg6LC3rmKLJfe8gslmrIYsfLW4fFYiFTLr64abk',requestURL='https://api.twitter.com/oauth/request_token',accessURL='https://api.twitter.com/oauth/access_token',authURL='https://api.twitter.com/oauth/authorize')

# Executing the next step generates an output --> To enable the connection, please direct your web browser to: <hyperlink> . Note: You only need to do this part oncecred$handshake(cainfo="cacert.pem")#6432188

To enable the connection, please direct your web browser to:https: // api. twitter. com/ oauth/ authorize? oauth_ token= 1Tpw2wAAAAAAuvqjAAABVDSxOGwWhen complete, record the PIN given to you and provide it here: 6432188

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 68 / 98

Page 69: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Redes Sociales

Paso 3: CREAR Y GUARDAR LA TWITTER AUTHENTICATED CREDENTIALOBJECT

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 69 / 98

Page 70: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Redes Sociales

Paso 3: CREAR Y GUARDAR LA TWITTER AUTHENTICATED CREDENTIALOBJECT

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 70 / 98

Page 71: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Redes Sociales

#save for later use for Windowssave(cred, file="twitter authentication.Rdata")

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 71 / 98

Page 72: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Redes Sociales

Paso 4: DESCARGAR TWEETS

library(twitteR)library(httr)

# Credenciales

consumer_key = "3ws7ZnTp5KodYS4RsS0WZZC8x"consumer_secret = "ngKsMpyXsAxAg6LC3rmKLJfe8gslmrIYsfLW4fFYiFTLr64abk"access_token = "28545046-kCfBBHxJbiTDkDY4vWDwaB5UnndLPYxfjrMMXPb7N"access_secret = "sL0O9XCl5YarLUwhXjFVq0wOGyRTMwieKIL8gegA8UWFB"

credentials_file = "cred.RData"

setup_twitter_oauth(consumer_key, consumer_secret, access_token, access_secret ) #, credentials_file)

#[1] "Using direct authentication"#Use a local file to cache OAuth access credentials between R sessions?#1: Yes <--#2: No

tw <- searchTwitter("#rstats",n=200,lang="en")saveRDS(tw, file="tweets.RDATA")

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 72 / 98

Page 73: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Redes Sociales

head(tw)# [[1]]# [1] "apowers411: RT @dataandme: ICYMI walk-through:# “How to start analyzing tweets with #Rstats &amp;# #Neo4j” by @stevenbeeckman https://t.co/HRrw4WgiLT https:/..."## [[2]]# [1] "cathyjingqiu: RT @hadleywickham:# Some advice on writing functions in# #rstats: https://t.co/nPnyEGlUP3. Feedback welcomed!"## [[3]]# [1] "ysabet_m: RT @drob: When teaching,# be careful not to mix up \"I learned this a long time ago\"# with \"This is simple\"\n\n#rstats"## [[4]]# [1] "yodacomplex: RT @drob: When teaching,# be careful not to mix up \"I learned this# a long time ago\" with \"This is simple\"\n\n#rstats"

#....

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 73 / 98

Page 74: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Redes Sociales

Ahora ya estamos en disposición de descargarnos los tweets del contenido quedeseemos, para analizarlos.

Sentiment AnalysisWordCloudGeographical Analysisetc.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 74 / 98

Page 76: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

WordCloud desde twitter

WordCloud desde twitter

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 76 / 98

Page 77: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

WordCloud desde twitter

library(“tm”)

library(twitteR)library(tm)library(wordcloud)library(RColorBrewer)

tw2<-readRDS(file="tweets.RDATA")

mach_text = sapply(tw2, function(x) x$getText())

# create a corpusmach_corpus = Corpus(VectorSource(mach_text))

# create document term matrix applying some transformationstdm = TermDocumentMatrix(mach_corpus,

control = list(removePunctuation = TRUE,stopwords = c("machine", "learning", stopwords("english")),removeNumbers = TRUE, tolower = TRUE))

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 77 / 98

Page 78: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

WordCloud desde twitter

# define tdm as matrixm = as.matrix(tdm)# get word counts in decreasing orderword_freqs = sort(rowSums(m), decreasing=TRUE)# create a data frame with words and their frequenciesdm = data.frame(word=names(word_freqs), freq=word_freqs)

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 78 / 98

Page 79: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

WordCloud desde twitter

# plot wordcloudwordcloud(dm$word, dm$freq,

random.order=FALSE,colors=brewer.pal(8, "Dark2"))

rstatsag

o

time

venn

datascience

https

learned

careful

drob longmix

simple

teaching

amp

diagrams

now

amcrisan

bad

excuses

httpstcoqaqiyg

like

new

sec

rbloggersupsetr

call

pyth

on

rladieslondon

vers

ion

analysis

banana

diagram

good

heres

infamous

mwilsonsayres

rladies

shiny

theatavism

via

chapter

cont

inuu

mio

datatable

looks

nilsgehlenborg register

rladiessf

sqlstop

welcome

writingbi

gdat

a

chdoig

community

cran

crashes

data

days

fwrite

ggplot

hosted

httpstcodlyeovykc

httpstcoiozlygetb

ipl

markdanese

nothing

open

opendata

package

part

party

prejudice

pride

readrreadcsv

rstudio

seeing

server

sign

theres

thrill

waste

web

inar

wondering

yorkr

# save the image in png formatpng("img/MachineLearningCloud.png", width=12, height=8, units="in", res=300)wordcloud(dm$word, dm$freq, random.order=FALSE, colors=brewer.pal(8, "Dark2"))dev.off()

## pdf## 2

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 79 / 98

Page 80: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

WordCloud desde twitter

WordClud comparativos

# user hits the error easy handled already used in multi handle, then dodetach(rCurl)detach("package:httr", character.only =TRUE)library(rCurl)library(httr)

# SAS tweetsfcb_tweets = userTimeline("SAS", n=100)

# SPSS tweetsat_tweets = userTimeline("IBMSPSS", n=100)

# rstats tweestrm_tweets = userTimeline("hadleywickham", n=100)

# VCF pcs tweetsvcf_tweets = userTimeline("Stata", n=100)

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 80 / 98

Page 81: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

WordCloud desde twitter

# get textatt_txt = sapply(fcb_tweets, function(x) x$getText())ver_txt = sapply(at_tweets, function(x) x$getText())mob_txt = sapply(rm_tweets, function(x) x$getText())pcs_txt = sapply(vcf_tweets, function(x) x$getText())

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 81 / 98

Page 82: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

WordCloud desde twitter

clean text

clean.text = function(x){# tolowerx = tolower(x)# remove rtx = gsub("rt", "", x)# remove atx = gsub("@\\w+", "", x)# remove punctuationx = gsub("[[:punct:]]", "", x)# remove numbersx = gsub("[[:digit:]]", "", x)# remove links httpx = gsub("http\\w+", "", x)# remove tabsx = gsub("[ |\t]{2,}", "", x)# remove blank spaces at the beginningx = gsub("^ ", "", x)# remove blank spaces at the endx = gsub(" $", "", x)return(x)

}

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 82 / 98

Page 83: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

WordCloud desde twitter

# clean textsatt_clean = clean.text(att_txt)ver_clean = clean.text(ver_txt)mob_clean = clean.text(mob_txt)pcs_clean = clean.text(pcs_txt)

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 83 / 98

Page 84: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

WordCloud desde twitter

#Join texts in a vector for each companyatt = paste(att_clean, collapse=" ")ver = paste(ver_clean, collapse=" ")mob = paste(mob_clean, collapse=" ")pcs = paste(pcs_clean, collapse=" ")

# put everything in a single vectorall = c(att, ver, mob, pcs)

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 84 / 98

Page 85: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

WordCloud desde twitter

# remove stop-wordsall = removeWords(all,c(stopwords("english"),

"att", "verizon","tmobile", "metropcs"))

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 85 / 98

Page 86: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

WordCloud desde twitter

# create corpuscorpus = Corpus(VectorSource(all))

# create term-document matrixtdm = TermDocumentMatrix(corpus)

# convert as matrixtdm = as.matrix(tdm)

# add column namescolnames(tdm) = c("ATT", "Verizon", "T-Mobile", "MetroPCS")

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 86 / 98

Page 87: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

WordCloud desde twitter

Plot comparison wordcloud# comparison cloudcomparison.cloud(tdm, random.order=FALSE,colors = c("#00B2FF", "red", "#FF0099", "#6600CC"),title.size=1.5, max.words=500)

# save the image in png formatpng("img/CaparasionCloud1.png",

width=12, height=8, units="in", res=300)comparison.cloud(tdm, random.order=FALSE,colors = c("#00B2FF", "red", "#FF0099", "#6600CC"),title.size=1.5, max.words=500)dev.off()![](img/CaparasionCloud1.png)

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 87 / 98

Page 88: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

WordCloud desde twitter

# commonality cloudcommonality.cloud(tdm, random.order=FALSE,colors = brewer.pal(8, "Dark2"),title.size=1.5)

pdf("img/CarriersCommCloud.pdf", width=8, height=8)commonality.cloud(tdm, random.order=FALSE,colors = brewer.pal(8, "Dark2"),title.size=1.5)dev.off()

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 88 / 98

Page 89: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Facebook

Facebook

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 89 / 98

Page 90: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Facebook

FaceBook desde R con Rfaceebook

Información actualizada: link

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 90 / 98

Page 91: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Facebook

Obteniendo permisos de Facebook

(Los cambios en las API pueden hacer que estos pasos sean dintintos, de la API 2.5 a las APi 2.6 varias cosas dejaron de funcionar).

Las restricciones de seguridad de Facebook hacen que no se puede analizar con lamisma facilidad que en Twitter, pero si se puede obtener bastante información.Tutorial obtenido desde: link

Para crear una nueva App iremos a link

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 91 / 98

Page 92: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Facebook

Click on “Apps” and choose “Add a New App“. In the next window choose“Website” and give your app a fancy name.After clicking on “Create a New App ID“, choose a category for your app inthe next window and apply the changes with “Create App ID“.You can then click on “Skip Quick Start” to get directly to the settings of yourapp.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 92 / 98

Page 93: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Facebook

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 93 / 98

Page 94: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Facebook

Una vez ya en R:

install.packages("devtools")library(devtools)

install_github("Rfacebook", "pablobarbera", subdir="Rfacebook")

require("Rfacebook")

fb_oauth <- fbOAuth(app_id="123456789", app_secret="1A2B3C4D",extended_permissions = TRUE)

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 94 / 98

Page 95: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Facebook

The console will then print you the message:

Copy the URL and go to the settings of your Facebook app. Click on the settingstab on the left side and then choose “+ Add Platform“.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 95 / 98

Page 96: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Facebook

Then add the URL in the field “Site URL” and save the changes.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 96 / 98

Page 97: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Facebook

Go back to your R session and hit enter. Then a browser window should open youhave to allow the app to access your Facebook account.If everything worked the browser should show the message

And your R console will confirm it with

save(fb_oauth, file="fb_oauth")

load("fb_oauth")

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 97 / 98

Page 98: BIG DATA: el Poder de la información - Conceptos ...umh1480.edu.umh.es/wp-content/uploads/sites/44/... · 1 BigDatayMarketing 2 Hadoopysuarquitectura 3 UtilidadesdelBigData 4 Cómotrabajarcongrandesbasesdedatos

Facebook

Analizando desde Facebook

me <- getUsers("me",token=fb_oauth)

my_likes <- getLikes(user="me", token=fb_oauth)

Ya tenemos los Likes de nuestros post, podemos realizar un text mining.

Xavi Barber (Cio-UMH) BIG DATA: el Poder de la información 98 / 98