Subido por mimedalith

Modelos de regresión bayesiana

Anuncio
Modelos de regresión
9.1 Introducción
En este capítulo, ilustramos R para ajustar algunos modelos de regresión comunes desde
una perspectiva bayesiana.
Primero describimos el modelo de regresión normal bayesiano y describimos algoritmos
para simular a partir de la distribución conjunta de los parámetros de regresión y la
varianza del error y la distribución predictiva de futuras observaciones.
Se puede juzgar la idoneidad del modelo ajustado utilizando la parte posterior
distribución predictiva y la inspección de las distribuciones posteriores de
Residuos bayesianos.
Luego ilustramos los cálculos Bayesianos R en un ejemplo en el que uno está interesado
en explicar la variación de los tiempos de extinción de aves en términos de su
comportamiento de anidación, su tamaño y su migración estado. Zellner (1986) propuso
una forma simple de ingresar información previa en un modelo de regresión.
Ilustramos el uso de la clase de g de Zellner anteriores a seleccione entre un conjunto de
mejores modelos de regresión. Concluimos ilustrando el ajuste bayesiano de un modelo
de regresión de supervivencia.
9.2 Regresión lineal normal
9.2.1 El modelo
En el problema habitual de regresión múltiple, estamos interesados en describir la
variación en una variable de respuesta y en términos de k variables predictoras x1, ...,
xk.
Describimos el valor medio de yi, la respuesta para el i-ésimo individuo, como
donde xi1, ..., xik son los valores predictores para el i-ésimo individuo y β1, ..., βk son
parámetros de regresión desconocidos.
Si dejamos que xi = (xi1, ..., xik) denote el vector de fila de predictores para el i-ésimo
individuo y β = (β1, ..., βk) el vector de columna de coeficientes de regresión, podemos
volver a expresar el valor medio como
Se supone que {yi} son valores condicionalmente independientes dados los parámetros
y las variables predictoras. En la configuración de regresión lineal ordinaria, asumimos
variaciones iguales, donde
.
Dejamos
denota el vector de parámetros desconocidos. Finalmente,
asumimos que los errores
distribuyen con media 0 y varianza σ2.
son independientes y normalmente se
En notación matricial, este modelo se puede escribir para todas las observaciones como
donde y es el vector de observaciones; X es la matriz de diseño con filas x1, ..., xn; I es
la matriz identidad; y Nk (μ, A) indica una distribución normal multivariada de la
dimensión k con el vector medio μ y la varianza-covarianza matriz A.
Para completar la formulación bayesiana del modelo, suponemos (β, σ2) tener el típico
no informativo previo
9.2.2 La distribución posterior
El análisis posterior para el modelo de regresión normal tiene una forma similar al
análisis posterior de una media y varianza para un modelo de muestreo normal.
Representamos la densidad conjunta de (β, σ2) como producto
La distribución posterior del vector de regresión β condicional en la varianza de error
σ2,
donde
, es multivariada normal con media
y varianza covarianza matriz
Si uno define la densidad inversa de gamma (a, b) proporcional a
entonces la distribución posterior marginal de σ2 es inversa
dónde
,
,
9.2.3 Predicción de observaciones futuras
Supongamos que estamos interesados en predecir una observación futura ˜y
correspondiente a un vector covariable x ∗. Del modelo de muestreo de regresión,
tenemos que ˜y, condicional en β y σ2, es N (x ∗ β, σ).
La densidad predictiva posterior de ˜y, p (˜y | y), puede representarse mediante una
mezcla de estas densidades de muestreo p (˜y | β, σ2), donde se promedian sobre la
distribución posterior de los parámetros β y σ2:
9.2.4 Computación
Las expresiones para las distribuciones posteriores y predictivas conducen a eficientes
algoritmos de simulación Para simular a partir de la distribución posterior conjunta de la
vector de coeficiente de regresión β y la varianza de error σ2, uno


