Estimări punctuale posterioare
Reamintește-ți funcția de plauzibilitate a modelului de regresie bayesiană a greutății \(Y\) în funcție de înălțimea \(X\): \(Y \sim N(m, s^2)\) unde \(m = a + b X\). O simulare RJAGS cu 100.000 de iterații a distribuției posterioare, weight_sim_big, se află în spațiul tău de lucru, împreună cu un data frame al rezultatelor lanțului Markov:
> head(weight_chains, 2)
a b s iter
1 -113.9029 1.072505 8.772007 1
2 -115.0644 1.077914 8.986393 2
Mediale posterioare ale parametrilor de intercept și pantă, \(a\) și \(b\), reflectă tendința medie posterioară a relației dintre greutate și înălțime. În schimb, distribuțiile posterioare complete ale lui \(a\) și \(b\) reflectă intervalul de valori plauzibile ale parametrilor, adică incertitudinea posterioară în privința tendinței. Vei analiza mai jos atât tendința, cât și incertitudinea asociată acesteia. Datele bdims sunt disponibile în spațiul tău de lucru.
Acest exercițiu face parte din cursul
Modelare bayesiană cu RJAGS
Instrucțiuni pentru exercițiu
- Obține statistici
summary()ale lanțurilorweight_sim_big. - Media posterioară a lui \(b\) este raportată în Tabelul 1 al funcției
summary(). Folosește datele brute dinweight_chainspentru a verifica acest calcul. - Construiește un grafic de dispersie al datelor
wgtfață dehgtdinbdims. Foloseștegeom_abline()pentru a suprapune tendința medie posterioară. - Construiește un alt grafic de dispersie al lui
wgtfață dehgt. Suprapune cele 20 de drepte de regresie definite de primele 20 de seturi de valori ale parametrilor \(a\) și \(b\) dinweight_chains.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# Summarize the posterior Markov chains
# Calculate the estimated posterior mean of b
mean(___)
# Plot the posterior mean regression model
ggplot(bdims, aes(x = ___, y = ___)) +
geom_point() +
geom_abline(intercept = mean(___), slope = mean(___), color = "red")
# Visualize the range of 20 posterior regression models
ggplot(bdims, aes(x = ___, y = ___)) +
geom_point() +
geom_abline(intercept = ___[1:20], slope = ___[1:20], color = "gray", size = 0.25)