7 votos

Resultados de la regresión logística con alto número de predictores

Estoy tratando de entender el comportamiento de la regresión logística en alta dimensional problemas (es decir, cuando el ajuste de una regresión logística para datos con un alto número de variables predictoras).

Cada vez que el ajuste de una regresión logística con un alto número de predictores, me sale la siguiente advertencia en R:

Warning message:
glm.fit: fitted probabilities numerically 0 or 1 occurred 

He leído por ahí que este es el llamado Hauck-Donner fenómeno es debido al hecho de que el conjunto de las probabilidades están demasiado cerca de la 0/1.

Sin embargo, mi hipótesis es que a medida que aumenta el número de factores, las variaciones de su equipados probabilidades tiene que aumentar la regresión logística. Esto es debido a que sus probabilidades de registro de las estimaciones es esencialmente una suma de variables aleatorias, y una suma de 100 distribuyeron de manera similar variables aleatorias (probablemente) tiene una mayor varianza de una suma de 10 vehículos recreativos. Por lo tanto, al aplicar la regresión logística para muy altas dimensiones de los problemas, su equipado probabilidades estará más cerca de la 0/1 (porque el aumento de la varianza), y por lo tanto su coeficiente de estimaciones deben ser parcial (incorrecta) a causa de este problema? Es esta hipótesis la correcta?

He creado una simulación con el código siguiente para intentar responder a esta:

genLogit <- function(n,dimens){
dimens <- floor(dimens/2)*2 #make sure dimens is even

xdata <- cbind(replicate(dimens/2,runif(n)),replicate(dimens/2,runif(n,-1,0)))
ydata <- apply(xdata,1,sum)

prob <- exp(ydata)/(1+exp(ydata))
runis <- runif(length(prob))

ydata <- ifelse(runis<prob,1,0)

model <- glm(ydata~.,data = data.frame(cbind(ydata,xdata)),family = binomial(link = 
return(summary(model))
}

Lo que hace el código es básicamente la simulación de una regresión logística de las siguientes opciones:

$$\log\left(\frac{p}{1-p}\right) = U_1+U_1+\ldots+U_1 + U_{-1}+U_{-1}+\ldots+U_{-1}$$

where $U_1 = \text{Unif}(0,1)$ and $U_{-1} = \text{Unif}(-1,0)$. Se puede variar el número de predictores en el modelo, así como el número de puntos de datos generados. A continuación, la función de ajuste de una regresión logística a los datos simulados, y usted puede examinar los coeficientes residual, la desviación, la fit, etc.

Yo entiendo que todos los de mi predictores tienen la misma varianza (lo cual no es necesariamente cierto cuando se trata con datos reales), pero es esta simulación aún suficientes para demostrar mi hipótesis?

7voto

Nathan Long Puntos 30303

Creo que debemos dar la palabra a Venables y Ripley, página 198 en MASA:

Hay uno bastante común la circunstancia en la que tanto la convergencia los problemas y la Hauck-Donner fenómeno puede ocurrir. Esto es cuando el equipado probabilidades son muy cercanos a cero o uno. Considere la posibilidad de un el diagnóstico médico problema con miles de casos y alrededor de cincuenta binarias variables explicativas (que puede surgir a partir de la codificación de menos categórica factores); uno de estos indicadores rara vez es cierto pero siempre indica que la enfermedad está presente. A continuación, el amueblada las probabilidades de los casos con los que el indicador debe ser uno, que puede sólo se logra mediante la adopción de $\hat\beta_i = \infty$. El resultado de glm advertencias y se estima que el coeficiente de alrededor de +/- 10.

Además de posibles dificultades numéricas no hay ningún problema formal con probabilidades de ser estimado de forma numérica de 0 o 1. Sin embargo, el $t$-prueba, la cual se basa en una aproximación cuadrática, para probar la hipótesis de $\beta_i = 0$ puede convertirse en una mala aproximación de la prueba de razón de verosimilitud, y el $t$-prueba puede parecer insignificante, aunque en realidad la hipótesis está definitivamente mal. Como yo lo entiendo, esto es lo que la advertencia es sobre.

Con muchos predictores una situación como la Venables y Ripley describe puede ocurrir fácilmente; un predictor no es principalmente informativo, pero en ciertos casos es un fuerte predictor de un caso.

4voto

Momo Puntos 5125

Mientras que el Hauck-Donner efecto está estrechamente relacionado con él, creo que el problema en tu caso es (casi) completa de la separación. Esto se refiere al fenómeno por el que una cierta combinación (incluyendo las interacciones) de predictores, que dará lugar a un subconjunto de las observaciones, donde se observa sólo ceros o unos (básicamente una combinación de los valores predictores separa las dos clases). A continuación, la estimación de máxima verosimilitud no existe (va a ser infinito, lo que hace que su error estándar bastante grande también). Esto es lo que V&R escribir en la cita de @NRH. Si usted tiene muchos factores, especialmente categórico, esto sólo se convierte en más probable para suceder por una particular combinación de predictores. El HD efecto, a continuación, se produce para el test Wald en tal situación. Una canónica de tratamiento de qcs es Albert y Anderson, 1984 artículo en Biometrika.

Es posible que desee buscar en el noverlap paquete (ya no en CRAN) en R, que contiene utilidades para lidiar con casi completa de la separación, o la brglm paquete, que puede lidiar con qcs.

0voto

smartappers Puntos 11

No estoy muy seguro de cómo explicar tu problema, pero te puedo ofrecer una posible solución: trate de usar un paquete de R llamado glmnet lugar. He utilizado glmnet lineal y regresión logística. En un problema en particular, tenía aproximadamente 1.200 casos (N = 1.200) y alrededor de 110 predictores. El paquete me dio grandes resultados.

Por supuesto, vale la pena señalar que glmnet se utiliza principalmente para penalizado de regresión logística, pero ya que el paquete le permite seleccionar el grado de la pena a aplicar, estoy seguro de que puede establecer la pena a cero para obtener los resultados de los regulares de regresión logística (es decir, sin ningún tipo de penalización). En cualquier caso, el paquete fue hecho específicamente para problemas en las altas dimensiones (incluso N << P), y este parece ser el origen de su problema. Recomiendo glmnet.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X