Supongamos que tengo un gran conjunto de datos multivariados con al menos tres variables. ¿Cómo puedo encontrar los valores atípicos? Los diagramas de dispersión por pares no funcionarán, ya que es posible que exista un valor atípico en 3 dimensiones que no es un valor atípico en ninguno de los subespacios bidimensionales.
No estoy pensando en un problema de regresión, sino en datos multivariados verdaderos. Por lo tanto, las respuestas que implican una regresión robusta o apalancamiento informático no son útiles.
Una posibilidad sería calcular los puntajes del componente principal y buscar un valor atípico en el diagrama de dispersión bivariado de los dos primeros puntajes. ¿Eso estaría garantizado para trabajar? ¿Hay mejores enfoques?
multivariate-analysis
outliers
Rob Hyndman
fuente
fuente
Respuestas:
Eche un vistazo al paquete mvoutlier que se basa en distancias mahalanobis robustas ordenadas, como lo sugiere @drknexus.
fuente
Creo que la respuesta de Robin Girard funcionaría bastante bien para 3 y posiblemente 4 dimensiones, pero la maldición de la dimensionalidad evitaría que funcione más allá de eso. Sin embargo, su sugerencia me llevó a un enfoque relacionado que consiste en aplicar la estimación de densidad de kernel con validación cruzada a los primeros tres puntajes de componentes principales. Entonces, un conjunto de datos de muy alta dimensión aún se puede manejar bien.
En resumen, para i = 1 a n
fin de
Ordene el Li (para i = 1, .., n) y los valores atípicos son aquellos con probabilidad por debajo de cierto umbral. No estoy seguro de cuál sería un buen umbral. ¡Lo dejaré para quien escriba el documento sobre esto! Una posibilidad es hacer un diagrama de caja de los valores de registro (Li) y ver qué valores atípicos se detectan en el extremo negativo.
fuente
Puede encontrar un resumen pedagógico de los diversos métodos disponibles en (1)
Para algunas comparaciones numéricas recientes de los diversos métodos enumerados allí, puede marcar (2) y (3) .
Hay muchas comparaciones numéricas más antiguas (y menos exhaustivas), que generalmente se encuentran en los libros. Encontrará uno en las páginas 142-143 de (4), por ejemplo.
Tenga en cuenta que todos los métodos discutidos aquí tienen una implementación de código abierto R, principalmente a través del paquete rrcov .
fuente
Haría algún tipo de "dejar un algoritmo de prueba" (n es el número de datos):
para i = 1 a n
fin de
ordenar el (para i = 1, .., n) y usar un procedimiento de prueba de hipótesis múltiples para decir cuáles no son buenos ...Li
Esto funcionará si n es lo suficientemente grande ... también puede usar la "estrategia de dejar de lado", que puede ser más relevante cuando tiene "grupos" de valores atípicos ...
fuente
Puede encontrar candidatos para "valores atípicos" entre los puntos de soporte del elipsoide de límite de volumen mínimo. (Los algoritmos eficientes para encontrar estos puntos en dimensiones bastante altas, exactamente y aproximadamente, se inventaron en una serie de documentos en la década de 1970 porque este problema está íntimamente relacionado con una pregunta en el diseño experimental).
fuente
El enfoque novedoso que vi fue por IT Jolliffe Principal Components Analysis . Ejecutas una PCA en tus datos (Nota: PCA puede ser una herramienta de exploración de datos bastante útil por derecho propio), pero en lugar de mirar los primeros Componentes principales (PC), trazas las últimas PC. Estas PC son las relaciones lineales entre sus variables con la menor variación posible. Por lo tanto, detectan relaciones multivariadas "exactas" o casi exactas en sus datos.
Una gráfica de las puntuaciones de PC para la última PC mostrará valores atípicos que no son fácilmente detectables al observar individualmente cada variable. Un ejemplo es para la altura y el peso: algunos que tienen una altura "superior al promedio" y un peso "inferior al promedio" serían detectados por la última PC de altura y peso (suponiendo que estos estén positivamente correlacionados), incluso si su altura y peso no estuvieran " extrema "individualmente (por ejemplo, alguien que tenía 180 cm y 60 kg).
fuente
No vi a nadie mencionar las funciones de influencia . La primera vez que vi esta idea en el libro multivariante de Gnanadesikan .
En una dimensión, un valor atípico es un valor extremadamente grande o extremadamente pequeño. En el análisis multivariante, es una observación eliminada del grueso de los datos. Pero, ¿qué métrica debemos usar para definir el extremo para el valor atípico? Hay muchas opciones La distancia de Mahalanobis es solo una. Creo que buscar todo tipo de valores atípicos es inútil y contraproducente. Preguntaría por qué te importa el valor atípico? Al estimar una media, pueden tener una gran influencia en esa estimación. Los estimadores robustos tienen poco peso y acomodan valores atípicos, pero no los prueban formalmente. Ahora en regresión, los valores atípicos, como los puntos de apalancamiento, podrían tener grandes efectos en los parámetros de pendiente del modelo. Con datos bivariados pueden influir indebidamente en el coeficiente de correlación estimado y en tres o más dimensiones en el coeficiente de correlación múltiple.
Hampel introdujo las funciones de influencia como una herramienta en la estimación robusta y Mallows escribió un buen artículo inédito abogando por su uso. La función de influencia es una función del punto en el que se encuentra en el espacio n-dimensional y el parámetro. Básicamente mide la diferencia entre la estimación del parámetro con el punto en el cálculo y con el punto omitido. En lugar de tomarse la molestia de hacer el cálculo de las dos estimaciones y tomar la diferencia, a menudo puede derivar una fórmula para ello. Luego, los contornos de influencia constante le indican la dirección que es extrema con respecto a la estimación de este parámetro y, por lo tanto, le indican en qué parte del espacio n-dimensional debe buscar el valor atípico.
Para más información, puede consultar mi artículo de 1983 en el American Journal of Mathematical and Management Sciences titulado "La función de influencia y su aplicación a la validación de datos". En la validación de datos, queríamos buscar valores atípicos que afectaran el uso previsto de los datos. Creo que debe dirigir su atención a valores atípicos que afecten en gran medida los parámetros que le interesan estimar y que no se preocupe tanto por otros que no lo hacen.
fuente
Puede ser un exceso, pero puede entrenar un bosque aleatorio no supervisado sobre los datos y usar la medida de proximidad del objeto para detectar valores atípicos. Más detalles aquí .
fuente
Para dimensiones moderadas, como 3, entonces algún tipo de técnica de validación cruzada del núcleo, como se sugiere en otra parte, parece razonable y es lo mejor que se me ocurre.
Para dimensiones superiores, no estoy seguro de que el problema sea solucionable; aterriza bastante directamente en el territorio de la "maldición de la dimensionalidad". El problema es que las funciones de distancia tienden a converger a valores muy grandes muy rápidamente a medida que aumenta la dimensionalidad, incluidas las distancias derivadas de las distribuciones. Si está definiendo un valor atípico como "un punto con una función de distancia relativamente grande en relación con los demás", y todas sus funciones de distancia están comenzando a converger porque está en un espacio de alta dimensión, bueno, está en problemas .
Sin algún tipo de suposición de distribución que le permita convertirlo en un problema de clasificación probabilística, o al menos alguna rotación que le permita separar su espacio en "dimensiones de ruido" y "dimensiones informativas", creo que la geometría de los espacios de alta dimensión prohibirá cualquier identificación fácil, o al menos robusta, de valores atípicos.
fuente
No estoy seguro de lo que quiere decir cuando dice que no está pensando en un problema de regresión sino en "datos multivariados verdaderos". Mi respuesta inicial sería calcular la distancia de Mahalanobis, ya que no requiere que especifique un IV o DV en particular, pero en esencia (hasta donde yo entiendo) está relacionado con una estadística de apalancamiento.
fuente
No sé si alguien está haciendo esto, pero generalmente me gusta probar la reducción de dimensionalidad cuando tengo un problema como este. Puede buscar un método de aprendizaje múltiple o reducción de dimensionalidad no lineal .
Un ejemplo sería un mapa de Kohonen . Una buena referencia para R es "Mapas de autoorganización y superorganización en R: El paquete kohonen" .
fuente
Mi primera respuesta sería que si puede hacer una regresión multivariada en los datos, entonces usar los residuos de esa regresión para detectar valores atípicos. (Sé que dijiste que no es un problema de regresión, así que esto podría no ayudarte, ¡lo siento!)
Estoy copiando algo de esto de una pregunta de Stackoverflow que he respondido anteriormente y que tiene algún código R de ejemplo
Primero, crearemos algunos datos y luego los contaminaremos con un valor atípico;
A menudo es más útil examinar los datos gráficamente (su cerebro es mucho mejor para detectar valores atípicos que las matemáticas)
Luego puede usar estadísticas para calcular valores críticos de corte, aquí usando la Prueba de Lund (Ver Lund, RE 1975, "Tablas para una prueba aproximada de valores atípicos en modelos lineales", Technometrics, vol. 17, no. 4, pp. 473 -476. Y Prescott, P. 1975, "Una prueba aproximada para valores atípicos en modelos lineales", Technometrics, vol. 17, no. 1, pp. 129-132.)
Obviamente, hay otras pruebas atípicas que la prueba de Lund (me viene a la mente Grubbs), pero no estoy seguro de cuáles son las más adecuadas para los datos multivariados.
fuente
vw-top-errors
@ goo.gl/l7SLlB (tenga en cuenta que los ejemplos allí sucede que tiene una Y, pero usan la misma técnica, con mucho éxito en los problemas sin supervisión también mediante la fijación de Y.)Una de las respuestas anteriores tocó en distancias mahalanobis ... ¡quizás un paso más adelante y calcular intervalos de confianza simultáneos ayudaría a detectar valores atípicos!
fuente