Introducción a la Detección y Tratamiento de Outliers

Escrito por

en

La Detección y Tratamiento de Outliers (Valores Atípicos) constituye una de las tareas más importantes dentro de la fase de Data Preparation (Preparación de los Datos). Su objetivo consiste en identificar observaciones que presentan un comportamiento significativamente diferente al resto de los datos y decidir la estrategia más adecuada para gestionarlas.

Los outliers pueden aparecer por múltiples causas: errores de captura, fallos en sensores, problemas durante la integración de datos o simplemente porque representan casos reales pero poco frecuentes. Por este motivo, no todos los valores atípicos deben eliminarse automáticamente. En muchos proyectos, precisamente esos valores contienen la información más valiosa.

En este artículo se presenta una visión conceptual sobre la detección y tratamiento de outliers. En artículos posteriores se estudiarán de forma individual las principales técnicas de detección y tratamiento.

¿Qué son los outliers?

Un outlier o valor atípico es una observación cuyo valor se aleja considerablemente del comportamiento general del conjunto de datos.

Estos valores pueden ser:

  • Mucho mayores que el resto.
  • Mucho menores que el resto.
  • Observaciones con combinaciones inusuales de variables.
  • Casos poco frecuentes pero legítimos.

Los outliers no siempre representan errores.

En muchos casos corresponden a:

  • Fraudes.
  • Enfermedades poco frecuentes.
  • Clientes con un comportamiento excepcional.
  • Eventos extremos.
  • Cambios importantes en un proceso.

Por ello, antes de tratarlos es imprescindible comprender su origen.

Objetivos de la detección y tratamiento de outliers

Esta actividad persigue diversos objetivos.

Entre los principales destacan:

  • Identificar observaciones anómalas.
  • Mejorar la calidad del conjunto de datos.
  • Reducir el ruido.
  • Mejorar el rendimiento de los modelos.
  • Evitar sesgos estadísticos.
  • Detectar errores de captura.
  • Descubrir eventos excepcionales de interés.

Preguntas que debe responder

Antes de tratar los valores atípicos conviene responder varias preguntas.

Sobre los datos

  • ¿Existen valores atípicos?
  • ¿Cuántos outliers hay?
  • ¿Qué porcentaje representan?
  • ¿En qué variables aparecen?

Sobre su origen

  • ¿Son errores de medición?
  • ¿Se produjeron durante la captura de datos?
  • ¿Son casos reales del negocio?
  • ¿Representan fenómenos poco frecuentes?

Sobre el tratamiento

  • ¿Conviene eliminarlos?
  • ¿Es mejor transformarlos?
  • ¿Deben mantenerse?
  • ¿Afectan al algoritmo utilizado?

Responder correctamente a estas preguntas evita eliminar información importante.

Resultado esperado

Al finalizar esta fase debería disponerse de:

  • Un informe de los outliers detectados.
  • Una clasificación según su origen.
  • Una estrategia de tratamiento documentada.
  • Un conjunto de datos preparado para el modelado.
  • Una justificación de las decisiones tomadas.

El objetivo no consiste en eliminar todos los valores atípicos, sino en tratarlos adecuadamente según el contexto.

Flujo de trabajo

Una estrategia habitual sigue el siguiente flujo.

  1. Analizar las variables.
  2. Detectar posibles outliers.
  3. Validar si representan errores o casos reales.
  4. Seleccionar el método de tratamiento.
  5. Aplicar la transformación correspondiente.
  6. Validar el impacto sobre el conjunto de datos.
  7. Documentar todas las decisiones.

Este proceso puede repetirse varias veces durante la preparación de los datos.

¿Cómo funciona?

La detección de outliers consiste en buscar observaciones cuyo comportamiento difiere significativamente del resto.

Para ello pueden utilizarse distintos enfoques.

  • Métodos estadísticos.
  • Métodos basados en distancias.
  • Métodos basados en densidad.
  • Algoritmos de Machine Learning.
  • Inspección visual.

Una vez detectados, se decide la estrategia más adecuada para gestionarlos.

Tipos de outliers

  • Outliers globales: Son observaciones claramente alejadas del resto del conjunto de datos.
  • Outliers contextuales: Solo son atípicos dentro de un determinado contexto. Ejemplo: Una temperatura de 35 °C puede ser normal en verano y extraordinaria en invierno.
  • Outliers colectivos: Un grupo de observaciones forma un patrón anómalo. Ejemplo: Una serie de transacciones consecutivas con un comportamiento inusual. Este tipo es frecuente en detección de fraude y análisis de series temporales.

¿Por qué aparecen los outliers?

Los valores atípicos pueden tener diferentes orígenes.

  • Errores humanos.
  • Errores de captura.
  • Fallos en sensores.
  • Problemas durante la integración de datos.
  • Cambios reales del negocio.
  • Eventos excepcionales.
  • Errores de conversión de unidades.
  • Casos legítimos poco frecuentes.

