Preprocesamiento de datos: una forma de solucionar problemas antes de que aparezcan

Piense en los proyectos de minería de datos donde ha participado ¿Ha tenido que reprocesar más de una vez la misma información para poder aumentar la calidad de los resultados?  ¿Le mantener la consistencia en sus datos, operaciones y proyectos? Si la respuesta es positiva, quizás deba conocer sobre buenas prácticas, es decir, aquellas intervenciones que se han implementado con resultados positivos, siendo eficaz y útil en un contexto concreto [1] y que le garantizarán la solución de sus problemas antes de que aparezcan.

Para los proyectos de minería de datos hay muchas formas de llevar buenas prácticas. En este post comentaré solo algunas de ellas, altamente relacionadas al preprocesamiento de datos, y cómo aplicarlas a las siguientes situaciones:

  • Procesamiento de datos de múltiples fuentes
  • Retorno de una nueva entidad

 

Retorno de una gran entrega

Dichas situaciones se explicarán más adelante, no sin antes, entender algunas particularidades del preprocesamiento de datos.

Preprocesamiento de datos

Es la etapa que se realiza antes de cada manipulación y transformación de los datos en un proceso de minería de datos, por lo tanto, es una etapa que podría tener más de una ocurrencia, y no solo al inicio del proyecto como se suele pensar. Las actividades comunes a la etapa de preprocesamiento incluyen la recolección de datos de distintas fuentes, el tratamiento de cabeceras (header o columnas) y filas (nuestros datos en sí). Con todo esto, se pretende obtener un conjunto de datos de mayor calidad, generalmente más pequeño y homogéneo, el cual deberá conducir a una minería de datos de alta calidad.

El tratamiento en columnas resuelve:

  • Tener columnas sobrantes o faltantes.

Declaración inconsistente de columnas: Cuando las columnas que deberían ser las mismas, tienen nombres o tipos de dato diferentes al provenir de diferentes fuentes.

El tratamiento en filas resuelve:

  • Datos duplicados.
  • Datos incompletos o celdas vacías del conjunto de datos
  • Datos inconsistentes como letras en una columna de edades.
  • Datos inadecuados al proceso, o con ruido.

Ahora, teniendo en cuenta las tareas del preprocesamiento se propone a continuación un flujo de buenas prácticas en 4 pasos, aplicables a nuestras 3 situaciones de interés.

Procesamiento de datos de diferentes fuentes

Al leer conjuntos de datos de diferentes fuentes, estos podrían no estar normalizados (ser homogéneos) y hacer caer nuestras operaciones, por ello se recomienda antes que nada limpiar y normalizar las columnas, esto permitirá aplicar las siguientes operaciones al conjunto total de datos independientemente de la fuente de la que procedan. Además, de esta forma, cuando se deba modificar una operación, sólo deberá hacerse una vez, en lugar de tantas como conjuntos de datos tengamos.

Para los nombres de las columnas, se recomienda definir y respetar una nemotecnia, por ejemplo, siempre deben ir en singular, iniciar con mayúscula y con codificación ascii (sin tildes ni ñ o símbolos)

Retorno de una nueva entidad

El retorno de una nueva entidad siempre será un paso importante en cualquier proceso de minería de datos, es el resultado de un tratamiento, modelamiento o análisis previo realizado a un conjunto de datos. Por ej. Al extraer los nombres de las personas mencionadas en un texto, tendremos la nueva entidad “Persona” la cual relacionarse a las columnas “nombre”, “apellido”, “alias”, etc. Por lo que sus valores (en las filas) se deben limpiar y normalizar inmediatamente, para así poder utilizarlos en un tratamiento posterior.

Se recomienda por ejemplo, remover espacios dobles, saltos de línea y variables de escape, y transformar una posible codificación inconveniente como la presencia de tildes, ñ y caracteres especiales.

Retorno de una gran entrega

Una gran entrega es el resultado de proceso que ha tardado “mucho” tiempo, y debería ser una entrega de importancia, pues los recursos que ha consumido han sido considerables. Por ejemplo, si un tratamiento de datos demoró 4 horas o más en ejecución. Dependiendo del proyecto, supone una buena práctica definir el umbral de tiempo, y las actividades adicionales, como hacer guardado del proyecto, o de la información como backup, etc.

Cabe aclarar además, que la razón por la que el filtrado de columnas se encuentra posterior a los tratamientos de limpieza obedece al hecho de que vale la pena tener Información lista para usar antes y después del filtrado, sin embargo, estas decisiones variarán según las necesidades y los puntos críticos del problema en cuestión.

Finalmente, es hora de poner en práctica estas recomendaciones, las cuales el lector podrá comprobar, adaptar o mejorar en sus proyectos de minería de datos.

Referencias

[1] http://buenaspracticasaps.cl/que-es-una-buena-practica/

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *