Presentacion Seminario Bayesian Analysis using WINBUGS

Anuncio
Bayesian Inference Using Gibbs Sampling.
WIN-BUGS: un software para el análisis
de modelos bayesianos
usando MCMC
Dr Toni Monleón Getino
Departament d’Estadística (UB)
21 Mayo 2010
Material extraido del curso:Seminario de Aplicaciones Bayesianas en Economía de la Salud (19 y 20 Octubre 2006, UPF-CRES)
Introducción al análisis bayesiano computacional: MCMC (WinBUGS)
Miguel Ángel Negrín Hernández [www.personales.ulpgc.es/mnegrin.dmc]
Francisco José Vázquez Polo [www.personales.ulpgc.es/fjvpolo.dmc]
fjvpolo or [email protected].
También de : Introduction to Bayesian Analysis using Winbugs (David Spiegelhalter and Dave Lunn, 2010-Cambridge (UK))
También material de:
SUMARIO
n
Introduccion a la prob bayesiana y a MCMC. 10 min
n
Instalación de Winbugs 1.4 (5 min)
n
Uso de Winbugs (10 min)
n
Ejemplos de probabilidad y de GLM con sintaxis
Bugs (40 min)
Thomas BAYES (1702 - 1761)
Origen:
Trabajos del Reverendo Thomas
Bayes (1763)
Desde un punto de vista estricto, la estadística
bayesiana comienza en 1959 con la publicación del
trabajo “Probability and Statistics for Business
Decisions” por Robert Schlaiffer.
En él se presentan las principales ideas de la
estadística bayesiana, en el que se define la
probabilidad como una opinión ordenada, en el que la
inferencia no es más que una revisión de las
opiniones a la luz de nueva información relevante.
Probabilidad: Matemáticas
incertidumbre.
usadas para
describir
Prob. frecuentista: Probabilidad de un evento como el
límite de la frecuencia relativa con la que el evento
ocurre en una serie de repeticiones de dicho evento.
Estas series son hipotéticas. Prob. Clásica: simetría.
centradas en el “evento”
Prob. bayesiana: Probabilidad de un evento es el
número usado para indicar la opinión de un
determinado observador de que ocurra el evento. La
probabilidad se centra en el “observador”.
Objetividad
vs.
Subjetividad
& Bibliografía Básica:
4 Lee, P. (1993) “Bayesian Statistics: An introduction”. Oxford, UK: Oxford
University Press, UK.
4 Berry, D. And Stangl, DK. (1996) “Bayesian Biostatistics”. Ed. Dekker. LEE
4 Chen, M., Shao, Q. e Ibrahim, J.(2000). “Monte Carlo Methods in Bayesian
Computation”. Springer-Verlag. NY.
4 Leonard,T. y Hsu, J.S.(1999). “Bayesian Methods. An analysis for statisticians
and interdisciplinary researches” Cambridge Series in Statistical and Probabilistic
Mathematics. Cambridge.
4 O’Hagan, A.(1994). “Bayesian Inference”. Kendall’s Advanced Theory of Statistics
(vol.2b). E. Arnold. University Press. Cambridge.
4 O’Hagan, A.(2003). “A primer on Bayesian Statistics in Health Economics and
Outcomes Research”. Centre for Bayesian Statistics in Health Economics.
Inferencia
Según la teoría frecuentista o clásica, solo eventos repetibles
tienen probabilidades. En la metodología bayesiana, la
probabilidad describe incertidumbre desde un sentido amplio.
Un evento puede ser incierto por ser intrínsecamente
impredecible, sujeto a variabilidad aleatoria. Por ejemplo la
respuesta de un paciente a un tratamiento. Pero, también puede
ser incierto simplemente porque tenemos un conocimiento
imperfecto, por ejemplo, la respuesta media de una población a
un tratamiento. Solo la primera definición de incertidumbre es
reconocida en la estadística frecuentista.
Parámetros son específicos de cada problema y,
generalmente, no están sujetos a variabilidad aleatoria.
La estadística frecuentista
parámetros como aleatorios.
no
reconoce
dichos
Sin embargo, la perspectiva bayesiana supone dichos
parámetros como aleatorios simplemente por ser
desconocidos.
Intervalo de confianza clásico
Para obtener una estimación por intervalo del parámetro
poblacional θ desconocido, tendremos que obtener dos
estadísticos (θmin, θmax) que nos darán los valores extremos del
intervalo, tales que
P(q min £ q £ q max ) = 1 - a
Al valor (1-α)% se le llama nivel de confianza.
Ejemplo: Queremos estudiar si el tratamiento 2 es más
costoso que el tratamiento 1.
Perspectiva bayesiana: ¿ Prob (C2 – C1) > 0?
Perspectiva clásica: ¿ valor – p ?
¿Cómo interpretar un valor-p?
Interpretación al valor p
La hipótesis nula de que el tratamiento 2 es más costoso
que el 1 es rechazada al 5%, es decir, p=0.05. ¿Qué quiere
decir?
1. Solamente para el 5% de los pacientes, el tratamiento 2
es más costoso.
2. Si repitiésemos el análisis un número elevado de veces,
y si la hipótesis nula fuese cierta, entonces solamente el
5% de las ocasiones sería rechazada.
3. Hay una probabilidad del 5% de que la hipótesis nula es
cierta.
Probabilidad condicionada
Extraído del material de Statmedia (Dep Estadística, UB)
Extraído del material de Statmedia (Dep Estadística, UB)
Extraído del material de Statmedia (Dep Estadística, UB)
/ Fórmula para probabilidades condicionadas:
Pr( A, B ) = Pr( A | B ) × Pr( B ) = Pr( B | A) × Pr( A)
/ Teorema de Bayes:
Pr( A | B ) × Pr( B) = Pr( A, B)
Pr( A, B)
Pr( A | B ) =
Pr( B )
Pr( B | A) × Pr( A)
Pr( A | B ) =
Pr( B )
/ Teorema de Bayes.
Pr( Data | q ) × Pr(q )
Pr(q | Data ) =
Pr( Data )
Dist. a
posteriori
Verosimilitud
(nuestro modelo
de cómo un
dato individual
es generado)
Dist. a
priori
/ Notación abreviada común en la literatura
bayesiana
[ Data | q ] × [q ]
[q | Data ] =
[ Data ]
/ donde:
ü [ Data | q ] indica la probabilidad o verosimilitud dada por
una determinada distribución
ü [q | Data ]
es la distribución de q dados los datos.
Ejemplo: Realizando un test para una enfermedad (1 de
cada 50000). El test es muy preciso, con una tasa de falsos
positivos o falsos negativos de 0.1%. Realizamos el test y
obtenemos un positivo. ¿Qué quiere esto decir?
¿Podemos rechazar la hipótesis nula de no tener la
enfermedad al 0.1%?
P(tener enf. | test +)=
P(test + | tener enf.) P(tener enf.)
P(test +)
= 1.9589 %
Información a priori. Elicitación.
La información a priori es tanto una gran ventaja y una
potencial debilidad de la aproximación bayesiana.
Tipos de distribución a priori:
-No informativas (o impropias, de referencia, débiles o
ignorantes): Representa una carencia de información previa
-Informativa (o genuina): incorpora información procedente
de análisis previos o información de expertos
-Estructural (o jerárquica): incorpora información sobre
relaciones entre parámetros.
Pr( Data | q ) × Pr(q )
Pr(q | Data ) =
Pr( Data )
Dist. a
posteriori
Inferencia bayesiana conjugada.
Ejemplo:
Supongamos que q representa un porcentaje (p.e. el
parámetro de una binomial) y que estamos interesados en
su estimación:
•0
£q£1
•Verosimilitud Binomial: los datos corresponden a: “k”
éxitos de un número fijo, N, de pacientes.
Ejemplo (continuación):
La verosimilitud tiene una expresión del tipo:
æNö
[ k | q , N ] = ç ÷ × (q
è k ø
) × (1 - q )
k
N -k
<< Dado q, la verosimilitud indica la probabilidad
que el modelo otorga a que en N observaciones k
hayan ocurrido con “éxito” >>
Elementos del análisis bayesiano con FirstBayes
Ejemplo (continuación):
Información a priori: Distribución Beta
[q | a,b ] ~ Beta(a,b)
G(a + b) a -1
[q | a, b] =
q (1 - q )b -1
G(a )G(b)
(a>0, b>0)
Ventajas de la distribución Beta
1. El rango de variación es el de un porcentaje:
[0,1]
2. Tiene una relación natural (“conjugada”) con
el modelo binomial.
3. Es muy flexible: admite una grandísima
variedad de formas (Homberg, 1995).
5
Beta(.25, .25)
4
3
Beta(3, 7)
2
Beta(1, 1)
1
0
0
0.2
0.4
0.6
0.8
1
Homberg:
4. Fácil de asignar, “elicitar”:
Media= a/(a+b)
Varianza= ab/((a+b)^2(a+b+1))
Moda=(a-1)/(a+b-2)
Procedimiento de actualización de nuestros
juicios sobre la proporción de pacientes
[ Data | q ] × [q ]
[q | Data ] =
[ Data ]
El modelo Beta-Binomial
Inf. a priori:
[q ]
Beta (a,b)
Verosimilitud k:
[k | q, N ]
Binomial (q, N )
Posteriori:
[q | k, N ]
Beta (a+k, b+(N-k))
Propiedad de conjugación: Posteriori y priori
pertenecen a la misma familia.
¿Qué “a priori” debemos utilizar?
1 Observaciones previas relevantes
Atribuirle el mismo peso que a los nuevos datos.
Utilizar “a priori” con igual media atenuando el
tamaño muestral (Ej. 100 observaciones previas con
30 éxitos, ponderar un 10% del peso - Beta (3,7)).
2 Priori “no informativa”
No exista información previa
Minimizar el peso de la a priori
Beta(0,0), Beta(0.25,0.25), Beta(1,1)
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
Computación en Análisis
Bayesiano:
Métodos MCMC
(Markov Chain Monte-Carlo).
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
Cantidad a posteriori de interés:
E[g(q)|x] =
ò
g(q)p(q|x)dq, donde
Q
q=(q1, . . ., qp)ÎQ,
p(q|x) =
p(q)f(x|q)
ò
p(q)f(x|q)dq
Q
é E[g(q)|x] =
ò
g(q)p(q)f(x|q)dq
Q
ò
p(q)f(x|q)dq
Q
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
Por ejemplo:
g(q) = q Þ media a posteriori
g(q) =
r s
qi·qj Þ
momentos a posteriori
g(q) = (qi-E[qi|x])(qj-E[qj|x]) Þ covarianza entre
qi, qj a posteriori
g(q) = I{qÎA} Þ prob. a posteriori de un conjunto
g(q) = f(z|q) Þ predictiva de z a posteriori
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
Pero generalmente,
1) p(q|x) =
p(q)f(x|q)
ò
p(q)f(x|q)dq
Q
no adopta una forma funcional conocida (salvo
análisis conjugado), la evaluación del denominador
generalmente no es posible de forma analítica.
2) E[g(q)|x] implica nuevamente integrales
analíticamente no factibles.
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
. . . Y se hace necesario el tratamiento numérico,
aproximado del problema, (salvo análisis conjugado
y familias exponenciales).
Agravado en muchos casos porque la dimensión del
espacio paramétrico es mayor que 1, lo que implica
además la integración sobre espacios de
dimensiones que pueden ser elevadas .
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
Ejemplo 1.
Sup. x1, x2, . . ., xn iid ~ N(m, s²= h-1), para
m ~ N(a0, b0-1), h=1/s²~ G(n0/2, s0/2), q=(m, h),
p(m, h|x) µ
h((n+n )/2-1) exp{(-1/2)[b0(m-a0)2 +s0h+håi(xi-m)²]}
0
“no tiene una forma exacta”
¿cómo calcular, por ejemplo, la cantidad?
E[m|x] =
¥ ¥
òò
m·p(m, h|x)dmdh
0 -¥
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
• En cualquier caso, nos enfrentamos a complicados
problemas de integración que han constituido
la principal dificultad del análisis bayesiano.
• Distintos métodos de integración numérica,
mediante
aproximaciones
determinísticas,
ver Bernardo y Smith, 1994; O’ Hagan, 1994 o
Robert y Casella, 1999).
• Pero estos métodos no tienen en cuenta la
naturaleza aleatoria del problema, que las funciones
implicadas sean densidades probabilísticas . . .
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
§ Si fuera posible generar directamente muestras
independientes de p(q|x) mediante algún método
aleatorio de simulación, esto conduciría a la
obtención de la cantidad a posteriori de interés, . . .
(el Teorema Central del Límite aseguraría la
convergencia de las cantidades muestrales a las
cantidades de interés).
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
Ejemplo 2. Dadas 1000 observ. de p(q|x),
es posible:
ü calcular la media muestral para estimar E[p(q|x)]
ü calcular la var. muestral para estimar Var[p(q|x)]
ü ordenar la muestra y buscar el valor no 250
(1er cuartil), o el valor no 500 (mediana), . . .
ü obtener la proporción de la muestra mayor que q0
(Prob{q > q0})
·
·
·
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
1
2
3
4
5
6
7
8
9
10
0.1103
0.05148
0.6527
0.004283
0.02866
0.1345
0.3636
0.2629
0.1732
0.3267
.
.
.
media muestral = 0.140097258
varianza muestral = 0.025131898
mediana = 0.08161
1er cuartil = 0.02092
262 mayores que q0 = 0.2,
(Prob{q > 0.2}=0.262).
moda = 0.05148
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
600
400
200
0.75
0.9
0.78
0.93
0.6
0.45
0.3
0.15
0
0
Frecuencia
Histograma
Theta
0.63
0.48
0.33
0.18
500
400
300
200
100
0
0.03
Frecuencia
Perfil
Theta
F
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
Pero en muchos casos no es posible la simulación
directa de muestras independientes para p(q|x) . . .
Sin embargo, puede ser posible simular muestras
con algún tipo de dependencia, que converjan
(bajo ciertas condiciones de regularidad) a la
distribución de interés p(q|x),
Ø construir mediante simulación Monte Carlo una
determinada Cadena de Markov . . .
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
Desde hace aproximadamente 12-15 años, los
métodos basados en simulación Monte Carlo mediante
Cadenas de
Markov,
MCMC,
permiten
la
resolución de problemas que hasta entonces no eran
analíticamente tratables y que precisaban distintas
aproximaciones numéricas para las integrales
implicadas.
Estos métodos permiten muestrear la distribución a
posteriori, aunque ésta sea desconocida, gracias a la
construcción de una cadena de Markov cuya
distribución estacionaria sea, precisamente p(q|x).
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
“. . .Muestrear la distribución a posteriori y
calcular la cantidad a posteriori de interés
mediante MCMC son los retos más importantes
de la computación bayesiana más avanzada .”
(Chen, Shao e Ibrahin, 2000).
“MCMC es, esencialmente, integración Monte
Carlo, haciendo correr por largo tiempo una
inteligentemente construida cadena de Markov .”
(Gilks, Richardson y Spiegelhalter, 1996).
Explicación de cómo funciona muestreo de Gibbs
y Algoritmo de Metropolis Hastings
http://www.dpye.iimas.unam.mx/eduardo/MCB/nod
e25.html
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
Algunos aspectos teóricos.
Una cadena de Markov es una sucesión de vv. aa.,
{X1, X2, . . ., Xt, . . . } tal que
"t³ 0, Xt+1 sólo depende del estado actual,
Xt+1 es muestreado de p(×|Xt), es decir:
p(Xt+1|Xt, Xt-1, . . ., X1)=p(Xt+1|Xt).
p(×|×) es la probabilidad de transición de la cadena.
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
¿cómo diseñar la cadena, {q(t)}?
Se trata de muestrear iterativamente a partir de
distribuciones apropiadas (no se puede muestrear
directamente de p(q|x)).
ß Principales métodos de muestreo :
•Muestreo de Gibbs
•Algoritmo de Metrópolis-Hastings
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
•Muestreo de Gibbs
Ü Orígenes:
Grenader(1983), Geman y Geman (1984).
Ü En AB:
Gelfand y Smith (1990), George(1992), Robert y Casella (1999).
Aunque p(q|x)=p((q1, . . ., qp)|x) no sea estándar,
puede que sí lo sean las condicionadas a posteriori
de cada qi respecto al resto,
p(qi|q1, . . . qi-1, qi+1, . . ., qp, x) ) = p(qi|q-i, x), para
q-i = (q1, . . . qi-1, qi+1, . . ., qp).
(“full conditional”, ¡es una distribución univariante!).
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
Esquema general:
•Paso 0. Valores iniciales : q(0) = (q01, . . ., q0p)
•Paso 1. Para obtener q(1) = (q11, . . ., q1p):
se muestrea q11 de p(q1|x, q02, . . ., q0p)
se muestrea q12 de p(q2|x, q11, q03, . . ., q0p)
se muestrea q13 de p(q3|x, q11, q12, q04, . . ., q0p)
...
se muestrea q1p de p(qp|x, q11, . . ., q1p-1).
·
·
·
•Paso k. Actualizar q(k) = (qk1, . . ., qkp)
a partir de q(k-1) .
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
Ejemplo 3.
Sup. x1, x2, . . ., xn iid ~ N(m, s²= h-1), para
m~ N(a0, b0-1), h=1/s²~ G(n0/2, s0/2), q=(m, h), con
p(m, h|x) no estándar, pero las condicionadas se
obtienen de :
p(m|h, x) =
p(m, h|x)
p(h|x)
p(h|m, x) =
p(m, h|x)
p(m|x)
=
p(m, h|x)
òp(m, h|x)dm
=
p(m, h|x)
òp(m, h|x)dh
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
de donde,
a0b0 +hn
× p(m|h, x) µ exp{ -1 (b0+nh)(m 2
a0b0 +hn
~ N(
,
b0+nh
1
b0+nh
b0+nh
)
n0+n
-1
2
× p(h|m, x) µ h
(s0+åi(xi-m)²)
exp{·h}
2
~ G( n0+n , (s0+åi(xi-m)²)
2
2
)
)2 }
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
muestreo de Gibbs:
•Paso 0. Valores iniciales : q(0) = (m0, h0)
•Paso 1. Para obtener q(1) = (m1, h1):
se muestrea m1 de p(m|h=h0, x),
(se genera un valor de la distr. Normal)
se muestrea h1 de p(h|m= m1, x),
(se genera un valor de la distr. Gamma)
se actualiza (m0, h0) a (m1, h1),
·
·
·
•Paso k. Actualizar q(k) = (mk, hk), a partir de q(k-1) .
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
ß la serie q(0), q(1), . . .., q(N),
puede analizarse casi como una muestra independiente
de p(q|x), y por tanto, cantidades muestrales estimarán las
cantidades a posteriori respectivas (media muestral para
la media a posteriori, cualquier momento o percentil
muestral para el correspondiente a posteriori, o la curva
descrita por el histograma de valores para un parámetro qi
aproxima la forma de la curva de la distribución marginal
p(qi|x)).
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
¿por qué “casi”?
Puede presentarse una fuerte correlación entre las
realizaciones muestrales, que puede corregirse
desechando las ‘m’ primeras: “muestra burn in”,
q(0), q(1), . . ., q(m), q(m+1), . . ., q(N).
”burn in”
análisis muestral
s²
* El valor del error,
, el análisis de la traza de
N-m
la serie (gráfica de los valores muestrales), de los
coeficientes de autocorrelación de la misma pueden
ayudar a determinar ‘m’ y ‘N’, (no es fácil).
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
ß En el ejemplo 3, se obtiene, para m :
node
mu
mean
0.1266
sd
0.1021
MC error 2.5%
0.001096
-0.06959
mu sample: 9000
median
97.5%
start
sample
0.1265
0.3292
1001
9000
mu
4.0
3.0
2.0
1.0
0.0
1.0
0.5
0.0
-0.5
-1.0
-0.5
0.0
0.25
mu
0.6
0.4
0.2
0.0
-0.2
-0.4
0
20
Histograma
40
lag
Coef. de autocorrelación
Traza de la serie
10800 10850 10900 10950
iteration
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
ß Y para h:
node
mean
h
0.936
sd
0.1328
MC error 2.5%
0.001303
0.6964
h sample: 9000
median
97.5%
start
sample
0.9287
1.213
1001
9000
h
4.0
3.0
2.0
1.0
0.0
1.0
0.5
0.0
-0.5
-1.0
0.5
0.75
1.0
1.25
h
0
20
lag
Histograma
1.75
1.5
1.25
1.0
0.75
0.5
40
Coef. de autocorrelación
Traza de la serie
10800 10850 10900 10950
iteration
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
• Algoritmo de Metrópolis-Hastings
Ü Orígenes:
Metropolis et al (1953) y Hastings (1970).
Ü Más recientes:
Tierney(1994), Chib y Greenberg (1995), Robert y Casella (1999)
Para construir la cadena {q(t)}, las prob. de
transición p(q(t+1)|q(t)) vendrán dadas por una distr.
arbitraria, (distribución generadora de candidatos),
q(q,q’) tal que òq(q,q’)dq’ =1,
dados el valor actual q, y el valor candidato, q’.
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
• Variables auxiliares (data augmentation)
Ü (Ver Tanner y Wong (1987).)
La introducción de parámetros auxiliares puede
simplificar el problema:
p(q|x) Ô p(q, l|x)
de simulación más sencilla
Þ se simula p(q, l|x) y sólo se usan las muestras
para q.
/Ejemplo 5.
Sup. x1, x2, . . ., xn iid ~ St(m, h, a0), para
m ~ N(a0, b0-1), h=1/s²~ G(n0/2, s0/2), q=(m, h)
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
Õ reparametrizar la t de Student como una mixtura
de distribuciones normales:
xi ~ N (m, (lih)-1), para li ~ G(a0/2, a0/2), i=1, . . ., n
Þ f(xi|m, h) ~ St(m, h, a0), i=1, . . ., n, por tanto
q=(m, h) Ô (q, l) = (m, h, l1, l2, . . ., ln), f(x|q) y p(q|x)
son las mismas, pero las condicionadas son ahora:
• p(m|h, l, x) ~ Normal
• p(h|m, l, x) ~ Gamma
• p(l|m, h, x) ~ producto de Gammas.
Þ se puede aplicar muestreo de Gibbs.
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
Software:
WinBUGS.
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
: El Proyecto BUGS:
Spiegelhalter, D., Thomas, A. y Best, N.
MRC Biostatistics Unit, Institute of Public Health,
Cambrigde & Department of Epidemiology and
Public Health, Imperial College School of Medicine at
St. Mary’s Hospital.
8 http://www.mrc-bsu.cam.ac.uk/bugs
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
BUGS, Bayesian Inference Using Gibbs Sampling es
un software diseñado para el análisis de modelos
bayesianos usando MCMC.
WinBUGS, es su versión Windows, que incorpora un
menú de representación gráfica del modelo, Doodle,
y utiliza Metropolis-Hastings.
8 la última versión, 1.4.3, puede obtenerse desde la
dirección web, así como el manual, numerosos
ejemplos, enlaces interesantes, y la subscripción a la
lista de correo de usuarios.
ANTES CLAVE ANNUAL, AHORA CLAVE UNIVERSAL
EJERCICIOS DOODLE Y OTROS SENCILLOS EN
http://wwwusers.york.ac.uk/~pml1/bayes/winbugsinfo/ra
ab.htm
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
8 Para empezar a trabajar con un modelo:
formular el modelo
crear el doodle
cargar datos y valores iniciales
simulación
Analizar los resultados
burn in
editor,hoja
de cálculo
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
Ventajas:
- Proporciona inferencias más naturales y útiles que la de
los métodos frecuentistas.
-Facilitan el uso de mayor información, obteniendo
resultados más robustos.
-Puede afrontar problemas más complejos.
-Son ideales para problemas de toma de decisión.
-Son más transparentes en relación a los supuestos
empleados en el proceso de inferencia.
WIN-BUGS: un software para el análisis de modelos
bayesianos usando MCMC)
Desventajas:
-Incorpora un elemento de subjetividad no presente en el
análisis clásico.
-En la práctica, la información a priori es difícil de
especificar (elicitar).
-Los métodos bayesianos son más complejos que los
clásicos, y el software disponible es escaso.
Saghir A. Bashir
Amgen Ltd, Cambridge, U.K.
Email: [email protected]
4th January 2001
Outline
n
n
n
n
n
n
n
Introduction
BUGS and WinBUGS
Graphical Models
DoodleBUGS
Example - Simulation
Power calculation
Summary
Introduction
n
Bayesian Inference Using Gibbs Sampling
q
BUGS
n
Analysis of Complex Models
n
Bayesian Methods
n
Markov Chain Monte Carlo Integration
q
Useful when no closed form exists
Classic BUGS
n
Declarative Language
n
n
Similar to Splus
Complex Statistical Models
n
n
n
Missing data
Measurement Error
No closed form for Likelihood
n
Graphical Modelling
n
Flexible compared to approximations
WinBUGS
n
Similar to Classic BUGS
q
n
Plus new methodological developments
Graphical representation of model
q
DoodleBUGS
n
Menu Control of session
n
Cut and paste to other packages
BUGS and WinBUGS
n
No data management facility
q
n
“Easy” interface with other packages
q
q
n
Why reinvent the wheel?
R and Splus
Stata (S. Bashir)
Simple analysis of output
Working with BUGS
Prepare
Data
BUGS
Analysis
Output
Analysis
Editor
Stats package
Spread sheet
WinBUGS
BUGS
R/Splus
STATA
Graphical Models
n
Complex multivariate probability models
q
q
n
Representation
Visualisation
Graphs...
q
q
q
simplify complex models
communicate structure of the problem
provide basis for computation
WinBUGS
n
BUGS language
n
DoodleBUGS
n
n
Used for the purposed of this Demo.
WinBUGS is currently free from:
n
n
http://www.mrc-bsu.cam.ac.uk/bugs/
Register to get full version access
DoodleBUGS
n
n
Start WinBUGS
Select “Doodle” from menu bar
DoodleBUGS - Basics
n
Select “New…”
n
Press “ok”
You have a window to “Doodle” in.
n
Nodes
n
Creating a node
q
n
Mouse click in Doodle Window
Deleting a node: CTRL + Del
Node Types
n
Nodes can be
q
Stochastic
q
Logical
q
Constant (rectangle)
Example - Simulation
n
Let
q
q
r1 ~ Bin (0.25, 250)
r2 ~ Bin (0.35, 150)
n
Calculate p: common proportion for r1 & r2
n
p = (r1+r2)/400
n
Classical p = 0.2875
DoodleBUGS
n
Start with r1 ~ Bin(0.25, 250)
(stochastic node)
DoodleBUGS
n
Add r2 ~ Bin(0.35, 150)
(stochastic node)
Logical Nodes
n
Add p as a logical node
q
To define a logical node click on “type” for choices.
Logical Functions
n
Add “edges” for the logical relationship
q
Whilst node p is highlighted, CTRL + click in “parent
nodes” r1 and r2 (hollow arrows Þ logical function)
Stochastic Nodes
n
Stochastic dependence
q
q
q
p1 ~ N(0.25, 0.000026)
size1 = 250 (constant)
(i.e., p1 ~ [0.24, 0.26])
Single arrows for stochastic dependencies
Normal Distribution
n
Note the Normal distribution in BUGS is defined as
N (mean, precision) where precision = 1/variance
q
Note that we can define upper and lower bounds so that
the proportion is between 0 and 1.
DoodleBUGS Model
n
Let us add these stochastic dependencies to
our “logical” model
DoodleBUGS Model
n
What is our model?
n
r1 ~ Bin (p1, size1)
n
p1 ~ N (0.25, 0.000026)
n
size1 = 250
n
r2 ~ Bin (p2, size2)
n
p2 ~ N (0.35, 0.000026)
n
size2 = 150
WinBUGS Modelling
n
Running our model in WinBUGS
q
Create a New document
n
n
Menu bar - File - New
A New document window will appear
WinBUGS Document
n
Select your Doodle from your Doodle Window
q
n
Copy your Doodle
q
n
Menu bar - Edit - Select Document
Menu bar - Edit - Copy
Paste it into your New Document
q
Menu bar - Edit - Paste
Model Data
n
Before running we need to give BUGS some
data
n
Type list(size1=250, size2=150) at the top (or the
bottom) of your new document.
Running BUGS
n
Use “Specification...” from the “Model” option
on Menu Bar to run BUGS
Running BUGS
Check
Model
Checks
Syntax
Load
Data
Compile
Model
Initial
Values
Start
Sampler
Update
Sampler
Check Model
n
Select the Doodle (note the hairy boarder)
n
Menu bar - Model - Check model
Note the message in bottom left hand
corner
n
Load Data
n
Highlight the word “list”
n
Menu bar - Model - Data
Bottom left hand corner
n
Compiling the Model
n
n
Menu bar - Model - Compile
Bottom left hand corner
Load Initial Values
n
n
Menu bar - Model - Gen inits
Bottom left hand side
Update the Model
n
Menu bar - Model - Update
n
1000 MCMC updates to be carried out.
Burn In
n
Model has been updated
n
MCMC run did not store any data.
q
n
Used for the “burn in”
Store values by “monitoring” them to
q
q
Draw inferences
Monitor MCMC run
Monitoring Nodes
n
Monitoring p our parameter of interest
Menu bar - Inference - Samples...
n
Sample Monitor Tool
n
Monitoring Nodes
n
n
Type name of node “p” to monitor
Press “set”
Update & Monitor
n
Update model again
n
1000 values “monitored” of the MCMC run for
p
Summary Statistics
n
Summary statistics
Select “p” from the Sample Monitor Tool
Press “stats” (Sample Monitor Tool)
n
Node statistics window
n
n
Summary Statistics
n
n
n
n
Mean = 0.2873
Median = 0.285
(usually more stable)
95% credible interval (0.245, 0.335)
MCMC run size 1000
MCMC Time Series
n
Press “History” in Sample Monitor Tool
Kernel Density
n
Press “Density” in the Sample Monitor Tool
Kernel Density
n
Increase monitored values to 25,000
Plates
n
Creating a plate
q
CTRL + mouse click in Doodle Window
q
Deleting a plate: CTRL + Del
Plates
n
Allow more complex structure, e.g.,
q
q
n
Repeated measures
Hierarchical models
Extend our example to calculate power
q
q
q
q
r1 and r2 from Binomial distribution
Simulte r1 and r2 100 times per “update”
Calculate test statistic
Count number of times it falls in critical region
Test Statistic
n
H0: p1 = p2 = p
q
n
p1 = r1/size1 &
Test statistic
vs
H1: p1 < p2
p2 = r2/size2
(p2 - p1)
s.d.(p)
s.d.(p) = Ö(p(1-p)(1/size1 + 1/size2))
Power
n
Data
q
list(prop1=.25, prop2=.35,
size1=250,size2=150, N=100,
alpha.val=1.96)
n
Results
n
Power = 57%
(47%, 67%)
Power - History
Power - Density
Updates
n
Updating - Bottom left hand corner
n
After updates finish
Summary
n
BUGS is a power tool
q
q
n
Graphical Models
q
q
n
Bayesian Analysis
Simulation Tool
Doodle BUGS
Simple representation of model
Easy to use!
•EJEMPLO DE REGRESION EN ECOLOGIA
•EJEMPLOS EN WINBUGS (HELP)
Documentos relacionados
Descargar