Comprender el origen resulta mucho más importante que aplicar automáticamente una técnica de eliminación.

Métodos de detección de outliers

Existen numerosos métodos para detectar valores atípicos.

MétodoTipoVariables
Inspección visualExploratorioTodas
BoxplotEstadísticoNuméricas
Rango Intercuartílico (IQR)EstadísticoNuméricas
Z-ScoreEstadísticoDistribuciones aproximadamente normales
Modified Z-ScoreEstadísticoMás robusto frente a outliers
Isolation ForestMachine LearningGrandes conjuntos de datos
Local Outlier Factor (LOF)Basado en densidadDatos complejos
DBSCANClusteringDatos espaciales
One-Class SVMMachine LearningDetección de anomalías

Cada uno de estos métodos se desarrollará en un artículo independiente.

Estrategias de tratamiento

Una vez detectados los outliers existen varias estrategias.

EstrategiaCuándo utilizarla
MantenerlosCasos reales del negocio
EliminarlosErrores evidentes
ImputarlosDatos erróneos recuperables
Transformar la variableDistribuciones muy sesgadas
WinsorizaciónLimitar valores extremos
Escalado robustoReducir el impacto sin eliminarlos

No existe una estrategia universal.

Detección vs Tratamiento de Outliers

Aunque suelen aparecer conjuntamente, representan actividades diferentes.

Detección de OutliersTratamiento de Outliers
Identifica valores atípicosDecide cómo gestionarlos
Analiza el comportamientoModifica o conserva los datos
No altera el conjunto de datosProduce un nuevo conjunto preparado
Es una fase analíticaEs una fase de transformación

Primero se detectan; después se decide el tratamiento.

¿Cuándo utilizar la detección de outliers?

Es recomendable aplicar esta tarea cuando:

  • Se trabaja con variables numéricas.
  • Existen distribuciones muy dispersas.
  • Se sospecha de errores de captura.
  • Se entrenan modelos sensibles a valores extremos.
  • Se realiza análisis exploratorio.
  • Se integran múltiples fuentes de datos.

En prácticamente cualquier proyecto de Ciencia de Datos resulta conveniente analizar la presencia de outliers.

Ventajas y desventajas

VentajasDesventajas
Mejora la calidad del datasetPuede eliminar información valiosa
Reduce el ruidoRequiere conocimiento del negocio
Facilita el entrenamientoAlgunos métodos son sensibles a la distribución
Mejora determinadas métricasNo existe un método universal
Permite detectar anomalías realesPuede requerir validación manual

Limitaciones

La detección y tratamiento de outliers presenta algunas limitaciones.

  • No todos los métodos funcionan con cualquier distribución.
  • Algunos algoritmos detectan demasiados falsos positivos.
  • Un mismo valor puede ser normal en un contexto y anómalo en otro.
  • La eliminación automática puede reducir la capacidad predictiva.
  • El tratamiento depende tanto del algoritmo como del problema de negocio.

Por ello, siempre debe combinarse el análisis estadístico con el conocimiento del dominio.

Relación con la fase de Data Preparation

La detección y tratamiento de outliers suele realizarse después de la limpieza básica del conjunto de datos.

Un flujo habitual sería:

  1. Corrección de tipos de datos.
  2. Eliminación de duplicados.
  3. Tratamiento de valores nulos.
  4. Detección de outliers.
  5. Tratamiento de outliers.
  6. Transformación de variables.
  7. Ingeniería de Características.
  8. Escalado y normalización.
  9. Selección de variables.

Este orden evita que los valores extremos distorsionen transformaciones posteriores.

Relación con los algoritmos de Machine Learning

No todos los algoritmos se ven afectados por los outliers de la misma forma.

Muy sensiblesPoco sensibles
Regresión LinealRandom Forest
K-Nearest Neighbors (KNN)XGBoost
K-MeansLightGBM
PCACatBoost
Support Vector Machine (SVM)Árboles de Decisión

Esta diferencia influye en la necesidad de tratar los valores atípicos antes del entrenamiento. En algunos casos, detectar el outlier constituye el propio objetivo del proyecto.

Buenas prácticas

Para detectar y tratar correctamente los outliers se recomienda:

  • Analizar siempre el origen de los valores atípicos antes de modificarlos.
  • Combinar métodos estadísticos con conocimiento del dominio.
  • Comparar diferentes técnicas de detección en lugar de depender de una sola.
  • Documentar los criterios utilizados para identificar y tratar los outliers.
  • Validar el impacto del tratamiento sobre el rendimiento del modelo.
  • Evitar eliminar automáticamente observaciones sin justificar la decisión.
  • Mantener una copia del conjunto de datos original para facilitar la trazabilidad.
  • Seleccionar la estrategia de tratamiento en función del algoritmo de Machine Learning que se utilizará posteriormente.