[Azure Machine Learning] Limpieza y saneamiento de datos

En todo experimento, si no se reciben buenos insumos, los resultados podrían ser imprecisos o completamente erróneos. Por ello, es de suma importancia deshacerse de aquellos datos inadecuados.

En la siguiente lista veremos algunos de los módulos que tenemos a nuestra disposición para la limpieza o ajuste de datos. Vale mencionar que solo exploraremos una parte de todos los módulos de transformación de datos que nos facilita Azure Machine Learning Studio.

Para empezar con la limpieza de datos, opcionalmente podríamos apoyarnos del módulo Summarize data para identificar datos relevantes a esta tarea.

Identificar y abordar los datos faltantes o nulos

Ya sea través de los, antes discutidos, resúmenes univariados o del módulo Summarize data, Azure Machine Learning Studio nos facilita la información sobre el Missing Value Count, el cual nos ayuda a reconocer dónde se encuentran los datos faltantes o nulos.

Para abordar aquellos datos tenemos que emplear el módulo Clean Missing Data, ya que este módulo nos permite reemplazar los datos o eliminar filas/columnas completas a través de diferentes técnicas en una o más columnas seleccionadas.

Identificar y abordar los valores atípicos

Un valor atípico es una observación que es numéricamente muy distante del resto de los datos. Estos datos pueden llevarnos a conclusiones equivocadas sobre lo que describe al común de nuestro conjunto de datos.

Las formas más sencillas de identificar valores atípicos son a través del diagrama de caja y bigotes (box plot) y del diagrama de dispersión (scatter plot). Diagramas que conocimos previamente en resúmenes multivariados y visualización personalizada de distribución de datos.

Para abordar los valores atípicos tenemos que emplear el módulo Clip Values. Este módulo nos permite reemplazar los datos atípicos a través de diferentes técnicas en una o más columnas seleccionadas y solo funciona en columnas que contengan datos o variables continuas como los números o las fechas.

Por último, vale mencionar que los valores atípicos podrían ser indicativos de datos que pertenecen a una población diferente del resto de las muestras establecidas.

Eliminar datos duplicados

Puede que en algunas ocasiones terminemos con datos duplicados. Para ello, Azure Machine Learning nos facilita el módulo Remove Duplicate Rows, el cual solo requiere que especifiquemos que columnas deben ser o no evaluadas por que se deshaga de los registros duplicados.

Balanceo artificial de datos

Hay ocasiones en que la variable que se desea analizar está subrepresentada, para ello el módulo SMOTE nos permite aumentar el número de ejemplos de baja incidencia en un conjunto de datos utilizando un sobremuestreo de minorías sintéticas según el porcentaje que especifique.

El uso de SMOTE no garantiza modelos más precisos. Se debe intentar experimentar con diferentes porcentajes, conjuntos de funciones y números de vecinos más cercanos para ver cómo la adición de casos influye en el modelo.

Manipulación personalizada de datos

Habrán ocasiones en que los módulos de transformación previamente compartidos no serán suficientes para la limpieza o reparación adecuada de nuestros datos, para aquellas ocasiones podemos hacer uso del módulo Apply SQL Transformation, el cual nos permite correr SQLite para manipular los conjuntos de datos. Para esta tarea de limpieza podríamos valernos por ejemplo del WHERE, ISNULL, COALESCE o REPLACE.

Eliminar columnas innecesarias

Para deshacernos de las columnas del conjunto de datos que no aportan nada para el experimento, como por ejemplo un ID o código auto-generado de registro, podemos utilizar el módulo Select Columns in Dataset.

Agregue un comentario

Su dirección de correo no se hará público. Los campos requeridos están marcados *