De los datos a los algoritmos

Vamos a ver someramente cómo es el proceso previo de preparación de los datos. Es habitual enfrentarse a un proyecto de análisis predictivo con muchos datos. Muchos es muchos. La primera tarea es recopilarlos todos. Normalmente están en diferentes repositorios:



Frecuentemente estos datos están “sucios”, es decir, tienen errores o discrepancias entre los diferentes campos que están en bases de datos distintas. Por ejemplo, es posible que la letra “ñ” o los acentos estén codificados en diferentes formatos en función de dónde hayamos recogido el dato. La fase de limpieza de datos comprende, entre otras tareas:



Con los datos “limpios” ya se puede empezar a hacer una selección de los que serán útiles para hacer las predicciones. En esta fase hay que quedarse con la “señal” y eliminar los campos que aporten “ruido”. Este trabajo se suele llamar Feature Engineering:



La transformación de los datos, que también pertenece a la llamada Feature Engineering, trata de generar nuevos campos predictores basados en los que ya se tienen. El conocimiento del dominio (del negocio, del ámbito que se está analizando) es fundamental para abordar esta fase. Esta, junto con la fase de selección de campos predictores, son las que más esfuerzo intelectual y creativo necesitan, ya que no sólo hay que conocer el ámbito de estudio, sino que es necesario conocer con cierta profundidad cómo funcionan los algoritmos predictivos, cómo interpretan internamente los datos y cómo se buscan las relaciones entre ellos.


A modo de ejemplo, se puede pensar que en un proyecto de predicción de baja de clientes es suficiente con disponer de la fecha de alta y la de baja. Podríamos interpretar que el algoritmo, analizando estos dos datos, es capaz de “deducir” la antigüedad del cliente. Pero no es así. La transformación, en este caso muy sencilla, sería añadir un nuevo campo que fuera la resta de las dos fechas y transformarlo en número de días (o meses, o años, en función de que lo consideremos mejor). Una pequeña modificación como esta puede mejorar enormemente la capacidad predictiva del sistema.