Kom igångKom igång gratis

Posteriora punktskattningar

Kom ihåg sannolikhetsfunktionen för den bayesianska regressionsmodellen av vikt \(Y\) som funktion av längd \(X\): \(Y \sim N(m, s^2)\) där \(m = a + b X\). En RJAGS-simulering med 100 000 iterationer av posteriorn, weight_sim_big, finns i din arbetsmiljö tillsammans med en dataram med Markovkedjans utdata:

> head(weight_chains, 2)
          a        b        s iter
1 -113.9029 1.072505 8.772007    1
2 -115.0644 1.077914 8.986393    2

De posteriora medelvärdena för intercept- och lutningsparametrarna \(a\) och \(b\) speglar den posteriora medeltrenden i sambandet mellan vikt och längd. De fullständiga posteriorerna för \(a\) och \(b\) speglar däremot spannet av rimliga parametervärden – det vill säga den posteriora osäkerheten kring trenden. Nedan undersöker du trenden och osäkerheten i den. Datamängden bdims finns i din arbetsmiljö.

Den här övningen är en del av kursen

Bayesiansk modellering med RJAGS

Visa kurs

Övningsinstruktioner

  • Hämta summary()-statistik för weight_sim_big-kedjorna.
  • Det posteriora medelvärdet för \(b\) visas i Tabell 1 i summary(). Använd weight_chains direkt för att verifiera beräkningen.
  • Konstruera ett spridningsdiagram över wgt mot hgt i bdims. Använd geom_abline() för att lägga till den posteriora medeltrendlinjen.
  • Konstruera ytterligare ett spridningsdiagram över wgt mot hgt. Lägg till de 20 regressionslinjer som definieras av de första 20 uppsättningarna av parametervärden för \(a\) och \(b\) i weight_chains.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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)
Redigera och kör kod