top of page

4 Preprocesamiento/limpieza o preparación de datos

preprocesamiento.jpg
limpieza.png

¿Por qué esta fase es tan importante y porque debemos dedicar un gran esfuerzo en la misma?

kdd3.png

Como ya dijimos antes esta es una de las etapas o fases mas importante. La preparación de los datos es fundamental para la aplicación de las técnicas de minería de datos y que de no hacerse redundará en resultados incorrectos de las mismas y en la obtención de resultados erróneos en el análisis de resultados obtenido.

Los datasets de origen pueden tener inconvenientes por:

  • Datos faltantes

Son aquellos que no existen debido a algún acontecimiento, como por ejemplo errores en la transcripción de los datos o la ausencia por no haber completado los mismos. Pueden faltar de manera aleatoria (que pueden perturbar el análisis de datos ya que disminuyen el tamaño de las muestras y la potencia de las pruebas de contraste de hipótesis) o no aleatoria (disminuye de la representatividad de la muestra).

  • Valores extremos

Son los valores más altos o más bajos que puede tomar ese atributo o variable. la media aritmética es la medida más afectada por los valores extremos, ya que su cálculo se basa en la adición de todos los valores en consideración dividida entre el número de sumadores.

  • Inconsistencias

Ocurre cuando dos datos que deberían ser iguales no lo son, por ejemplo, un medico que aparece en una tabla como activo y en otra como pasivo. Se produce cuando existe redundancia de datos, ya que la inconsistencia consiste en que no todas las copias redundantes contienen la misma información. El problema surge al modificar esa información, ya que si sólo cambiamos esos valores en algunos lugares, las consultas que hagamos más tarde podrán dar como resultado respuestas inconsistentes o diferentes.

  • Ruido

Se define el ruido como una señal aleatoria que se superpone a la señal original y confunde al destinatario. En Minería de Datos es cuando los valores de un atributo son afectados por los valores de otro/s atributo/s.

Las variables con ruido tendrán valores que caen fuera del rango de sus valores esperados llamados outliers.
¿Por qué se originan?

  • Error humano en la carga de datos (por ejemplo una persona de 400 años)

  • Determinados cambios operacionales no han sido registrados en el proceso

A continuación mostraremos algunos situaciones presentadas en esta fase.

Valores atípicos u outliers

Un gran problema es la presencia de valores que no se ajustan al

comportamiento general de los datos (outliers). Estos datos anómalos

pueden representar errores en los datos o pueden ser valores

correctos que son simplemente diferentes a los demás.

Por ejemplo una persona con 300 años de edad en nuestra base de

datos seguramente se trata de un error y puede tener consecuencias

muy serias en la aplicación de dichas técnicas. Algunos algoritmos de

minería de datos ignoran estos datos, otros los descartan considerándolos ruido o excepciones, pero otros son muy sensibles y el resultado se ve claramente perjudicado por ello.

No siempre es conveniente eliminarlos, ya que, en algunas aplicaciones esos eventos pueden ser más interesantes que los regulares, por ejemplo, una compra con un importe mayor a las compras habituales.

outlier1.png

Datos faltantes o missing values

La presencia de datos faltantes o perdidos (missing values) puede ser

un gran problema que puede conducir a resultados poco precisos.

Sin embargo, es importante estudiarlos antes de tomar cualquier decisión

ya que éstos pueden deberse a causas muy diversas, como a un mal

funcionamiento del dispositivo que hizo la lectura del valor, a cambios

efectuados en los procedimientos usados durante la recolección de los

datos o al hecho de que los datos se recopilen desde fuentes diversas.

Por ello, existen muchas aproximaciones para manejar los datos faltantes.

Esto nos muestra la necesidad de la limpieza de datos, es decir, de mejorar su calidad. No es sólo suficiente con tener una buena calidad de datos, sino además poder proporcionar a las técnicas de minería de datos el subconjunto de datos más adecuado para resolver el problema.

missing.jpeg

¿Qué podemos hacer con los valores nulos

  • Ignorar la tupla o registro.

  • Rellenar la tupla manualmente.

  • Usar una constante global para rellenar el valor nulo.

  • Utilizar el valor de la media u otra medida de centralidad para rellenar el valor.

  • Utilizar el valor de la media u otra medida de centralidad de los objetos que pertenecen la misma clase.

  • Utilizar alguna herramienta de Minería de Datos para calcular el valor más probable.

missing1.png
pregunta.jpg

A continuación mostraremos algunos situaciones presentadas en esta fase.

Valores atípicos u outliers

Un gran problema es la presencia de valores que no se ajustan al

comportamiento general de los datos (outliers). Estos datos anómalos

pueden representar errores en los datos o pueden ser valores

correctos que son simplemente diferentes a los demás.

Por ejemplo una persona con 300 años de edad en nuestra base de

datos seguramente se trata de un error y puede tener consecuencias

muy serias en la aplicación de dichas técnicas. Algunos algoritmos de

minería de datos ignoran estos datos, otros los descartan considerándolos ruido o excepciones, pero otros son muy sensibles y el resultado se ve claramente perjudicado por ello.

