Buenas prácticas en minería de datos

En realidad, lo primero necesario es definir bien los términos. Para el propósito de este post, y puesto que ni la Wikipedia parece resolver bien la duda, voy a definir buenas prácticas como un conjunto de normas y acciones establecidas en base al análisis de un gran número de casos de éxito y de fracaso, y que surgen como factor común a los casos de éxito, estando con frecuencia ausentes en los casos de fracaso.

También necesitaríamos definir el concepto de minería de datos. Aquí la Wikipedia parece tenerlo un poco más claro. Sin embargo, últimamente se mezclan con frecuencia términos muy similares, a lo cual le dediqué un post anterior. En este post, asumiremos que minería de datos y aprendizaje automático son equivalentes.

Inteligencia Artificial
Inteligencia Artificial. Source: Pixabay

Igual que existen buenas prácticas en torno a la gestión de proyectos, la gestión de servicios, o la gestión de procesos, y en Sciling hemos hecho una apuesta firme por ellas, también existen buenas prácticas en torno a la minería de datos. En concreto, el modelo de proceso de minería de datos más habitual es CRISP-DM (del inglés, Cross-Industry Standard Process for Data Mining). CRISP-DM se originó en un proyecto de financiación europea allá por el año 1997. Posteriormente, entre los años 2006 y 2008 hubo un intento de establecer una segunda versión de CRISP-DM, pero fracasó. Sin embargo, IBM continúa utilizando una versión propia de CRISP-DM, denominada ASUM-DM, que incluye tablas de roles y responsabilidades, una descripción somera de qué hacer en cada paso, y cómo interactúa cada subproceso.

CRISP-DM se divide en seis procesos, los cuales necesariamente interactúan entre si, pudiendo dar lugar a retrocesos para mejorar la aproximación tomada en el paso anterior:

  •     Comprensión del negocio. El objetivo es definir bien el problema que se va a tratar, o qué oportunidad se presenta. Es necesario valorar la situación actual y establecer los objetivos de negocio que se pretenden conseguir. Este paso se debe hacer desde una perspectiva de negocio y, por lo tanto, debe tomar parte activa el personal de negocio de la empresa.
  •     Comprensión de los datos. Aquí el propósito es obtener y analizar los datos que vayamos a utilizar, así como considerar la existencia de silos de datos que pudieran entorpecer el proceso. Tras realizar este paso, es probable que sea necesario retroceder al paso anterior y redefinir los objetivos.
  •     Preparación de los datos. Una vez se haya comprendido bien de qué datos disponemos, procederemos a preparar los datos para el proceso, lo cual incluye ponerlos en el formato apropiado, resolver posibles problemas de calidad que presenten los datos, y seleccionar qué características van a ser utilizadas.
Minería de datos según CRISP-DM
Modelo de proceso de minería de datos de CRISP-DM. Source: Wikimedia
  •     Modelado. Será necesario determinar el tipo de problema al que nos enfrentamos (por ejemplo, si se trata de un problema de clasificación, de regresión, o de clústering). A continuación, decidiremos qué técnicas de modelado van a ser utilizadas (por ejemplo, SVMs, redes neuronales, o un simple clasificador bayesiano). Por último, construiremos el modelo que hayamos previamente definido. De nuevo, en este paso es probable que tengamos que volver al paso 3 y cambiar la preparación de los datos.
  •     Evaluación. Aquí tendremos que decidir si el modelo implementado cumple los objetivos establecidos inicialmente, y por tanto se pone en producción, o si es necesario volver al paso 1 y replantearnos nuestra comprensión del negocio.
  •     Despliegue. Una vez tengamos la certeza de que el modelo construido es capaz de proporcionar los objetivos de negocio establecidos, procederemos a desplegarlo. Además de las labores técnicas necesarias, generaremos un informe final, incluyendo lecciones aprendidas, para atesorar el conocimiento obtenido. También monitorizaremos el desempeño del modelo para asegurarnos de que se ajusta a los objetivos establecidos.

Supongo que aquellos lectores más familiarizados con PRINCE o ITIL se estarán preguntando… y esto, ¿cómo lo hago encajar con las buenas prácticas que establecen PRINCE e ITIL? A pesar de que no hemos encontrado a nadie que lo haya intentado, no parece que vaya a ser muy complicado. Sin embargo, la aplicación concreta la dejamos para un post posterior.

¡Felices buenas prácticas a todos!