simula un valor de la varianza de error σ2 a partir de su densidad marginal
posterior
g (σ2 | y).
simula un valor de β a partir de la densidad posterior condicional g (β | σ2, y).
Dado que las distribuciones de dos componentes (gamma inversa y normal
multivariante) son formas funcionales convenientes, es relativamente fácil construir un
algoritmo en R como el programado en la función blinreg para realizar esta simulación.
Una vez que se ha simulado la distribución posterior de la articulación, es sencilla para
obtener una muestra de la distribución marginal posterior de cualquier función h (β, σ)
de interés. Por ejemplo, si x ∗ denota un vector de fila de particular valores de
covariables, supongamos que uno está interesado en la respuesta media en x ∗,
Si β ∗ es un dibujo simulado del marginal posterior de β, entonces x ∗ β ∗ ser un dibujo
simulado del marginal posterior de x ∗ β. La función R blinregexpected facilita la
simulación de combinaciones lineales de la beta coeficientes.
Asimismo, la representación de la distribución predictiva posterior de los valores de
respuesta futuros sugiere un algoritmo simple para la simulación. Suponga que ˜y es un
valor de respuesta futuro correspondiente al vector de fila de covariables x ∗. Uno
simula un solo valor de ˜y por:


simulando (β, σ2) desde la articulación posterior dados los datos y.
simulando ˜y a partir de su densidad de muestreo dados los valores simulados de
β y σ2,
La función R blinregpred se puede utilizar para simular conjuntos de sorteos del futuro
observaciones correspondientes a una lista de valores covariables de interés.
9.2.5 Verificación del modelo
Un método para evaluar la bondad de ajuste del modelo utiliza la distribución predictiva
posterior definida en la sección anterior. Supongamos que uno simula muchas muestras
˜y1, ..., ˜yn a partir de la distribución predictiva posterior condicional en los mismos
vectores covariables x1, ..., xn utilizados para simular los datos.
Para juzgar si un valor de respuesta particular yi es consistente con el modelo ajustado,
uno mira la posición de yi en relación con el histograma de valores simulados de ˜yi a
partir del distribución predictiva correspondiente. Si yi está en la cola de la distribución,
eso indica que esta observación es un potencial atípico.
Un segundo enfoque se basa en el uso de "residuos bayesianos". En un análisis de
regresión tradicional, se juzga la adecuación del modelo ajustado mediante la inspección
de los residuos estandarizados.
donde ˆ β y ˆσ son las estimaciones habituales del vector de regresión y el estándar de
error desviación e hii es el i-ésimo elemento diagonal de la matriz "hat". Desde una
perspectiva bayesiana, se puede considerar la distribución de los residuos paramétricos.
Antes de observar cualquier dato, los residuos paramétricos son una muestra aleatoria
de una distribución N (0, σ). Supongamos que decimos que la i-ésima observación es un
caso atípico si
, donde k es una constante predeterminada como 2 o 3. La
probabilidad previa de que una observación particular sea un valor atípico es 2Φ (−k),
donde Φ (z) es el cdf normal estándar.
Después de observar los datos y, podemos calcular la probabilidad posterior de que cada
observación sea un valor atípico. Defina las funciones z1 y z2 como
Entonces, la probabilidad posterior de que la i-ésima observación sea un valor atípico es
En la práctica, el pis puede calcularse y compararse con la probabilidad anterior 2Φ
(−k). Los bayesresiduales de la función R se pueden usar para calcular las
probabilidades periféricas posteriores para un modelo de regresión lineal.
9.2.6 Un ejemplo
Ramsey y Schafer (1997) describen un interesante estudio de Pimm et al. (1988) sobre
la extinción de las aves. Las mediciones en parejas reproductoras de especies de aves
terrestres se obtuvieron de 16 islas alrededor de Gran Bretaña en el transcurso de varias
décadas. Para cada especie, el conjunto de datos contiene TIME, el tiempo promedio de
extinción en las islas donde apareció, NIDANDO(NESTING), el número promedio de
pares de anidación, TAMAÑO(SIZE), el tamaño de la especie (grande o pequeña) y
ESTADO(STATUS), El estado migratorio de la especie (migrante o residente). El
objetivo es ajustarse a un modelo que describe la variación en el tiempo de extinción del
ave especies en términos de las covariables NIDO(NESTING), TAMAÑO(SIZE) y
ESTADO(STATUS).
Este conjunto de datos está disponible como birdextinct en el paquete LearnBayes.
Leemos en el archivo de datos y construimos algunos gráficos iniciales. Desde la
variable TIEMPO está fuertemente sesgado a la derecha, inicialmente lo transformamos
usando un logaritmo creando la variable LOGTIME. Las Figuras 9.1, 9.2 y 9.3 trazan
LOGTIME contra cada una de las tres variables predictoras. Dado que las variables
categóricas TAMAÑO y ESTADO solo toman dos valores, usamos la función de
fluctuación de fase en R para fluctuar la ubicación horizontal de los puntos para que
podamos ver los puntos superpuestos.
Nota que hay una relación positiva entre el número promedio de anidamiento parejas y
tiempo de extinción.
Sin embargo, hay cinco especies particulares (etiquetadas en el gráfico) con puntos que
parecen variar del patrón general. Puede haber relaciones de cada una de las variables
categóricas con LOGTIME, pero la fuerza de la relación parece débil en comparación
con la relación de NIDING y LOGTIME.
Escribimos el modelo de regresión como
Como dos de las covariables son categóricas con dos niveles, se pueden representar por
indicadores binarios; en el archivo de datos birdextinct, SIZE se codifica 0 (1) para
pequeños (grande) y STATUS se codifica 0 (1) para migrante (residente).
Primero realizamos el ajuste tradicional de mínimos cuadrados usando el comando lm.
Vemos por el resultado que NIDAR es un efecto fuerte; las especies con un mayor
número de pares de anidación tienden a tener tiempos de extinción más largos, lo que
significa que es menos probable que estas especies se extingan. Los efectos SIZE y
STATUS parecen ser menos significativos; pájaros más grandes (con TAMAÑO = 1)
tienen más pequeños
Fig. 9.1. Gráfica del logaritmo del tiempo de extinción contra el número promedio de
parejas de anidación para el estudio de las aves.
Los tiempos de extinción y las aves residentes (con ESTADO = 1) tienen tiempos de
extinción más largos.
La función blinreg se utiliza para tomar muestras de la distribución posterior conjunta
de β y σ. Las entradas para esta función son el vector de valores de la variable de
respuesta y, la matriz de diseño de la regresión lineal se ajusta a X y el número de
simulaciones m. Tenga en cuenta que utilizamos los argumentos opcionales x =
VERDADERO, y y = VERDADERO en la función lm para que la matriz de diseño y el
vector de respuesta estén disponibles como componentes del ajuste de la estructura.
El algoritmo en binreg se basa en la descomposición de la articulación posterior [β, σ2 |
y] como producto [σ2 | y] [β | σ2, y]. Para simular un sorteo de (σ2, β), primero se
extrae σ2 de la densidad inversa gamma ((n - k) / 2, S / 2):
Luego, el vector de regresión β se simula a partir de la densidad normal multivariante
con media ˆ β y varianza covarianza matriz Vβσ2. Tenga en cuenta que obtenemos el
Fig. 9.2. Trazado del logaritmo del tiempo de extinción contra el tamaño del ave para el
estudio de aves La variable de tamaño de ave se codifica 0 para pequeño y 1 para
grande.
matriz Vβ dividiendo la matriz de covarianza de varianza estimada vcov de los mínimos
cuadrados ajustados por el error cuadrático medio almacenado en la variable MSE.
dibuja desde el posterior marginal de β, donde cada fila es un dibujo simulado, y sigma
es un vector de dibujos simulados desde el posterior marginal de σ.
Los siguientes comandos R construyen histogramas de la simulación posterior sorteos
de los coeficientes de regresión individuales β1, β2 y β3 y el error desviación estándar σ
(ver Figura 9.4):
Fig. 9.3. Trazado del logaritmo del tiempo de extinción contra el estado del pájaro para
el estudio de aves La variable de estado del ave se codifica 0 para migrante y 1 para
residente.
Podemos resumir cada parámetro individual calculando el 5 °, 50 ° y Percentiles 95 de
cada colección de sorteos simulados. En la salida, usamos los comandos de aplicación y
cuantiles para resumir la matriz de simulación de β theta.sample $ beta. De manera
similar, usamos el comando cuantil para simular los sorteos de σ.
Como se esperaba, las medianas posteriores de los parámetros de regresión son
similares en valor a las estimaciones de regresión ordinarias. En realidad son
equivalentes ya que
Fig. 9.4. Histograma de dibujos simulados de las distribuciones posteriores marginales
de β1, β2, β3 y σ.
aplicamos un vago previo para β; cualquier pequeña diferencia entre la parte posterior
las medianas y las estimaciones de mínimos cuadrados se deben a pequeños errores
inherentes a la simulación. Luego, supongamos que estamos interesados en estimar el
tiempo medio de extinción logarítmica E (y | x ∗) = x ∗ β para cuatro pares de
anidamiento y para diferentes combinaciones de TAMAÑO y ESTADO. Los valores de
los cuatro conjuntos de covariables se muestran en la Tabla 9.1.
En el trabajo anterior, estábamos interesados en aprender sobre el valor medio de
respuesta E (y | x ∗) para un conjunto dado de valores covariables. En cambio,
supongamos que estamos interesados en predecir una respuesta futura ˜y para un vector
covariable dado x x. La función blinregpred producirá una muestra simulada de valores
de respuesta futuros para un modelo de regresión. Similar a la función
binlinregexpected, las entradas a la función blinppred son una matriz X1 donde cada fila
corresponde a un conjunto covariable y la estructura de valores simulados de los
parámetros β y σ.
La figura 9.6 muestra histogramas de los dibujos simulados de la distribución predictiva
para los mismos cuatro conjuntos de covariables. Comparando la Figura 9.5 y la Figura
9.6, tenga en cuenta que las distribuciones predictivas son sustancialmente más amplias
que las distribuciones de respuesta media. Ilustramos dos métodos para verificar si las
observaciones son consistentes con el modelo ajustado.
Figura 9.5. Histogramas de dibujos simulados de la parte posterior del tiempo medio de
extinción para cuatro conjuntos de valores covariables.
El primer método se basa en el uso de la distribución predictiva posterior descrita en la
Sección 9.2.5. Sea yi * la densidad de un tiempo de extinción logarítmico futuro para un
ave con el vector covariable xi. Usando la función binregpred, podemos simular dibujos
de las distribuciones predictivas posteriores para todos y1 *, ..., y62* usando fit$x como
argumento. En el código R, resumimos cada distribución predictiva por los cuantiles 5º
y 95º y graficamos estas distribuciones como gráficos de líneas usando el comando
matplot (ver Figura 9.7). Colocamos los tiempos reales de extinción del registro y1, ...,
y62 como puntos sólidos en la figura. Estamos buscando ver si los valores de respuesta
observados son consistentes con las distribuciones predictivas correspondientes;
cualquier punto que quede fuera de la banda de intervalo correspondiente del 90% son
posibles valores atípicos. Hay tres puntos (etiquetados en la figura) que exceden el
percentil 95, correspondientes a la especie snipe, raven y skylark.
Fig. 9.6. Histogramas de dibujos simulados de la distribución predictiva para un tiempo
de extinción futuro para cuatro conjuntos de valores covariables.
Otro método para la detección de valores atípicos se basa en el uso de los residuos
bayesianos ei = yi - xiβ. Siguiendo la estrategia descrita en la Sección 9.2.5, podemos
calcular las probabilidades periféricas posteriores,
para todas las observaciones para un valor constante k. Estas probabilidades se pueden
calcular utilizando la función bayesresiduals. Las entradas son el ajuste de la estructura
de ajuste lm, la matriz de parámetros simulados dibuja theta.sample y el valor de k. La
salida es un vector de probabilidades periféricas posteriores. En este ejemplo, usamos
un valor de corte de k = 2. Usamos el comando plot para construir un diagrama de
dispersión de las probabilidades contra la covariable de anidamiento; la pantalla
resultante se muestra en la Figura 9.8. Al usar el comando de identificación,
identificamos cuatro pájaros que tienen probabilidades periféricas de .4 o más. Estas
aves tienen tiempos de extinción que no están bien explicados por las variables NIDO,
TAMAÑO y ESTADO. 9.3 Selección del modelo con Zellner.
Fig. 9.7. Distribuciones predictivas posteriores de {yi *} con tiempos de extinción
logarítmicos reales {yi} indicados por puntos sólidos. Tres veces que exceden el
percentil 95 de las distribuciones predictivas se etiquetan con el nombre de la especie.
Dos de las especies periféricas, cuervo y alondra, también fueron identificadas por la
metodología predictiva posterior.
9.3 Selección del modelo utilizando el g Prior de Zellner
En las secciones anteriores, hemos considerado el uso de un previo no informativo para
(β, σ2). Arnold Zellner introdujo una forma simple de ingresar información subjetiva en
un problema de regresión. Esta elección particular de distribución se llama g anterior.
En esta sección, ilustramos el uso de g priors y mostramos que esta distribución previa
proporciona una forma conveniente de elegir entre un conjunto de modelos de
regresión.
Fig. 9.8. Gráfico de probabilidades posteriores de valores atípicos para todas las
observaciones. Cuatro probabilidades inusualmente grandes se identifican con el
nombre de la especie.
Para ag prior, suponemos que el vector de regresión β, condicional en σ, tiene una
distribución previa normal multivariada con media β0 y matriz de varianza y covarianza
cσ2 (X'X) −1, y luego asignamos σ2 el estándar no informativo previo proporcional a 1
/ σ2. Para usar esto antes, el usuario necesita especificar solo dos cantidades, una
conjetura β0 en el vector de regresión y una constante c que refleja la cantidad de
información en los datos en relación con el anterior. Si uno cree firmemente en la
suposición anterior, elegiría un valor pequeño para c. En contraste, elegir un valor
grande de c tendría un efecto similar a elegir el estándar no informativo previo para (β,
σ2). Una buena característica del análisis previo g es que la distribución posterior tiene
una forma funcional relativamente simple. Se puede representar la densidad posterior
articular de (β, σ2) como:
La distribución posterior del vector de regresión β condicional en σ2, g (β | y, σ2), es
multivariada normal con media β1 y varianza de covarianza matriz V1, donde:
La distribución marginal posterior de σ2 es gamma inversa (a1, b1), donde:
Se puede obtener una muestra simulada de la distribución posterior de la articulación
utilizando el mismo algoritmo descrito en la Sección 9.2.4. Primero, uno simula un
valor de la varianza de la distribución gamma inversa, y luego uno simula β de la
densidad normal multivariada condicional. La función R blinreg, con la opción anterior,
simulará dibujos del modelo de regresión con la g anterior de Zellner. Para ilustrar la
aplicación de la g anterior de Zellner, considere los datos de un estudio descrito en
Peck, Devore y Olsen (2005) que relaciona el éxito reproductivo del frailecillo común
en diferentes hábitats en Great Island, Newfoundland. Para 28 aves, observamos NIDO,
la frecuencia de anidación, HIERBA, la cubierta de hierba, SUELO, la profundidad
media del suelo, ÁNGULO, el ángulo de pendiente y DISTANCIA, la distancia desde
el borde del acantilado. Supongamos que exploramos la relación entre NIDO y
DISTANCIA usando el modelo de regresión simple:
Donde NESTi y DISTANCEi son, respectivamente, la frecuencia de anidación y la
cubierta de hierba para el i-ésimo frailecillo, y {i} son una muestra aleatoria de una
distribución normal (0, σ). Supongamos que nuestra suposición previa en el vector de
regresión β = (β0, β1) es igual a β0 = (8, 0). Esta suposición dice que no creemos que
DISTANCE sea un predictor útil de la frecuencia de anidación y, por lo tanto, β1 = 0; el
valor β0 = 8 es la frecuencia promedio de anidación.
Para usar la función blinreg, agregamos la opción anterior, una lista con los
componentes b0 y c0, que corresponden a los valores de los parámetros anteriores de β0
y c, respectivamente. En el siguiente código R, simulamos muestras posteriores de (β,
σ) usando la g anterior con la conjetura previa β0 = (8, 0) y la constante anterior c = 0.1,
0.5, 2, 5. Usando la función xyplot en En el paquete de celosía, construimos gráficos de
dispersión de los dibujos simulados a partir de la distribución posterior de (β0, β1) para
los cuatro valores de c. (Ver Figura 9.9.) Vemos que, a medida que c disminuye de 5 a
0.1, lo que corresponde a creencias anteriores más fuertes, la distribución posterior se
mueve hacia la conjetura previa (β0, β1) = (8, 0).
Fig. 9.9. Distribución posterior de β0, β1 para cuatro opciones del parámetro c anterior
para el conjunto de datos de frailecillos.
La clase de g priors de Zellner se puede usar para seleccionar el mejor modelo en una
regresión problema. Supongamos que hay k predictores potenciales de la variable de
respuesta y. Hay un total de 2^k posibles modelos de regresión, correspondientes a la
inclusión o exclusión de cada predictor en el modelo. Deje β denotar el total modelo
que incluye todos los predictores. Asignamos β a g antes con una conjetura previa β0 =
0 y un valor "grande" de c, digamos c = 100, correspondiente a información previa vaga
sobre la ubicación de β. Entonces, si βP denota un modelo de regresión que contiene un
subconjunto P de los predictores, asignamos βP a g antes del mismo forma funcional
con una suposición previa de 0 y el mismo valor de c. Comparamos los diferentes
modelos de regresión calculando el predictivo previo densidad. Si la densidad de
muestreo de la variable de respuesta viene dada por f (y | β, σ2) y al vector de
parámetros (β, σ2) se le asigna la densidad previa g (β, σ2), entonces la densidad
predictiva previa de y está dada por la integral.
Si transformamos σ2 por un logaritmo donde η = log σ, entonces esta integral sobre (β,
η) se puede aproximar con precisión utilizando el método implementado de Laplace en
la función R laplace en el paquete LearnBayes. La función reg.gprior.post calcula el
registro de densidad posterior para un modelo de regresión con una g anterior. El
registro posterior es la suma del registro probabilidad y el registro anterior, donde se usa
el siguiente código R para calcular los dos términos.
Supongamos que uno está interesado en calcular la densidad predictiva previa para el
modelo específico que incluye las covariables GRASS y SOIL. Primero se define la
lista de datos que contiene el vector de respuesta y y la matriz de diseño X.
Luego se define la lista anterior que contiene los valores de β0 y c. Uno consigue un
valor inicial razonable para β en laplace realizando un mínimo de cuadrados ajuste de
regresión, y el valor inicial para log σ es una estimación de la desviación estándar del
error. El componente int de la salida de laplace es la estimación del logaritmo de la
densidad predictiva.
En la práctica, uno desea calcular la densidad predictiva para una colección de modelos
plausibles. La función bayes.model.selection usa el algoritmo anterior para calcular la
densidad predictiva para todos los modelos 2^k. La función tiene tres entradas: y es el
vector de respuestas, X es la matriz de diseño (en este caso, la matriz de diseño no
contiene una columna correspondiente a la constante término, entonces la opción
constante se establece en FALSO), y c es el valor de la constante c de la g anterior. La
salida de bayes.model.selection es una matriz que da el valor del registro de densidad
predictiva para todos los modelos. Suponga que los modelos 2^k se consideran
igualmente probables a priori. Entonces la probabilidad posterior del modelo Mj viene
dado por
Bajo este supuesto de que todos los modelos tienen la misma probabilidad previa, esta
función también genera las probabilidades del modelo posterior.
De esta salida, vemos que los modelos más probables son {SUELO, DISTANCIA},
{SUELO, ÁNGULO, DISTANCIA} y {HIERBA, SUELO, DISTANCIA}. La
densidad marginal logarítmica y la probabilidad posterior del modelo más probable
{SUELO, DISTANCE} son −100.37 y 0.65065, respectivamente.
Descargar