No siempre es conveniente eliminarlos, ya que, en algunas aplicaciones esos eventos pueden ser más interesantes que los regulares, por ejemplo, una compra con un importe mayor a las compras habituales.

outlier1.png

Transformación de atributos

Una tarea importante de la preparación de los datos es la transformación o construcción de atributos, la cual consiste en construir automáticamente nuevos atributos aplicando alguna operación o función a los atributos originales con objeto de que estos nuevos atributos hagan más fácil el proceso de minería.

La razón principal para esta tarea es cuando los atributos originales no tienen mucho poder predictivo por sí solos o los patrones dependen de variaciones lineales de las variables originales.

Por ejemplo, un atributo que se obtiene de otros dos y que nos brinda una mayor precisión en la aplicación de las técnicas de minería de datos.
El tipo de los datos puede también modificarse para facilitar el uso de técnicas que requieren tipos de datos específicos, por ejemplo cambiar los valores del atributo nominales por enteros o viceversa.

¿Por qué debemos transformarlos?

pregunta.jpg

Por una serie de razones, de las cuales las principales a tener en cuenta son:

  • Los atributos serán transformados según las necesidades del algoritmo a aplicar. Por ejemplo si un algoritmo trabaja solo con valores nominales debemos transformar ese atributo a nominal.

  • Es probable que deban derivarse variables nuevas. Por ejemplo supongamos que tenemos apellido y nombre en dos atributos separados puede ser que nos convenga tenerlo en un solo atributo, para un mejor tratamiento.

  • También es posible que se reduzcan variables convirtiéndolas en información más significativa.

transformacion.jpg

Reducción de dimensionalidad

Es el proceso de reducción del número de variables aleatorias,​ y se puede dividir en selección de función y extracción de función.

Buscamos reducirla para:

  • Cambia el espacio de entrada por otro que tiene menor dimensión.

  • Se busca mejorar la relación entre la cantidad de ejemplos y la cantidad de atributos.

reduccion.png

Aumento de dimensionalidad

En algunas ocasiones es necesario aumentar la dimensionalidad, esto se hace a través de la creación de características, y se puede aplicar sobre:

aumento.png

​Atributos numéricos

Para trabajar con ellos se utilizan las siguientes funciones: suma, resta, producto, división, máximo, mínimo, media, cuadrado, raíz cuadrada, seno, coseno, etc.

variables numericas.jpg

Atributos tipo Fechas

Las fechas brindan por si solas, poca información si se las usa directamente. Por ej.de la fecha 26/08/2020 se puede obtener:

Mes: 8​

Día de la Semana: miércoles

Día hábil: true

fechas.jpg

Atributos nominales:

Se utilizan las operaciones lógicas, igualdad o desigualdad, condiciones M-de-N (TRUE si al menos M de las N condiciones son verdaderas).

Se puede generar un valor numérico a partir de valores nominales, por ejemplo, las variables X-de-N (retorna el entero X de las N condiciones que son ciertas)

variable-nominal.png

Convertir atributos no numéricos a números

Consiste en convertir atributos cualitativos (nominales u ordinales) en números. Hay que tener en cuenta:

  • Para los atributos nominales suele utilizarse una representación binaria y para los atributos ordinales suele utilizarse una representación entera.

  • Si se numeran en forma correlativa los valores de un atributo nominal se agrega un orden que originalmente no está presente en la información disponible.

numerizacion.PNG

Discretización

Discretizar datos quiere decir convertir variables que son continuas en variables agrupadas por intervalos, se realiza porque algunos algoritmos de minería de datos sólo operan con atributos cualitativos. La discretización convierte los atributos numéricos en ordinales.

La discretización de variables es muy útil en aprendizaje supervisado, debiéndose en algunos casos decidir cuales pueden funcionar mejor de forma continua. Generalmente aquellas que convenga describir en grupos tales como bajo, medio y alto podrían ser discretizadas (es decir desde el punto de vista del algoritmo).

Hay varias formas de discretización y las herramientas o los lenguajes de machine learning soportan en general distintos tipos:

  • Discretización en un número fijo de intervalos o bins. El ancho del intervalo se calcula:

    • ​Dividiendo el rango en partes iguales

    • Dividiendo la cantidad de ejemplos en partes iguales (igual frecuencia)

  • Discretización por la cantidad de elementos por intervalo

  • Discretización de cada intervalo definida por el usuario en forma manual

discretizar.png
discretizar1.PNG

Normalización

Es la transformación de escala de la distribución de una variable con el objetivo de poder hacer comparaciones respecto a conjuntos de elementos y a la media mediante la eliminación de los efectos de influencias.

Permite expresar los valores de los atributos sin utilizar las unidades de medida originales facilitando su comparación y uso conjunto.

Lo común es utilizar la característica scaling o normalización lineal uniforme, en donde se debe tener cuidado de:

  • No trabajar con valores fuera de rango (outliers ), porque son muy sensibles a ellos

  • Si se recortan los extremos se obtiene valor negativos y/o mayores a 1

Si los datos tienen distribución normal se pueden tipificar, distribuyendo los datos normalmente alrededor de 0 con desviación 1.

normalizacion.jpg
scaling.PNG
tipificar.PNG
bottom of page