Regression priors का visualization
पिछले अभ्यास में, आपने Bayesian regression मॉडल में weight \(Y\) बनाम height \(X\) के लिए प्रत्येक पैरामीटर (\(a\), \(b\), \(s\)) के 10,000 samples simulate किए थे: \(Y \sim N(m, s^2)\) जहाँ mean \(m = a + bX\) है. samples की हर पंक्ति में मौजूद \(a\), \(b\), और \(s\) मान एक prior संभाव्य regression परिदृश्य का प्रतिनिधित्व करते हैं. इन prior परिदृश्यों के दायरे को समझने के लिए, आप पहले 12 prior पैरामीटर सेट \(a\), \(b\), और \(s\) में से प्रत्येक से height और weight के 50-50 जोड़े simulate करेंगे.
यह अभ्यास पाठ्यक्रम का हिस्सा है
RJAGS के साथ Bayesian Modeling
अभ्यास निर्देश
- एक data frame
prior_simulationबनाएँ, जिसमेंsamplesके पहले 12 prior पैरामीटर सेट्स कीn = 50प्रतिलिपियाँ शामिल हों (कुल 600 पंक्तियाँ!). - प्रत्येक 600
prior_simulationपंक्तियों के लिए:- \(N(170, 10^2)\) मॉडल से एक
heightमान simulate करें. - \(N(a + b X, s^2)\) से एक
weightमान simulate करें, जहाँ \(X\) height है और \((a,b,s)\) वही prior पैरामीटर सेट है.
- \(N(170, 10^2)\) मॉडल से एक
- अब आपके पास 12 में से प्रत्येक पैरामीटर सेट के लिए 50 simulated
heightऔरweightजोड़े हैं.ggplot()का उपयोग करके प्रत्येकsetof parameter values के लिए इन 50 जोड़ों का एक scatterplot बनाइए. ध्यान रखें कि y-axis परweightरखें!
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Replicate the first 12 parameter sets 50 times each
prior_scenarios_rep <- bind_rows(replicate(n = ___, expr = samples[1:12, ], simplify = FALSE))
# Simulate 50 height & weight data points for each parameter set
prior_simulation <- prior_scenarios_rep %>%
mutate(height = rnorm(n = 600, mean = ___, sd = ___)) %>%
mutate(weight = rnorm(n = 600, mean = ___, sd = ___))
# Plot the simulated data & regression model for each parameter set
ggplot(prior_simulation, aes(x = ___, y = ___)) +
geom_point() +
geom_smooth(method = "lm", se = FALSE, size = 0.75) +
facet_wrap(~ set)