¿Qué es Data Science?
Actualmente el gran desarrollo del Big Data ha provocado que las empresas tengan cada vez más datos que deben tratar para conseguir información útil para su desarrollo. En este marco se ha desarrollado el Data Science como técnica para tratar esos datos y obtener el conocimiento necesario, en algunas situaciones empleando técnicas de minería de datos, y en otras, usando técnicas de análisis estadístico más tradicionales.

Data Science es la práctica de la extracción de conocimiento generalizable a partir de los datos. Además de incorporar las técnicas y métodos del trabajo de la investigación científica, es intensiva en procesamiento estadístico, reconocimiento de patrones, visualización y modelización de la incertidumbre, entre otras técnicas.
Los profesionales del Data Science se suelen denominar «Científicos de Datos» o «Data Scientists» y trabajan en entornos computacionales que proporcionan lenguajes de programación adaptados o extendidos para el trabajo estadístico, y un amplio abanico de algoritmos y técnicas de visualización para trabajar de forma interactiva sobre los datos (los dos lenguajes más utilizados son Python y R).
Actividades en el Data Science
El concepto de Data Science hace referencia al descubrimiento de hechos y relaciones interesantes en grandes volúmenes de datos. En este proceso normalmente se deben realizar las siguientes actividades:
- Determinar las fuentes de información que pueden ser útiles y dónde conseguirlas
- Diseñar el esquema de un almacén de datos (estructurados y no estructurados) que consiga unificar de manera operativa toda la información recogida creándose un Data Lake.
- Implantación del Data Lake que permita la «navegación» y visualización previa de sus datos.
- Selección, limpieza y transformación de los datos.
- Seleccionar y aplicar el método de Machine Learning o estadístico apropiado, que servirá para entender los datos y crear patrones.
- Evaluación, interpretación, transformación y representación de los patrones extraídos.
- Comunicación y uso del nuevo conocimiento obtenido.
Dentro del Data Science una de las tareas más importantes es tratar de extraer modelos de los datos que permitan bien comprenderlos mejor o bien realizar predicciones. Este proceso se realiza a través del Machine Learning o Aprendizaje Automático.
¿Qué es el Machine Learning o Aprendizaje Automático?
El Machine Learning es una rama de la Inteligencia Artificial y se ocupa de desarrollar técnicas para que los ordenadores «aprendan» a partir de conjuntos de datos. La idea general es la de extraer algún tipo de modelo a partir de los datos. Ese modelo es «lo aprendido» y nos sirve bien para clasificar o predecir, o bien para conocer alguna característica de los datos que antes no conocíamos.
Machine Learning y Big Data
El Machine Learning está en el centro de las soluciones analíticas de Big Data y es la clave de su desarrollo.
La tecnología e Internet ha hecho que cada vez las empresas y administraciones puedan tener más datos de clientes, usuarios y ciudadanos. Esta es la base de la hipótesis de que Big Data ofrece nuevas oportunidades a las técnicas ya clásicas de aprendizaje automático. No obstante, más datos no quiere decir necesariamente mejores resultados del aprendizaje, aunque sí aumenta significativamente las oportunidades para obtener buenos resultados.
Aprendizaje Supervisado y Aprendizaje no Supervisado
En el aprendizaje supervisado, nuestros datos están etiquetados, es decir, cada instancia de nuestro conjunto de datos tiene un atributo que es el que clasifica a esa instancia en dos o más clases. Por ejemplo, si tenemos un conjunto de datos de hipotecas, podríamos querer tener un modelo del impago de las mismas. Entonces tendríamos en nuestro conjutno de datos:
- Atributos de entrada: podrían ser en el ejemplo el valor de la hipoteca, el tipo de interés, la edad del cliente, la profesión, etc.
- Un atributo que es la «salida», etiqueta u objetivo, que en este caso sería el campo que indicase si ese cliente pagó o no la hipoteca.
Así, los algoritmos «aprenden» tratando de buscar diferencias entre las características de las instancias de clientes que impagaron y lo que no. Lo fundamental de estas técnicas es que los datos tienen que venir previamente clasificados.
En el caso del aprendizaje no supervisado, no se tiene esa etiqueta que clasifica a priori a las instancias. Por ejemplo, podríamos querer simplemente buscar segmentos de clientes, es decir, buscar grupos de clientes homogéneos para crear productos personalizados, pero no sabemos a priori cuántos grupos habrá ni sus características.
Un ejemplo de análisis supervisado
Hay muchos tipos de aprendizaje supervisado, pero las siguientes son tres clases interesantes porque se aplican a categorías de problemas diferentes.
- ¿Comprará el cliente el servicio X si le doy el incentivo I? Este es un problema de clasificación, ya que el objetivo es binario (SI/NO).
- ¿Qué paquete de servicio (X, Y, Z, W) comprará el cliente dado el incentivo I? También es una clasificación, pero el objetivo tiene múltiples valores o clases, en este caso cuatro.
- ¿Cuánto usará el cliente el servicio X? En este caso el objetivo no es una etiqueta, sino un número. Esto se ajusta a los modelos de regresión.
Por lo anterior vemos que los problemas difieren en la variable objetivo que guía el aprendizaje, que pueden ser etiquetas (valores nominales, clases) o valores numéricos que representan cantidades.
Un ejemplo de análisis no supervisado
En ocasiones tenemos un conjunto de datos y hacemos preguntas sin un objetivo de predicción o clasificación, por ejemplo: ¿hay grupos diferentes en nuestra base de clientes? Este es un caso de aprendizaje no supervisado.
Hay técnicas de aprendizaje que son específicas del aprendizaje no supervisado, concretamente:
- El agrupamiento (clustering) intenta agrupar los individuos por su similaridad, sin ningún criterio especial a priori. Esta técnica es útil para observar los grupos naturales que existen, porque estos nos pueden sugerir objetivos para otras tareas de minería. También se utiliza para buscar estructura, por ejemplo ¿cómo se deberían agrupar nuestros equipos de ventas?
- El agrupamiento por co-ocurrencia (o estudios de asociación) responde a preguntas como ¿qué productos se suelen comprar juntos? Mientras que el clustering se basa en los atributos de las instancias, en este caso, se mira a la co-ocurrencia de esas instancias en transacciones.
- El profiling o descripción de comportamiento intenta caracterizar el comportamiento típico de un individuo o grupo. Una pregunta típica es: ¿cuál es el patrón de llamadas típico en este segmento de clientes? Sabiendo ese patrón tenemos oportunidades para diseñar políticas de precios por ejemplo.