¿Es posible simular regresión logística sin aleatoriedad?


8

Podemos simular una regresión lineal sin aleatoriedad, lo que significa que hacemos lugar de . Entonces, si ajustamos un modelo lineal, los coeficientes serán idénticos a la "verdad fundamental". Aquí hay un ejemplo.y=Xβy=Xβ+ϵ

set.seed(0)
n    <- 1e5
p    <- 3
X    <- matrix(rnorm(n*p), ncol=p)
beta <- runif(p)
# y  <- X %*% beta + rnorm(n)*0.5
# remove the randomness
y    <- X %*% beta
dat  <- data.frame(y=y, x=X)
lm.res = lm(y ~ .-1, data=dat)
norm(as.matrix(lm.res$coefficients - beta))
[1] 2.176037e-14

Mi pregunta es ¿podemos hacer una simulación similar con regresión logística? De esta pregunta obtengo que el punto de eliminar la aleatoriedad se puede hacer usando una declaración determinista en lugar de una muestra de distribución binomial.

y <- ifelse(plogis(X %*% beta)>0.5,1,0) 

en vez de

y <- rbinom(n,1,prob=plogis(X %*% beta))

Pero si hacemos eso, se producirá una separación completa y no podremos obtener los coeficientes. Por otro lado, si agregamos regularización, entonces los coeficientes no serán los datos generados.

Entonces, ¿qué puedo hacer para "eliminar la aleatoriedad en la regresión logística" y resolver los coeficientes exactos de "verdad fundamental" como el caso de regresión lineal?

Siento que tengo un malentendido fundamental del concepto, ¿qué me estoy perdiendo?


1
No veo una razón estadística para hacerlo, ya que necesita conocer los parámetros para generar la respuesta. Todo es completamente determinista.
Michael R. Chernick

@MichaelChernick Estoy tratando de probar un algoritmo de optimización, donde quiero simular la verdad básica y compararla con la salida del algoritmo, aquí hay un ejemplo.
Haitao Du

Respuestas:


7

La regresión logística no tiene un término de "error" como con la regresión lineal clásica. La excepción a esto podría ser una regresión lineal limitada con un término de error logístico, pero este no es un modelo de probabilidad comúnmente aceptado que resulta en un modelo de regresión logística. Esto se debe a que los modelos logísticos tienen una relación media-varianza. El análogo de "agregar un término de error" a un modelo de regresión lineal es en realidad un modelo cuasibinomial en el que la varianza es meramente proporcional a p * (1-p).

Una pregunta relacionada puede ser cómo obtener resultados del modelo de regresión que sean idénticos en varios diseños o repeticiones. Esto se puede hacer con un "truco" en el software de modelado de regresión. Puedes generar no integralY resultados del riesgo previsto que resultan en los mismos resultados de regresión logística independientemente del diseño de X. Por ejemplo: x1 <- seq(-3, 3, 0.1)y x2 <- rnorm(61)como dos diseños diferentes. Como en su caso, y1 <- plogis(0.3*x1)y y2 <- plogis(0.3*x2)ambos dan como resultado los mismos resultados del modelo de regresión logística con 0.3 como log odds ratio y 0.0 como log odds parax=0.

> glm(y1 ~ x1, family=binomial)

Call:  glm(formula = y1 ~ x1, family = binomial)

Coefficients:
(Intercept)           x1  
 -2.528e-16    3.000e-01  

Esto se relaciona con su pregunta porque las estimaciones de los parámetros son exactamente como se definen en su modelo de probabilidad, independientemente del diseño dexy sin separación (por ejemplo, log odds ratios, β=±)

Modelar resultados fraccionarios en un modelo logístico es una forma aceptada de analizar datos ecológicos, donde el resultado puede ser fraccionario. No es coincidencia, este también es un tipo de modelado cuando los modelos cuasibinomiales son de mayor utilidad. Además, no es coincidencia, creo que la dispersión es proporcional a un parámetro de escala para el término de error logístico al hacer "regresión logística latente".


+1 no estoy seguro de entender "Puede generar resultados Y no integrales a partir del riesgo pronosticado que resultan en los mismos resultados de regresión logística independientemente del diseño de X". ¿podrías explicar más? También tenía una respuesta aquí , ¿de qué está hablando?
Haitao Du

