Identificación de valores atípicos para regresión no lineal


11

Estoy investigando el campo de la respuesta funcional de los ácaros. Me gustaría hacer una regresión para estimar los parámetros (velocidad de ataque y tiempo de manejo) de la función Rogers tipo II. Tengo un conjunto de datos de medidas. ¿Cómo puedo determinar mejor los valores atípicos?

Para mi regresión, uso el siguiente script en R (una regresión no lineal): (el conjunto de fechas es un simple archivo de texto de 2 columnas llamado data.txtarchivo con N0valores (número de presas iniciales) y FRvalores (número de presas comidas durante 24 horas):

library("nlstools")
dat <- read.delim("C:/data.txt")    
#Rogers type II model
a <- c(0,50)
b <- c(0,40)
plot(FR~N0,main="Rogers II normaal",xlim=a,ylim=b,xlab="N0",ylab="FR")
rogers.predII <- function(N0,a,h,T) {N0 - lambertW(a*h*N0*exp(-a*(T-h*N0)))/(a*h)}
params1 <- list(attackR3_N=0.04,Th3_N=1.46)
RogersII_N <-  nls(FR~rogers.predII(N0,attackR3_N,Th3_N,T=24),start=params1,data=dat,control=list(maxiter=    10000))
hatRIIN <- predict(RogersII_N)
lines(spline(N0,hatRIIN))
summary(RogersII_N)$parameters

Para trazar los gráficos de los residuos calssic utilizo el siguiente script:

res <- nlsResiduals (RogersII_N)
plot (res, type = 0)
hist (res$resi1,main="histogram residuals")
    qqnorm (res$resi1,main="QQ residuals")
hist (res$resi2,main="histogram normalised residuals")
    qqnorm (res$resi2,main="QQ normalised residuals")
par(mfrow=c(1,1))
boxplot (res$resi1,main="boxplot residuals")
    boxplot (res$resi2,main="boxplot normalised residuals")

Preguntas

  • ¿Cómo puedo determinar mejor qué puntos de datos son atípicos?
  • ¿Hay pruebas que pueda usar en R que sean objetivas y me muestren qué puntos de datos son atípicos?

Respuestas:


9

Varias pruebas de valores atípicos, incluidas las de Dixon y Grubb, están disponibles en el outlierspaquete en R. Para obtener una lista de las pruebas, consulte la documentación del paquete. Las referencias que describen las pruebas se dan en las páginas de ayuda para las funciones correspondientes.

En caso de que planeara eliminar los valores atípicos de sus datos, tenga en cuenta que esto no siempre es aconsejable. Vea, por ejemplo, esta pregunta para una discusión sobre esto (así como algunas sugerencias más sobre cómo detectar valores atípicos).


8

Tampoco soy un estadístico. Por lo tanto, utilizo mi conocimiento experto sobre los datos para encontrar valores atípicos. Es decir, busco razones físicas / biológicas / cualesquiera que hayan hecho que algunas mediciones sean diferentes de las demás.

En mi caso eso es por ej.

  • rayos cósmicos que estropean parte de la señal medida
  • alguien entrando al laboratorio, encendiendo la luz
  • solo todo el espectro de alguna manera se ve diferente
  • La primera serie de mediciones se tomó durante las horas normales de trabajo y es un orden de magnitud más ruidoso que la serie de las 10 pm

Seguramente podrías contarnos efectos similares.

Tenga en cuenta que mi tercer punto es diferente de los demás: no sé qué pasó. Este puede ser el tipo de valor atípico por el que pregunta. Sin embargo, sin saber qué lo causó (y que esta causa invalida el punto de datos) es difícil decir que no debería aparecer en el conjunto de datos. Además: su valor atípico puede ser mi muestra más interesante ...

Por lo tanto, a menudo no hablo de valores atípicos, sino de puntos de datos sospechosos. Esto les recuerda a todos que deben verificarse dos veces su significado.

Si es bueno o no excluir datos (¿quién quiere encontrar valores atípicos por el simple hecho de tenerlos?) Depende en gran medida de cuál es la tarea en cuestión y cuáles son las "condiciones límite" para esa tarea. Algunos ejemplos:

  • acabas de descubrir la nueva subespecie Outlierensis Joachimii ;-) no hay razón para excluirlos. Excluir a todos los demás.

  • quieres predecir los tiempos de caza de los ácaros. Si es aceptable restringir la predicción a ciertas condiciones, podría formularlas y excluir todas las otras muestras y decir que su modelo predictivo trata esta o aquella situación, aunque ya conoce otras situaciones (describa aquí las atípicas).

  • Tenga en cuenta que excluir datos con la ayuda del diagnóstico de modelos puede crear una especie de profecía autocumplida o un sesgo demasiado optimista (es decir, si afirma que su método es generalmente aplicable): cuantas más muestras excluya porque no se ajustan a su supuestos, mejor son los supuestos cumplidos por las muestras restantes. Pero eso es solo por exclusión.

  • Actualmente tengo una tarea a mano donde tengo un montón de malas mediciones (sé la razón física por la que considero que la medición es mala), y algunas más que de alguna manera "se ven raras". Lo que hago es excluir estas muestras del entrenamiento de un modelo (predictivo), pero probar el modelo por separado con ellas para poder decir algo sobre la robustez de mi modelo frente a valores atípicos de esos tipos que sé que ocurrirán de vez en cuando. mientras . Por lo tanto, la aplicación de alguna manera u otra debe tratar con estos valores atípicos.

  • Otra forma de ver los valores atípicos es preguntar: "¿Cuánto influyen en mi modelo?" (Apalancamiento). Desde este punto de vista, puede medir la robustez o la estabilidad con respecto a muestras de entrenamiento extrañas.

  • Cualquiera que sea el procedimiento estadístico que utilice, no identificará valores atípicos ni tendrá falsos positivos. Puede caracterizar un procedimiento de prueba atípico como otras pruebas de diagnóstico: tiene una sensibilidad y una especificidad y, lo que es más importante para usted, corresponden (a través de la proporción atípica en sus datos) a un valor predictivo positivo y negativo. En otras palabras, particularmente si sus datos tienen muy pocos valores atípicos, la probabilidad de que un caso identificado por la prueba de valores atípicos sea realmente atípico (es decir, no debería estar en los datos) puede ser muy baja.
    Creo que el conocimiento experto sobre los datos disponibles suele ser mucho mejor para detectar valores atípicos que las pruebas estadísticas: la prueba es tan buena como las suposiciones detrás de ella. Y una talla única para todos a menudo no es realmente buena para el análisis de datos. Al menos, con frecuencia trato con un tipo de valores atípicos, donde los expertos (sobre ese tipo de medición) no tienen problemas para identificar la parte exacta de la señal que está comprometida, mientras que los procedimientos automatizados a menudo fallan (es fácil hacer que detecten que hay una problema, pero es muy difícil hacer que encuentren dónde comienza y dónde termina el problema).


