¿Por qué está sesgado el intervalo bayesiano creíble en esta regresión polinómica mientras que el intervalo de confianza es correcto?


9

Considere la siguiente gráfica en la que simulé datos de la siguiente manera. Observamos un resultado binario para el cual la probabilidad real de ser 1 se indica mediante la línea negra. La relación funcional entre una covariable y es un polinomio de tercer orden con enlace logístico (por lo que no es lineal en una doble dirección). x p ( y o b s = 1 | x )yobsXp(yobs=1|x)

La línea verde es el ajuste de regresión logística GLM donde se introduce como polinomio de tercer orden. Las líneas verdes discontinuas son los intervalos de confianza del 95% alrededor de la predicción , donde los coeficientes de regresión ajustados. Solía y para esto.p ( y o b s = 1 | x , β ) βXpag(yosis=1El |X,β^)β^R glmpredict.glm

Del mismo modo, la línea de pruple es la media de la parte posterior con un intervalo creíble del 95% para de un modelo de regresión logística bayesiana que utiliza un previo uniforme. Utilicé el paquete con función para esto (la configuración le da al uniforme un poco informativo antes).pag(yosis=1El |X,β)MCMCpackMCMClogitB0=0

Los puntos rojos denotan observaciones en el conjunto de datos para los cuales , los puntos negros son observaciones con . Tenga en cuenta que, como es común en la clasificación / análisis discreto pero no se observa .yosis=1yosis=0 0ypag(yosis=1El |X)

ingrese la descripción de la imagen aquí

Se pueden ver varias cosas:

  1. Simulé a propósito que es escaso en la mano izquierda. Quiero que la confianza y el intervalo creíble se amplíen aquí debido a la falta de información (observaciones).X
  2. Ambas predicciones están sesgadas hacia arriba a la izquierda. Este sesgo es causado por los cuatro puntos rojos que indican observaciones, lo que sugiere erróneamente que la verdadera forma funcional subiría aquí. El algoritmo tiene información insuficiente para concluir que la verdadera forma funcional está doblada hacia abajo.yosis=1
  3. El intervalo de confianza se ensancha como se esperaba, mientras que el intervalo creíble no . De hecho, el intervalo de confianza encierra el espacio de parámetros completo, como debería debido a la falta de información.

Parece que el intervalo creíble es incorrecto / demasiado optimista aquí para una parte de . Es realmente un comportamiento indeseable que el intervalo creíble se estreche cuando la información se dispersa o está completamente ausente. Por lo general, no es así como reacciona un intervalo creíble. Alguien puede explicar:X

  1. ¿Cuáles son las razones para esto?
  2. ¿Qué pasos puedo tomar para llegar a un mejor intervalo creíble? (es decir, una que encierra al menos la verdadera forma funcional, o mejor, se amplía tanto como el intervalo de confianza)

El código para obtener los intervalos de predicción en el gráfico se imprime aquí:

fit <- glm(y_obs ~ x + I(x^2) + I(x^3), data=data, family=binomial)
x_pred <- seq(0, 1, by=0.01)
pred <- predict(fit, newdata = data.frame(x=x_pred), se.fit = T)
plot(plogis(pred$fit), type='l')
matlines(plogis(pred$fit + pred$se.fit %o% c(-1.96,1.96)), type='l', col='black', lty=2)


library(MCMCpack)
mcmcfit <- MCMClogit(y_obs ~ x + I(x^2) + I(x^3), data=data, family=binomial)
gibbs_samps <- as.mcmc(mcmcfit)
x_pred_dm <- model.matrix(~ x + I(x^2) + I(x^3), data=data.frame('x'=x_pred))
gibbs_preds <- apply(gibbs_samps, 1, `%*%`, t(x_pred_dm))
gibbs_pis <- plogis(apply(gibbs_preds, 1, quantile, c(0.025, 0.975)))
matlines(t(gibbs_pis), col='red', lty=2)

Acceso a datos : https://pastebin.com/1H2iXiew gracias @DeltaIV y @AdamO


Si alguien pudiera explicarme cómo compartir una tabla con los datos, puedo hacerlo.
tomka

Puede usar dputen el marco de datos que contiene los datos y luego incluir la dputsalida como código en su publicación.
DeltaIV

1
@tomka oh ya veo. No soy daltónico, ¡pero es muy difícil para mí ver la diferencia verde / azul!
AdamO

1
@AdamO espero que esto sea mejor
tomka

Respuestas:


6

XX

Un GLM binomial frecuente no es diferente de un GLM con enlace de identidad, excepto que la varianza es proporcional a la media.

X-X

Para la predicción frecuentista, el aumento proporcional de la desviación al cuadrado (apalancamiento) en la varianza de las predicciones domina esta tendencia. Esta es la razón por la cual la tasa de convergencia a los intervalos de predicción aproximadamente igual a [0, 1] es más rápida que la convergencia del logit polinomial de tercer orden a probabilidades de 0 o 1 singularmente.

Esto no es así para los cuantiles bayesianos ajustados posteriores. No hay un uso explícito de la desviación al cuadrado, por lo que nos basamos simplemente en la proporción de tendencias dominantes 0 o 1 para construir intervalos de predicción a largo plazo.

X

Usando el código que proporcioné arriba obtenemos:

> x_pred_dom <- model.matrix(~ x + I(x^2) + I(x^3), data=data.frame('x'=c(1000)))
> gibbs_preds <- plogis(apply(gibbs_samps[1000:10000, ], 1, `%*%`, t(x_pred_dom))) # a bunch of 0/1s basically past machine precision
> prop.table(table(gibbs_preds))
gibbs_preds
         0          1 
0.97733585 0.02266415 
> 

Entonces, el 97.75% de las veces, el tercer término polinómico fue negativo. Esto es verificable a partir de las muestras de Gibbs:

> prop.table(table(gibbs_samps[, 4]< 0))

 FALSE   TRUE 
0.0225 0.9775 

X

Por otro lado, el ajuste frecuentista explota hasta 0,1 como se esperaba:

freq <- predict(fit, newdata = data.frame(x=1000), se.fit=T)
plogis(freq$fit + c(-1.96, 1.96) %o% freq$se.fit)

da:

> plogis(freq$fit + c(-1.96, 1.96) %o% freq$se.fit)
     [,1]
[1,]    0
[2,]    1

XB0MCMClogit

@tomka No sé cómo responder eso exactamente, ya que parece tangencial a la pregunta en cuestión. Lo más importante es señalar que estos métodos de cálculo de IP no son realmente comparables, especialmente en lo que respecta a la extrapolación. Por supuesto, con la inferencia bayesiana, si usa un previo informativo, gana eficiencia cuando lo anterior es correcto y pierde cuando lo anterior es incorrecto.
AdamO

Solo para hacerle saber que todavía estoy pensando en su respuesta. Todavía siento que es extraño que la parte posterior no reaccione a la escasez ensanchándose. Creo que para otros antecedentes se puede lograr un mejor comportamiento en la región dispersa. No puedo precisar esto exactamente en este momento; Quizás mejoraré la pregunta con un ejemplo en el que el intervalo creíble funciona de la manera que esperaría, incluso en el caso de la extrapolación (en particular, estoy pensando en la regresión bayesiana lineal normal). Cuando lo haga, te lo haré saber.
tomka
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.