मैंने अभी स्टेन का उपयोग करना सीखना शुरू किया है और rstan
। जब तक मैं हमेशा इस बारे में भ्रमित नहीं होता कि JAGS / BUGS ने कैसे काम किया है, तो मैंने सोचा कि आपको हमेशा मॉडल से तैयार किए जाने वाले प्रत्येक पैरामीटर के लिए किसी न किसी प्रकार के पूर्व वितरण को परिभाषित करना होगा। ऐसा प्रतीत होता है कि आपको स्टेन में इसके प्रलेखन के आधार पर ऐसा करने की आवश्यकता नहीं है। यहाँ एक नमूना मॉडल है जो वे यहाँ देते हैं ।
data {
int<lower=0> J; // number of schools
real y[J]; // estimated treatment effects
real<lower=0> sigma[J]; // s.e. of effect estimates
}
parameters {
real theta[J];
real mu;
real<lower=0> tau;
}
model {
theta ~ normal(mu, tau);
y ~ normal(theta, sigma);
}
न तो mu
है और न ही tau
परिभाषित महंतों की है। मेरे कुछ जेएजीएस मॉडल को स्टेन में परिवर्तित करने में, मैंने पाया है कि वे काम करते हैं अगर मैं कई, या अधिकांश, अपरिभाषित पादरियों के साथ मापदंडों को छोड़ देता हूं।
समस्या यह है कि मुझे समझ में नहीं आता है कि स्टेन क्या कर रहा है जब मेरे पास परिभाषित पुजारियों के बिना पैरामीटर हैं। क्या यह समान वितरण की तरह कुछ डिफॉल्ट कर रहा है? क्या यह एचएमसी के विशेष गुणों में से एक है, कि इसे हर पैरामीटर के लिए एक परिभाषित पूर्व की आवश्यकता नहीं है?