Archivo de la etiqueta: data mining

Expectativas y realidades con el Big Data

Big Data y Dilbert (Fuente: http://www.bigdata-madesimple.com/wp-content/uploads/2015/01/bigdata-knows-everything.jpg)
Big Data y Dilbert (Fuente: http://www.bigdata-madesimple.com/wp-content/uploads/2015/01/bigdata-knows-everything.jpg)

NINO y GIGO (Nothing in, Nothing Out, Gargabe in, Garbage Out). Estos dos paradigmas son mucho más ilustrativos de lo que parecen. Aquí es donde yo suelo hablar del concepto “dato relevante“. El primero de ellos, básicamente refleja una realidad en la que por mucho que tengamos un gran modelo o herramienta, si los datos de entrada, no son buenos, no podremos hacer nada. Y lo mismo, si los datos de entrada no son de buena calidad.

Es por ello que creo en ocasiones es bueno hablar de las expectativas que el Big Data ha venido a generar, y lo que luego efectivamente se ha convertido en realidad. Se han generado estos año muchas expectativas con Google y Facebook y lo que supuestamente saben de nosotros. Saben más que el resto, sin duda. Pero, suavicemos el discurso. No saben todo.

¿Por qué? Pues porque el concepto de “dato relevante” no siempre es alcanzado. Fijense en la siguiente representación gráfica:

Datos relevantes para proyectos de Big Data (Fuente: https://media.licdn.com/mpr/mpr/shrinknp_800_800/AAEAAQAAAAAAAAIEAAAAJGRhNWYzODhmLTdhZjItNDYxMS04MTY2LWZmMjFmNjgyYjg5ZQ.png)
Datos relevantes para proyectos de Big Data (Fuente: https://media.licdn.com/mpr/mpr/shrinknp_800_800/AAEAAQAAAAAAAAIEAAAAJGRhNWYzODhmLTdhZjItNDYxMS04MTY2LWZmMjFmNjgyYjg5ZQ.png)

Como se puede apreciar los datos más relevantes están alejados de lo que hoy todavía las empresas disponen. Incluso en las grandes empresas tecnológicas de Internet. La horquilla tradicional de datos relevantes/datos totales se mueve entre el 10% y el 15%. Las empresas disponen de muchos datos demográficos (si se fijan, sobre los que pivotan la gran mayoría de noticias), pero apenas saben nada sobre nuestras actitudes o necesidades, por ejemplo. Se aproximan con modelos sencillos. De ahí, que muchas de las expectativas que se han venido generando con el “Big Data”, luego las tratas de aterrizar, y se vuelven complicadas.

No es lo mismo los datos demográficos, que los sociológicos, de comportamiento, de actitud o de necesidades. El valor incrementa con el orden en la frase anterior. Pero normalmente construimos discursos alrededor de datos demográficos. Que tienen valor, vaya, pero  no el que tienen los de actitud o necesidades.

En este punto hay que hablar de lo que se denomina “First-Party Data” y “Third-Party Data”. Las fuentes “First-Party” son aquellas que son propias de las empresas. Entre ellas, destacan:

Fuente: http://www.business2community.com/marketing/personalize-retail-experience-data-01491335
Fuente: http://www.business2community.com/marketing/personalize-retail-experience-data-01491335

Ahora mismo la explotación de estos datos está siendo limitada por la sencilla razón de no disponer de un único punto central que integra y permite la explotación de datos centralizada. Aquí es donde cobra sentido el concepto de “data lake“, por cierto.

Por otro lado, los “Third-Party Data”, son aquellos datos que compramos a “mayoristas” o “proveedores” de datos. Datos relacionados con el consumo, estilo de vida, demografía, comportamiento en tiempo real, etc. Permiten completar la “foto” a una empresa. Ya hablamos en cierto modo de los problemas que entrañaba para la privacidad de un sujeto estas transacciones de datos.  En este caso, las limitaciones de las empresas parecen venir desde la óptica de la calidad de datos: frescura, precisión, etc., problemas ligados a la calidad de datos de lo que ya hemos hablado en el pasado.

Las empresas, ante la limitación que suelen tener de explotar sus “First-Party Data“, deberían comenzar a mirar hacia los “Third-Party Data” si quieren enriquecer muchos sus modelos y hacer más más precisos sus modelos. La capacidad de generar valor a partir del análisis de datos necesita de integrar nuevas fuentes de datos. Porque los datos que son más importantes no quedan recogidos en las operaciones diarias de una empresa.

Y es que el paradigma del “Big Data” es un medio, no un fin. Es un instrumento del que podemos valernos para obtener conclusiones. Pero el valor de los mismos, dependerá en gran medida de la materia prima con la que trabajemos. Y por ello, muchos de los fines están todavía por inventar. De ahí que suela decir que no hay dos proyectos de Big Data iguales; depende mucho de cómo las empresas vayan avanzando desde sus datos demográficos a los datos de actitud. De sus datos propios (“First-Party Data“) a integrar también datos de terceros (“Third-Party Data“).

Creo que muchas de las expectativas no alcanzadas aún hoy se deben a que seguimos viendo este campo del análisis de datos como el “Data Mining original. Aquel en el que el objetivo era explotar grandes conjuntos de datos. Que no digo que esto no siga siendo válido; pero si queremos alcanzar las grandes expectativas generadas, debemos mirar “más allá”. Y entender el valor que tienen los datos que nos pueden aportar los datos de terceros o los “Open Data“, me resulta bastante crítico. Y así, poder alcanzar mejor las expectativas para hacerlas reales.

El abuso de la palabra “Big Data”

Es innegable que la palabra “Big Data” lleva ya tiempo con nosotros y está de moda. Su uso no ha parado de crecer desde mediados de 2012, que es cuando aparecen varios artículos que comienzan a popularizar el paradigma.

 

Es tanto su uso, que ha dado un salto desde los foros más tecnológicos a los más populares. Son varios periódicos generalistas que se atreven a encabezar sus noticias con titulares como éstos:

Fuente: http://economia.elpais.com/economia/2016/06/30/actualidad/1467300223_055396.html
Fuente: http://economia.elpais.com/economia/2016/06/30/actualidad/1467300223_055396.html
Fuente: http://www.elmundo.es/economia/2016/06/07/57569c8722601d712e8b45ab.html
Fuente: http://www.elmundo.es/economia/2016/06/07/57569c8722601d712e8b45ab.html
Fuente: http://www.expansion.com/juridico/actualidad-tendencias/2016/06/05/5751c298268e3ea50d8b4660.html
Fuente: http://www.expansion.com/juridico/actualidad-tendencias/2016/06/05/5751c298268e3ea50d8b4660.html

Este tipo de titulares, ha provocado que ahora todo el mundo diga que “hace Big Data” o que todos los problemas de una empresa “se arreglen haciendo Big Data“. Ojo, no con esto se debe quitar valor a lo que hacen. Lo que ocurre, es que quizás no estén poniendo en valor el paradigma del Big Data. Sino que puede que estén haciendo un proyecto de Data Mining o Minería de datos de toda la vida. Pero de eso, no se habla en las noticias. En la siguiente gráfica de Google Trends podéis ver cómo para la categoría de “Noticias”, últimamente se cita mucho “Big Data”, pero bastante menos “Data Mining” o “Minería de Datos”.

Creo que debiéramos empezar a ser un poco más rigurosos en su uso. Es decir, debiéramos empezar a preguntarnos si es “Big Data” todo lo que decimos que lo es. Y es que sino a este paso, ocurrirá como ya pasó con términos como “calidad” o “innovación“, que de tanto uso, ahora la gente se muestra reacia al valor que aportan disponer de importantes equipos de calidad e innovación.

Y es que el uso de los métodos de análisis de datos para la mejora de la competitividad y el día a día de las organizaciones no es nada nuevo. Hace décadas que llevamos haciendo uso de estas técnicas. Quizás no en todos los sectores (lo que ahora sí podemos decir está ocurriendo). Pero en el sector financiero o asegurador, llevan décadas empleando técnicas de minería de datos para sacar valor de sus grandes volúmenes de datos. Lo han empleado siempre para la detección de fraudes, perfiles de propensión al impago o para el scoring en la concesión de créditos.

Sí que es cierto que estos métodos, ahora son más sofisticados. Pero eso realmente no se debe a la evolución de los algoritmos solo, sino a la existencia de una mayor cantidad de datos, de muy diferentes fuentes, almacenados en muy diferentes formatos y sobre todo, generados a gran velocidad. Y esto último sí que hace distinguir un proyecto de Big Data de otro que no lo es.

Lo que ocurre en un momento determinado en el tiempo es que se empieza a popularizar el término “Big Data” cuando otro tipo de empresas no financieras ni aseguradoras, especialmente las grandes tecnológicas, comienzan a aplicar esas técnicas de minería de datos. Pero se dan cuenta que muchas de las técnicas que se venían empleando no son válidas. Básicamente por:

  • El gran volumen de datos que disponen
  • La gran variedad de formatos de datos
  • La velocidad a la que generan nuevos datos

Sí, estamos hablando de las famosas 3 “V” que se concibieron inicialmente, que son las 3 (por mucho que ahora haya una burbuja de “V”) que creo siguen caracterizando y definiendo mejor a este paradigma del “Big Data”. Volumen, Variedad y Velocidad. Y son estas 3 “V”, las que hace que nos demos cuenta que lo que veníamos haciendo hasta la fecha no es válido. Se necesitan nuevas tecnologías. Y se desarrollan varias nuevas tecnologías que hacen más fácil tan ardua labor, especialmente el modelo MapReduce y los sistemas de ficheros distribuidos. Y, el trabajo que anteriormente era imposible o muy difícil hacerlo, ahora se hace posible gracias a un conjunto de máquinas (clústers) que se distribuyen el trabajo, y que en agregado, superan a cada máquina que anteriormente existía.

Por todo ello, creo que es compartido por todos afirmar que no todas las empresas que hagan uso de técnicas de minería de datos están haciendo uso del Big Data. Como paradigma que es, existen una seria de condicionantes del problema que lo hacen singular y diferente.  Y por ello, es importante dejar claro que, por favor, no usemos el término allí donde no aplique. Y aplica, en aquellos contextos que se rigen por ese paradigma de las 3 “V” que caracterizan muy bien los retos que tienen muchas empresas por delante.

Eligiendo una herramienta de Analítica: SAS, R o Python

(Artículo escrito por Pedro Gómez Tejerina, profesional del sector financiero, y profesor de nuestro Programa de Big Data y Business Intelligence)

Probablemente si estás leyendo este blog tengas un problema analítico que quieras resolver con datos. Es posible también que tengas unos conocimientos de estadística que quieras poner en práctica, así que es hora de elegir una herramienta analítica. Así que vamos a intentar orientaros en la elección, aunque las tres herramientas de analítica nos van a permitir hacer en general los mismos análisis:

  1. Conocimientos previos de programación. Si sabes programar y vienes de un entorno web, probablemente Python sea el más fácil de aprender. Es un lenguaje más generalista que los otros dos y solamente tendrás que aprender el uso de las librerías para hacer análisis de datos (Pandas, Numpy, Scipy, etc.). Si no es el caso y lo tuyo no es programar, SAS es más fácil de aprender que R, que es el lenguaje más diferente de los tres, dado su origen académico-estadístico.
  2. Herramientas User Friendly y GUI: Tanto SAS (SAS Enterprise Guide, SAS Enterprise Miner, SAS Visual Analytics) como R (Rattle, RStudio, Rcommander) tienen buenas interfaces visuales que pueden resolver problemas analíticos sin tener la necesidad de programar. Python dispone de menos (Orange), aunque dispone de una buena herramienta de enseñanza: los notebooks.
  3. Coste de las herramientas. SAS es un software comercial y bastante caro. Además el uso de cada una de sus capacidades se vende por paquetes, así que el coste total como herramienta analítica es muy caro. La parte buena es que tienes un soporte. Por el contrario, tanto R como Python son gratuitos, si bien es cierto que empresas como Revolution Analytics ofrecen soporte, formación y su propia distribución de R con un coste bastante inferior a SAS. Normalmente sólo las grandes empresas (bancos, compañías telefónicas, cadenas de alimentación, INE, etc.) disponen de SAS debido a su coste.
  4. Estabilidad de la herramienta. Al ser un software comercial, en SAS no hay problemas de compatibilidad de versiones. R al tener un origen académico ofrece distintas librerías para hacer un mismo trabajo y no todas funcionan en versiones anteriores de R. Para evitar estos problemas en una gran empresa recomendaría utilizar alguna distribución comercial de Revolution Analytics por ejemplo.
  5. Volumen de datos. Las única diferencia es que SAS almacena los datos en tu ordenador en vez de en memoria (R), si bien es cierto que las 3 tienen conexiones con Hadoop y las herramientas de Big Data.
  6. Capacidad de innovación. Si necesitas utilizar las últimas técnicas estadísticas o de Machine Learning SAS no es tu amigo. Es un software comercial que para garantizar la estabilidad de uso entre versiones retrasa la incorporación de nuevas técnicas. Aquí el líder es R seguido de Python.

Conclusión: no es fácil quedarse con una herramienta de analítica y las personas que trabajamos en grandes compañías estamos habituados a trabajar con varias. SAS ofrece soluciones integradoras a un coste elevado. R tiene muchas capacidades de innovación debido a su origen y Python tiene la ventaja de ser un lenguaje de programación generalista que además puede servir para hacer Data Mining o Machine Learning. La elección dependerá de lo que estés dispuesto a pagar y tus necesidades específicas. Yo tengo la suerte o desgracia de trabajar en una gran empresa, así que dispongo de las 3.

Tendencias en lo que a demanda de perfiles con conocimiento de R, SAS y Python se refiere (Fuente: http://www.statsblogs.com/2013/12/06/sas-is-abandoned-by-the-market-for-advanced-analytics/)
Tendencias en lo que a demanda de perfiles con conocimiento de R, SAS y Python se refiere (Fuente: http://www.statsblogs.com/2013/12/06/sas-is-abandoned-by-the-market-for-advanced-analytics/)

Más información en:

  • http://www.analyticsvidhya.com/blog/2014/03/sas-vs-vs-python-tool-learn/
  • http://blog.datacamp.com/r-or-python-for-data-analysis/

Del Data Mining al Big Data en el mundo del Marketing

(Artículo escrito por Pedro Gómez Tejerina, profesional del sector financiero, y profesor de nuestro Programa de Big Data y Business Intelligence)

¿Alguna vez te has preguntado cómo eligen las grandes compañías los clientes a los que lanzan sus campañas? ¿Por qué por ejemplo puede un banco enviarme un mail o una carta para ofrecerme el último plan de pensiones que han diseñado y no a mi vecino si los dos somos clientes del mismo banco y vivimos en el mismo edificio?

La selección de a qué clientes lanzar campañas de marketing forma parte de lo que se denomina Data Mining o Minería de Datos. Tradicionalmente las grandes compañías han analizado los datos históricos que almacenan sobre sus clientes para buscar aquellos clientes que no tienen contratado un producto actualmente con ellas, pero que de alguna forma sí se parecen a otros clientes que sí tienen dicho producto. La idea es sencilla: ¿no tendría sentido sólo enviar comunicaciones sobre campañas de Marketing de un producto a los clientes que aunque no lo tengan contratado actualmente sí tengan probabilidad de hacerlo en un futuro? La base sobre la que se basan para calcular esas probabilidades es la estadística y los algoritmos de Machine Learning y las comparaciones se hacen en base a los datos históricos almacenados sobre los clientes.

Haciendo esas comparaciones basadas en los datos que tienen sobre los clientes las empresas consiguen aumentar sus tasas de éxito de contratación de productos de manera significativa y ofrecen productos que de cierta forma son mucho más personalizados, ya que tienen en cuenta mis datos como persona individual antes de ofrecérmelos. Además se ahorran mucho dinero en publicidad, ya que en cierta forma están centrando el tiro seleccionando únicamente los clientes con alta probabilidad (propensión) de compra.

Pero actualmente estamos en una nueva era caracterizada por la abundancia de información (Big Data). ¿Por qué no utilizar además de la información interna de los clientes datos que podamos obtener de fuentes externas? ¿No tendría sentido en el ejemplo del banco anterior tener en cuenta que yo en alguna ocasión he navegado por internet buscando información sobre planes de pensiones? ¿No he mostrado de alguna forma ya mi interés por el producto al haberlo buscado por internet? ¿No sería más probable que yo contratara el plan de pensiones que mi vecino que nunca se ha preocupado por su jubilación?

Como empresa podría utilizar los datos de navegación de mi web para mejorar el proceso anterior. ¿Y si además a pesar de que el banco no tiene información sobre el valor de la casa en la que vivo, obtiene información sobre el valor de la misma en el catastro u otras fuentes de información externas? El cruce de información interna sobre los clientes con información externa es lo que actualmente se denomina Big Data y permite a las grandes empresas obtener más información sobre los clientes y tal y como hemos visto con mi ejemplo, mejorar su precisión a la hora de elegir futuros clientes para sus productos.

Moraleja: si antes las grandes compañías lo sabían todo sobre nosotros, hoy todavía más. Como consuelo, al menos es más probable que sólo reciba comunicaciones sobre productos en los que es más probable que esté realmente interesado no tengan que eliminar demasiados emails comerciales porque no me interesan.