Detección de valores atípicos
Detectar anomalías en datos numéricos usando Isolation Forest. Identifique valores atípicos usando el algoritmo Isolation Forest. Los puntos con puntuaciones…
Identifique valores atípicos usando el algoritmo Isolation Forest. Los puntos con puntuaciones de anomalía altas se marcan como anomalías potenciales según el umbral de contaminación.
¿Qué es la detección de anomalías con Isolation Forest?
Isolation Forest es un algoritmo de aprendizaje automático no supervisado para la detección de anomalías, basado en el principio de que los valores atípicos son 'pocos y diferentes': resultan más fáciles de aislar que los puntos normales. A diferencia de los métodos basados en distancias, no calcula distancias ni densidades, lo que lo hace muy eficiente con conjuntos de datos grandes.
El algoritmo construye un conjunto de árboles de aislamiento aleatorios. Cada árbol particiona los datos de forma recursiva seleccionando al azar una característica y un valor de corte. Las anomalías, al ser escasas y distintas, requieren menos particiones para quedar aisladas (una longitud de camino más corta desde la raíz hasta la hoja). Los puntos normales, al estar agrupados, requieren más particiones.
La puntuación de anomalía se deriva de la longitud media del camino en todos los árboles, normalizada por la longitud de camino esperada para el tamaño del conjunto de datos. Puntuaciones cercanas a 1 indican anomalías; puntuaciones cercanas a 0.5 indican puntos normales. El parámetro de contaminación fija la proporción esperada de anomalías y determina el umbral de puntuación para la clasificación.
Formula: Anomaly Score s(x, n) = 2^(-E(h(x)) / c(n)) c(n) = 2H(n-1) - 2(n-1)/n where h(x) = path length, c(n) = average path length in BST, H(i) = harmonic number ≈ ln(i) + 0.5772
Ejemplo de cálculo
100 puntos de datos con contaminación = 0.05 (se esperan ~5 valores atípicos). Se construyen 100 árboles de aislamiento. El punto A tiene una longitud media de camino de 3.2 (se aísla rápidamente → puntuación de anomalía 0.82 → marcado). El punto B tiene una longitud media de camino de 8.7 (difícil de aislar → puntuación de anomalía 0.45 → normal). 4 puntos superan el umbral y se marcan como anomalías.
Cuándo usar esta calculadora
- Durante la revisión de datos de inspección de entrada para señalar mediciones anómalas que pueden indicar problemas de calidad del proveedor o errores de medición
- Al limpiar conjuntos de datos antes del análisis estadístico — outliers no detectados pueden distorsionar severamente medias, desviaciones estándar e índices de capacidad
- En SPC de manufactura de alto volumen para detectar patrones de producción inusuales que los gráficos de control estándar pueden perder en datos multivariantes
- Al analizar datos de sensores o IoT del monitoreo de equipos para identificar señales tempranas de degradación de máquinas o drift de proceso
- Durante auditorías de calidad para encontrar anomalías de datos que pueden indicar errores de registro, mal funcionamiento de equipos de prueba o alteraciones del proceso
Errores comunes que se deben evitar
- Eliminar automáticamente todas las anomalías señaladas sin investigación — los outliers pueden representar eventos de proceso reales e importantes que necesitan acción correctiva, no solo limpieza de datos
- Establecer contaminación demasiado alta, señalando variación normal como anómala — comience conservador (0.01-0.05) y aumente solo si el conocimiento del dominio sugiere una tasa de anomalía más alta
- Usar Isolation Forest en conjuntos de datos muy pequeños (menos de 50 puntos) — el algoritmo necesita datos suficientes para construir árboles de aislamiento significativos; use métodos más simples (Z-score, IQR) para muestras pequeñas
- Ignorar la distribución de puntuaciones de anomalía — en lugar de depender solo de la clasificación binaria, examine la distribución de puntuaciones para entender el gradiente de severidad de las anomalías detectadas
Cómo interpretar los resultados
- Puntuación de anomalía cercana a 1.0 — el punto está fuertemente aislado y muy probablemente es una verdadera anomalía; investigue inmediatamente
- Puntuación de anomalía 0.6-0.8 — el punto es moderadamente anómalo; revise en el contexto del dominio para determinar si justifica acción
- Puntuación de anomalía alrededor de 0.5 — el punto es normal; está embebido dentro de la distribución principal de datos
- Fracción de anomalías significativamente mayor de lo esperado — o el parámetro de contaminación está demasiado alto, o el proceso tiene más problemas de los asumidos
- Clusters de anomalías en valores de características similares — estos pueden representar una subpoblación distinta en lugar de outliers aleatorios; investigue una causa sistemática
Estándares y referencias relacionados
- Liu, Ting & Zhou (2008), "Isolation Forest", IEEE ICDM — El artículo original que define el algoritmo y la puntuación de anomalía implementados aquí
- ISO 16269-4 — Interpretación estadística de datos: detección y tratamiento de valores atípicos, el estándar internacional que enmarca las decisiones de manejo de atípicos
- ASTM E178 — Práctica estándar para el tratamiento de observaciones atípicas, que cubre cuándo se justifica eliminar los puntos señalados
- NIST/SEMATECH e-Handbook §1.3.5.17 — Pruebas clásicas univariadas de valores atípicos (Grubbs), útiles como verificación cruzada en datos de una sola variable
Preguntas frecuentes
¿Cómo fijo el parámetro de contaminación?
La contaminación es la proporción esperada de anomalías en sus datos. Si conoce la tasa histórica de anomalías (por ejemplo, una tasa de defectos del 2%), utilice ese valor. Si la desconoce, empiece con 0.05-0.10 y ajuste según el conocimiento del proceso. Un valor demasiado bajo → se pierden anomalías reales; demasiado alto → se marcan puntos normales como anomalías. La inspección visual de los puntos marcados ayuda a calibrar.
¿Cuándo debo usar Isolation Forest frente a otros métodos de detección de valores atípicos?
Isolation Forest destaca con datos de alta dimensionalidad, conjuntos de datos grandes y cuando los valores atípicos son globalmente distintos. Use LOF cuando importe la densidad local (valores atípicos respecto a su vecindario). Use métodos estadísticos (puntuación Z, IQR) para datos univariantes sencillos. Use DBSCAN cuando además necesite agrupamiento. La complejidad O(n log n) de Isolation Forest lo convierte en la opción más escalable.