@ hxd1011 no, el enlace que proporciona es un enfoque alternativo para estimar GLM. Sin embargo, está relacionado con un punto: en la regresión logística, la varianza es una función de la media, no una entrada independiente del resultado. Si ingresa el valor esperado deyen lugar de simular un resultado de Bernoulli, está generando resultados de acuerdo con un modelo de probabilidad deseado.
AdamO

su código me sorprende ..., no sabía que podía correr glm family=binomialcon un número fraccionario. me dio una advertencia. pero aún puede ejecutarse ... "En eval (family $ initialize): ¡#succesos no enteros en una película binomial!"
Haitao Du

@ hxd1011 No aparece mucho en la práctica, pero al final del día fit.glmsimplemente maximiza una función. No importa mucho cuáles son los valores de y, solo que no explotan los valores calculados de la función.
Matthew Drury

3

Siempre me gusta pensar en la regresión logística como lo que sucede si aplica una decisión binaria a un modelo lineal. Es decir, supongamos que hay alguna relación subyacente que sigue el modelo lineal:

y=Xβ+ε
dónde X es tu variable independiente y β el coeficiente (o pendiente) en esa variable, y εEs ruido aleatorio. Y luego digamos que aplicamos una función a la variable continuay que lo mapea en un resultado binario:
f(y)={0, if yθ1, if y>θ
dónde θEs un umbral. ¿Cuál es la probabilidad de que esta función regrese?1, dado un cierto valor de X? Si suponemos queε se distribuye normalmente con media 0 y varianza σ2, entonces podemos calcular esta probabilidad como:

pags(F(y)=1El |X)=pags(y>θEl |X)=θnorte(y;Xβ,σ2)rey

En otras palabras, esto es calcular el área bajo la distribución Normal que está a la derecha del umbral. Tenga en cuenta que esta probabilidad es esencialmente lo que un modelo de regresión logística intenta describir. Y de hecho, si trazas esta probabilidad en función deX, obtienes algo bastante parecido a la función logística (de hecho, la función logística a menudo se usa como una aproximación conveniente a la distribución normal acumulativa).

Para valores de Xβ cerca del umbral, la probabilidad de que y estará por encima del umbral está cerca 0,5porque el ruido εpuede influir en el resultado de cualquier manera. A medida que aumentaX, Xβ se alejará de θ y F(y)=1se vuelve más probable. Crucialmente, qué tan rápidopags(F(y)=1El |X) aumenta con X depende de dos cosas: la pendiente β y la varianza del ruido σ2. Más precisamente, depende de la relaciónβσ. Es esta relación (señal a ruido) la que determina el coeficiente (esperado) que se obtiene de una regresión logística. En otras palabras, puede pensar en los coeficientes en una regresión logística como el control de cuánto debe cambiar cada variable independiente en relación con el ruido en los datos para aumentar la probabilidad de un determinado resultado en cierta cantidad.

Ahora para responder a su pregunta: está preguntando si es posible eliminar toda aleatoriedad, es decir, no tener ruido. Esto significaría queσ es igual 0 0, y por lo tanto βσsería indefinido (o "infinito"). Esto explica lo que encontró, que no puede estimar los coeficientes cuando no hay ruido. De hecho, puede pensar que la separación perfecta que logra sin ruido corresponde a un coeficiente infinito en su variable independiente, ya que (paraXβ cerca del umbral θ) solo necesitas cambiar X una cantidad infinitesimal para ir desde pags(y>θEl |X)=0 0 a pags(y>θEl |X)=1.

Editar: en realidad, una cosa que podría hacer es en lugar de extraer muestras de una distribución binomial para simular sus datos, reemplazar estas muestras por sus expectativas, es decir, la probabilidad predicha por la función logística simulada. De esa manera, está eliminando la aleatoriedad que se deriva de simular una muestra limitada (es decir, la variabilidad del muestreo), y por lo tanto, sus estimaciones de coeficientes deberían ser iguales a la verdad básica (ya que hay una función logística que se ajusta exactamente a estos valores).


3
Tenga en cuenta que usted describe la regresión de Probit (puede usar N (0, 1) sin pérdida de generalidad, solo escala sus coeficientes), que de hecho está muy cerca de la regresión logística, pero como mencionó, no es exactamente lo mismo.
Sven
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.