Hay mucha buena información aquí. Me gustan especialmente las viñetas # 4 y 5.
Gung - Restablece a Monica

4

Para los valores atípicos univariantes, existe la prueba de relación de Dixon y la prueba de Grubbs, asumiendo la normalidad. Para probar un valor atípico, debe asumir una distribución de población porque está tratando de demostrar que el valor observado es extremo o inusual para provenir de la distribución supuesta. Tengo un artículo en el American Statistician en 1982 al que quizás haya hecho referencia aquí antes y que muestra que la prueba de relación de Dixon puede usarse en muestras pequeñas incluso para algunas distribuciones no normales. Chernick, MR (1982) "Una nota sobre la robustez de la relación de Dixon en muestras pequeñas" American Statistician p 140. Para valores atípicos y valores atípicos multivariados en series de tiempo, las funciones de influencia para las estimaciones de parámetros son medidas útiles para detectar valores atípicos de manera informal (no sé de pruebas formales construidas para ellos, aunque tales pruebas son posibles)."Valores atípicos en datos estadísticos" para el tratamiento detallado de los métodos de detección de valores atípicos.


3

Ver http://www.waset.org/journals/waset/v36/v36-45.pdf , "Sobre la detección atípica en la regresión no lineal" [ sic ].

Resumen

La detección de valores atípicos es muy esencial debido a su responsabilidad de producir un gran problema de interpretación en el análisis de regresión lineal y no lineal. Se ha realizado mucho trabajo en la identificación de valores atípicos en regresión lineal, pero no en regresión no lineal. En este artículo, proponemos varias técnicas de detección de valores atípicos para la regresión no lineal. La idea principal es utilizar la aproximación lineal de un modelo no lineal y considerar el gradiente como la matriz de diseño. Posteriormente, se formulan las técnicas de detección. Se desarrollan seis medidas de detección que se combinan con tres técnicas de estimación, como los mínimos cuadrados, los estimadores M y MM. El estudio muestra que entre las seis medidas, solo el residual estudiado y la distancia de cocción que se combinaron con el estimador MM,


