सामान्य तौर पर, मैं दृढ़ता से सुझाव दूंगा कि आप एक वास्तविक लागू बायेसियन विश्लेषण के लिए अपने खुद के MCMC कोडिंग नहीं करें। यह काम और समय दोनों का एक अच्छा सौदा है और कोड में कीड़े को पेश करने की बहुत संभावना है। स्टेन जैसे ब्लैकबॉक्स नमूने पहले से ही बहुत परिष्कृत नमूने का उपयोग करते हैं। मेरा विश्वास करो, आप केवल एक विश्लेषण के लिए इस कैलिबर का एक नमूना कोड नहीं करेंगे!
ऐसे विशेष मामले हैं जिनमें यह पर्याप्त नहीं होगा। उदाहरण के लिए, यदि आपको वास्तविक समय में एक विश्लेषण करने की आवश्यकता है (यानी आने वाले डेटा पर आधारित कंप्यूटर निर्णय), तो ये कार्यक्रम एक अच्छा विचार नहीं होगा। इसका कारण यह है कि स्टेन को C ++ कोड को संकलित करने की आवश्यकता है, जो अपेक्षाकृत सरल मॉडल के लिए पहले से तैयार किए गए नमूने को चलाने की तुलना में काफी अधिक समय ले सकता है। उस स्थिति में, आप अपना कोड लिखना चाह सकते हैं। इसके अलावा, मेरा मानना है कि ऐसे विशेष मामले हैं जहां स्टेन जैसे पैकेज बहुत खराब तरीके से काम करते हैं, जैसे कि गैर-गाऊसी राज्य-अंतरिक्ष मॉडल (पूर्ण प्रकटीकरण: मेरा मानना है कि स्टेन इस मामले में खराब प्रदर्शन करता है, लेकिन नहीं जानता)। उस स्थिति में, कस्टम MCMC को लागू करने के लिए इसके लायक हो सकता है। लेकिन यह अपवाद है, नियम नहीं!
काफी ईमानदार होने के लिए, मुझे लगता है कि ज्यादातर शोधकर्ता एक विश्लेषण के लिए नमूना लिखते हैं (और ऐसा होता है, मैंने इसे देखा है) ऐसा इसलिए करते हैं क्योंकि वे अपने स्वयं के नमूने लिखना पसंद करते हैं। बहुत कम से कम, मैं कह सकता हूं कि मैं उस श्रेणी में आता हूं (यानी मैं निराश हूं कि अपना खुद का नमूना लिखना चीजों को करने का सबसे अच्छा तरीका नहीं है)।
इसके अलावा, जबकि किसी एक विश्लेषण के लिए अपना स्वयं का नमूना लिखने का कोई मतलब नहीं है , यह विश्लेषण के एक वर्ग के लिए अपना खुद का कोड लिखने के लिए बहुत कुछ समझ सकता है। जेएजी, स्टेन, आदि होने के कारण ब्लैक-बॉक्स नमूने हैं, आप किसी दिए गए मॉडल के लिए विशेषज्ञता प्राप्त करके चीजों को हमेशा तेज बना सकते हैं, हालांकि सुधार की मात्रा मॉडल पर निर्भर है। लेकिन जमीन से एक अत्यंत कुशल नमूना लिखना शायद 10-1,000 घंटे का काम है, अनुभव, मॉडल जटिलता आदि पर निर्भर करता है। यदि आप बायेसियन विधियों में शोध कर रहे हैं या सांख्यिकीय सॉफ्टवेयर लिख रहे हैं, तो यह ठीक है; यह तुम्हारा काम है लेकिन अगर आपका बॉस कहता है "अरे, तो क्या आप इस दोहराया उपायों के डेटा सेट का विश्लेषण कर सकते हैं?" और आप एक कुशल नमूना लिखने में 250 घंटे बिताते हैं, आपका बॉस परेशान हो सकता है। इसके विपरीत, आप इस मॉडल को स्टेन में कह सकते हैं, कह सकते हैं, 2 घंटे, और कुशल नमूना द्वारा प्राप्त 1 मिनट के रन समय के बजाय 2 मिनट का रन समय था।