En los artículos previos del blog hemos repasado cómo identificar el big data, qué tipo de datos incluye, y qué tipo de aplicaciones tiene entre diferentes sectores y tamaños de empresas y organizaciones. Algunas preguntas que nos pueden surgir cuando ya tenemos una visión global de esta apasionante nueva tendencia es cómo se almacenan esos datos y cómo se usan. De lo primero lo dejamos para un artículo próximo. Hoy trataremos el tema de cómo analizar esos datos a nivel teórico, con una explicación al alcance de todos, y algunos ejemplos prácticos de las diferentes técnicas.
Una vez que tenemos preparados los datasets de big data existen innumerables técnicas para analizar esos datos. En este artículo cubrimos algunas de las técnicas más utilizadas a lo largo de diferentes sectores del mercado.
No todas las técnicas que mencionamos a continuación requieren el uso de big data, algunas se pueden aplicar con eficacia en datasets más pequeños, pero sí que todas ellas pueden ser aplicadas al big data y poder así extraer resultados de provecho de esos enormes grupos de datos de diversas fuentes.
Test A/B, es una técnica en la que comparamos un grupo de control con una variedad de grupos de test para determinar qué cambios o tratamientos producirán una mejora dada una variable objetiva (por ejemplo, un ratio de respuesta de una acción de marketing). Un ejemplo de este experimento de testing A/B (también llamado split testing o bucket testing), es determinar qué texto, maquetación, imágenes o colores producen una mejora en los ratios de conversión de una tienda online o una acción de marketing por email. El big data nos permite ejecutar y analizar una gran cantidad de pruebas, siempre asegurando que los grupos son de un tamaño suficiente para detectar diferencias estadísticamente significativas entre el grupo de control y los grupos de pruebas. Cuando manipulamos más de una variable en el experimento simultáneamente, la generalización multivariante de esta técnica, que se aplica a modelos estadísticos, se le llama A/B/N testing.
Las reglas de asociación son un conjunto de técnicas que permiten descubrir relaciones interesantes. En minería de datos y aprendizaje automático, las reglas de asociación se utilizan para descubrir hechos que ocurren en común dentro de un determinado conjunto de datos, por ejemplo entre variables de varias bases de datos enormes. Estas técnicas consisten en aplicar una variedad de algoritmos para generar y testear las pautas posibles. Una aplicación práctica sería el análisis de la cesta de la compra de un comerciante online, en la que podemos determinar qué productos son comprados conjuntamente con frecuencia, para realizar acciones de marketing eficientes. Por ejemplo, a priori quizá no se nos hubiera ocurrido pero se ha descubierto que un producto que se compra en los supermercados junto con los pañales es la cerveza.
Clasificación. Un conjunto de técnicas para identificar las categorías a las que pertenecen los puntos de datos basado en un conjunto de pruebas que ya contenga los puntos de datos categorizados. Una aplicación de esta técnica es la predicción de comportamiento de un grupo de clientes segmentado. Si tenemos una hipótesis o un objetivo determinado claro podemos analizar el comportamiento del conjunto de clientes clasificados por decisiones de compra, ratio de churn, ratio de abandono, tasa de consumo o cualquier otra variable que pueda ser analizada. A estas técnicas también se les llaman de aprendizaje supervisado.
Análisis cluster (o de conglomerados) es un método estadístico para clasificar objetos separando un grupo diverso en grupos más pequeños de objetos similares, cuyas características de similitud son conocidas previamente. Un ejemplo de análisis cluster ayuda a segmentar a los consumidores en grupos similares para realizar acciones de marketing segmentadas.
Crowdsourcing que se podría traducir como «colaboración abierta distribuida» o «externalización abierta de tareas», se trata de una técnica de recogida de datos facilitada por una comunidad o gran conjunto de gente conectada en torno a la red que llevan a cabo una tarea conjunta.
Fusión e integración de datos. Son una serie de técnicas que permiten integrar y analizar datos de múltiples fuentes con el objeto de realizar descubrimientos entre la información de manera más eficiente y potencialmente más precisa que si fueran analizados utilizando una sola fuente de datos. Un ejemplo práctico sería la aplicación combinada de diversos sensores de datos de dispositivos conectados en la llamada Internet de las cosas, integrado con el rendimiento de sistemas complejos distribuidos en una explotación petrolífera. Otro ejemplo sería el análisis via procesamiento de lenguaje natural de datos de redes sociales combinados con datos de ventas en tiempo real, con el objetivo de determinar el efecto que está teniendo una campaña de marketing en el sentimiento de los clientes y su comportamiento reflejado en las decisiones de compra.
Data mining. Consiste en extraer patrones de grandes datasets mediante la combinación de métodos estadísticos y de aprendizaje automático con la gestión de las bases de datos. Entre las técnicas de datamining se incluyen técnicas de aprendizaje de reglas de asociación, análisis de agrupamiento, clasificación y regresión. Como ejemplos de aplicaciones prácticas estarían la minería de datos de clientes para determinar qué segmentos son más proclives a responder a una oferta, minar datos de recursos humanos para identificar características de los empleados de más éxito, o el análisis de cestas de compras para modelar el comportamiento de compras de los clientes.
Aprendizaje mediante ensembles (ensemble learning). Consisten en utilizar múltiples modelos predictivos, ya hayan sido desarrollados mediante estadística o aprendizaje automático, para obtener mejores predicciones de rendimiento que puedan ser obtenidos de cualquiera de los modelos constitutivos. Son un tipo de aprendizaje supervisado.
Algoritmos genéticos. Es una técnica utilizada para optimizar datos inspirada en el proceso de la evolución natural o supervivencia de los mejor adaptados. Con esta técnica las soluciones posibles son codificadas como si fueran cromosomas que pueden combinarse y mutar. Estos cromosomas son seleccionados y separados para sobrevivir dentro de un ecosistema modelado que determina la adaptabilidad o el rendimiento de cada uno dentro del conjunto. Estos algoritmos evolutivos funcionan bien para solucionar problemas no lineales, como por ejemplo, mejorar la planificación de tareas en la industria manufacturera, o la optimización del rendimiento de una cartera de inversión.
Aprendizaje automático. Una especialidad dentro de la ciencia computacional también conocida como inteligencia artificial, que se ocupa del diseño y desarrollo de algoritmos por los cuales se permite a los ordenadores pueden hacer evolucionar comportamientos basados en datos empíricos. Uno de los objetivos principales de esta técnica es aprender de forma autónoma a reconocer patrones complejos y tomar las decisiones basándose en los datos. Un ejemplo sería el procesamiento de lenguaje natural, como Siri o Google Now, que ya llevan nuestros smartphones.
Redes neuronales. Los modelos computacionales, inspirados por los trabajos de redes neuronales biológicas, como las conexiones de las células del cerebro, que buscan patrones entre datos. Las redes neuronales son apropiadas para buscar patrones no lineales y optimización. Entre las aplicaciones prácticas de esta técnica, por ejemplo, la identificación de los clientes de alto valor que están en riesgo de cambiar de proveedor, o la identificación de partes de seguro fraudulentos.
Análisis de redes. Son técnicas empleadas para caracterizar relaciones entre nodos separados en un gráfico o red. Al analizar las conexiones entre individuos de una comunidad en las redes sociales podemos extraer cómo fluye la información o quién ejerce la mayor influencia y sobre quiénes. Entre las aplicaciones prácticas están la identificación de los líderes de opinión para realizar una acción de marketing precisa, o identificar los cuellos de botella en los flujos de información de las compañías.
Análisis de sentimiento. Consiste en la aplicación de técnicas como la de procesamiento de lenguaje natural así como otras técnicas analíticas para identificar y extraer información subjetiva de las fuentes. Pueden identificar el sentimiento hacia una marca, producto o característica por su tipo, como la polaridad (pudiendo ser un sentimiento positivo, negativo o neutral), así como el grado y fuerza del sentimiento. En big data esta técnica se utiliza sobre todo en blogs, microblogs, y redes sociales para determinar cómo los segmentos y el mercado reaccionan ante acciones previstas e imprevistas.
Análisis espacial. Son una serie de técnicas, sobre todo estadísticas, que permiten analizar las propiedades topológicas, geométricas o geográficas codificadas dentro de un conjunto de datos. A menudo estos datos de ubicación son capturados gracias a un GIS (sistemas de información geográfica) que registran, por ejemplo, coordenadas de longitud y latitud. Incorporando datos espaciales en regresiones espaciales podemos averiguar la correlación entre consumidores que desean adquirir un producto y su localización. También se emplean en simulaciones, por ejemplo, una empresa que desee expandirse puede averiguar cómo respondería la red de una cadena de suministro según donde estuviera ubicada.
Simulación. El modelado del comportamiento de sistemas complejos se utiliza para previsión, predicciones y planificación de escenarios futuros. El método Monte Carlo, por ejemplo, consiste en una serie de algoritmos basados en la repetición de sampleados aleatorios, permitiendo ejecutar miles de simulaciones, cada una con supuestos diferentes. Se obtiene así una muestra del histograma con la distribución probabilística de los resultados. Se aplica mucho en el sector financiero, por ejemplo, para realizar una evaluación de las opciones de llegar a objetivos de resultados dada la incertidumbre sobre el éxito de las iniciativas aprobadas.
Análisis de series temporales. Técnicas para analizar secuencias de puntos de datos, que representan valores en el tiempo con el objetivo de extraer de los datos características interesantes y con sentido. Ejemplos serían las cotizaciones bursátiles de las acciones en cada franja horaria, o el número de pacientes diagnosticados con una enfermedad cada día. Se emplea la previsión de series temporales para predecir futuros valores basándonos en valores pasados conocidos de la misma serie o de otras similares. Entre las técnicas englobadas en este grupo se encuentra el modelado estructural, consiste en descomponer una serie en componentes que muestran una tendencia, temporalidad o distribución residual para identificar patrones cíclicos entre los datos. Como aplicación práctica, podemos citar los forecasts de ventas, o la estimación del número de personas que contraerán una enfermedad contagiosa, como vimos previamente que lleva haciendo Google con el virus de la gripe desde hace ya seis años.
Esta lista no pretende mostrar todas las técnicas existentes sino las más utilizadas. Los investigadores y proveedores de las soluciones que facilitan estas aplicaciones, como IBM, están continuamente trabajando para generar nuevas técnicas y mejorar las existentes, especialmente las referidas a dar respuesta a la necesidad de analizar nuevas combinaciones de datos.
Fuentes:
Big data: The next frontier for innovation, competition, and productivity de McKinsey Global Institute
Wikipedia http://es.wikipedia.org/