+1 A pesar de los obvios problemas con el inglés (y en la composición matemática), este artículo parece ser una contribución útil a la pregunta.
whuber

2

Un valor atípico es un punto que está "demasiado lejos" de "alguna línea de base". ¡El truco es definir ambas frases! Con la regresión no lineal, uno no puede simplemente usar métodos univariados para ver si un valor atípico está "demasiado lejos" de la curva de mejor ajuste, porque el valor atípico puede tener una enorme influencia en la curva misma.

Ron Brown y yo desarrollamos un método único (que llamamos ROUT: regresión robusta y eliminación de valores atípicos) para detectar valores atípicos con regresión no lineal, sin dejar que los valores atípicos afecten demasiado la curva. Primero ajuste los datos con un método de regresión robusto donde los valores atípicos tienen poca influencia. Eso forma la línea de base. Luego, use las ideas de la tasa de descubrimiento falso (FDR) para definir cuándo un punto está "demasiado lejos" de esa línea de base y, por lo tanto, es un valor atípico. Finalmente, elimina los valores atípicos identificados y ajusta los puntos restantes de manera convencional.

El método se publica en una revista de acceso abierto: Motulsky HJ y Brown RE, Detección de valores atípicos al ajustar datos con regresión no lineal: un nuevo método basado en una regresión no lineal robusta y la tasa de descubrimiento falso , BMC Bioinformatics 2006, 7: 123. Aquí está el resumen:

Antecedentes. La regresión no lineal, como la regresión lineal, supone que la dispersión de datos alrededor de la curva ideal sigue una distribución gaussiana o normal. Esta suposición conduce al objetivo familiar de la regresión: minimizar la suma de los cuadrados de las distancias verticales o de valor Y entre los puntos y la curva. Los valores atípicos pueden dominar el cálculo de la suma de los cuadrados y dar lugar a resultados engañosos. Sin embargo, no conocemos ningún método práctico para identificar rutinariamente valores atípicos cuando se ajustan curvas con regresión no lineal.

Resultados Describimos un nuevo método para identificar valores atípicos al ajustar datos con regresión no lineal. Primero ajustamos los datos usando una forma robusta de regresión no lineal, basada en el supuesto de que la dispersión sigue una distribución lorentziana. Diseñamos un nuevo método adaptativo que gradualmente se vuelve más robusto a medida que avanza el método. Para definir los valores atípicos, adaptamos el enfoque de tasa de descubrimiento falso para manejar comparaciones múltiples. Luego eliminamos los valores atípicos y analizamos los datos utilizando la regresión de mínimos cuadrados ordinarios. Debido a que el método combina regresión robusta y eliminación de valores atípicos, lo llamamos el método ROUT.

Al analizar datos simulados, donde toda la dispersión es gaussiana, nuestro método detecta (falsamente) uno o más valores atípicos en solo alrededor del 1-3% de los experimentos. Cuando se analizan datos contaminados con uno o varios valores atípicos, el método ROUT funciona bien en la identificación de valores atípicos, con una tasa promedio de descubrimiento falso inferior al 1%.

Conclusión. Nuestro método, que combina un nuevo método de regresión no lineal robusta con un nuevo método de identificación de valores atípicos, identifica valores atípicos de ajustes de curvas no lineales con potencia razonable y pocos falsos positivos.

No se ha implementado (hasta donde yo sé) en R. Pero lo implementamos en GraphPad Prism. y proporcione una explicación simple en la ayuda de Prism .


0

Tu pregunta es demasiado general. No existe un mejor método para excluir los "valores atípicos".

Tenías que conocer algunas propiedades en los "valores atípicos". o no sabes qué método es el mejor. Después de decidir qué método desea utilizar, debe calibrar los parámetros del método con cuidado.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.