एक बंधे हुए पैरामीटर स्पेस पर MCMC?


18

मैं एक समस्या पर MCMC लागू करने की कोशिश कर रहा हूं, लेकिन मेरे पुजारी (मेरे मामले में वे )) एक क्षेत्र तक सीमित हैं? क्या मैं सामान्य MCMC का उपयोग कर सकता हूं और उन नमूनों को अनदेखा कर सकता हूं जो प्रतिबंधित क्षेत्र के बाहर आते हैं (जो कि मेरे मामले में [0,1] ^ 2) है, अर्थात जब संक्रमण नए (प्रतिबंधित) क्षेत्र से बाहर हो जाता है तो संक्रमण कार्य का पुन: उपयोग करता है?α[0,1],β[0,1]



@ ज़ेन, मुझे पूरा यकीन नहीं है, लेकिन ज़ियान द्वारा सुझाया गया जवाब यह है कि सब्सक्राइब करें, लेकिन एमएच का उपयोग करने के बजाय, गिब्स सैम्पलर का उपयोग करें और दोहराएं यदि आयाम के मूल्यों में से एक सीमा से अधिक है, तो क्या मैं सही हूं?
कप

1
यदि एमएच पैरामीटर स्पेस के बाहर कुछ प्रस्तावित करता है, तो स्वीकृति संभावना केवल सेट होती है और सब कुछ ठीक काम करता है। मुझे लगता है कि एमएच केवल को रूप में व्याख्या करता है ( माप सिद्धांत में अभिव्यक्ति )। 0 / 0 0 0 = 000/000=0
लड़का

@ गुय, लेकिन ज़ियान के पृष्ठ (ज़ेन द्वारा लिंक से ऊपर) पर चर्चा के अनुसार, ऐसा लगता है कि गिब्स की किसी भी कारण का उल्लेख किए बिना एक श्रेष्ठता है!
19

1
@ कैपिटर मैं उसे यह कहते हुए नहीं देखता। मुझे लगता है कि अनुमान है कि गेब्रियल मेट्रोपोलिस के भीतर-गिब्स कर रहा था।
लड़का

जवाबों:


27

आपके पास कई अच्छे, अधिक-या-कम सरल, विकल्प हैं। आपकी वर्दी पहले उन्हें सरल बनाने में मदद करती है।

विकल्प 1: स्वतंत्रता नमूना। आप अपने प्रस्ताव वितरण को इकाई वर्ग पर एक समान वितरण के बराबर सेट कर सकते हैं, जो सुनिश्चित करता है कि नमूने प्रतिबंधित क्षेत्र के बाहर नहीं गिरेंगे, जैसा कि आप इसे कहते हैं। संभावित नकारात्मक पक्ष: यदि इकाई वर्ग के बहुत छोटे क्षेत्र में पीछे की ओर ध्यान केंद्रित किया जाता है, तो आपके पास बहुत कम स्वीकृति दर हो सकती है। OTOH, U (0,1) वितरण की तुलना में यादृच्छिक संख्याओं को तेज़ी से उत्पन्न करना कठिन है। संभावित उल्टा: आपके लिए कम काम।

विकल्प 2: अपने मापदंडों को किसी ऐसी चीज़ में बदलना जो कि सीमाबद्ध न हो, रूपांतरित मापदंडों के लिए प्रस्ताव बनाना, फिर संभावना कार्यों में उपयोग के लिए मापदंडों को वापस बदलना। ध्यान दें कि इस मामले में पूर्व परिवर्तित मापदंडों पर होने जा रहा है, क्योंकि यही आप के लिए प्रस्ताव बना रहे हैं, इसलिए आपको नया पूर्व प्राप्त करने के लिए परिवर्तन के याकूब के साथ गड़बड़ करना होगा। आपके विश्लेषण के लिए, निश्चित रूप से, आप MCMC- उत्पन्न पैरामीटर यादृच्छिक संख्या को मूल मापदंडों में बदल देंगे। संभावित नकारात्मक पक्ष: आपके लिए अधिक प्रारंभिक कार्य। संभावित उल्टा: आपके प्रस्तावों के लिए बेहतर स्वीकृति दर।

विकल्प 3: एक स्वतंत्रता वितरण के अलावा एक प्रस्ताव वितरण का निर्माण करें जो इकाई वर्ग पर है। इससे आप अपनी वर्दी को पहले रख सकते हैं, लेकिन प्रस्ताव की संभावनाओं की गणना करते समय अधिक जटिलता की कीमत पर। इसका एक उदाहरण, को आपके किसी पैरामीटर का वर्तमान मान होना, मापदंडों के साथ बीटा वितरण ( n x , n ( 1 - x ) ) होगा । जितना बड़ा n होगा , उतना ही आपका प्रस्ताव वर्तमान मूल्य के आसपास केंद्रित होगा। संभावित नकारात्मक पक्ष: आपके लिए अधिक प्रारंभिक कार्य। संभावित उल्टा: आपके प्रस्तावों के लिए बेहतर स्वीकृति दर - लेकिन यदि आप एन बनाते हैंx(nx,n(1x))nn बहुत बड़ा है, और एक कोने के पास चलते हैं, आप बाहर निकलने से पहले कोने में बहुत सारे छोटे कदम बढ़ा सकते हैं।

विकल्प 4: बस वर्ग (जियान के आधे-अधूरे सुझाव) के बाहर आने वाले किसी भी प्रस्ताव को अस्वीकार कर दें। ध्यान दें कि यह केवल एक और प्रस्ताव उत्पन्न करने के समान नहीं है; इस मामले में आप प्रस्ताव को अस्वीकार कर रहे हैं, जिसका अर्थ है कि पैरामीटर के लिए आपका अगला मान पैरामीटर के लिए वर्तमान मान के समान है। यह काम करता है क्योंकि ऐसा होता है यदि आप अपने पैरामीटर स्थान के कुछ क्षेत्र के लिए शून्य पूर्व संभावना रखते हैं और उस क्षेत्र में एक यादृच्छिक संख्या उत्पन्न करते हैं। संभावित नकारात्मक पक्ष: यदि आप एक कोने के पास जाते हैं, तो आपके पास कम स्वीकृति संभावना हो सकती है और थोड़ी देर के लिए अटक सकती है। संभावित उल्टा: आपके लिए कम काम।

विकल्प 5: प्लेन पर एक विस्तारित समस्या बनाएँ, जो कि यूनिट स्क्वायर पर है, वही वास्तविक समस्या है जिसका आप सामना करते हैं, सब कुछ ठीक करते हैं, फिर, जब MCMC नमूने के परिणामों को पोस्ट-प्रोसेसिंग करते हैं, तो सभी नमूनों को बाहर फेंक देते हैं। इकाई वर्ग का। संभावित उल्टा: यदि उस विस्तारित समस्या को बनाना बहुत आसान है, तो यह आपके लिए कम काम हो सकता है। संभावित नकारात्मक पक्ष: यदि मार्कोव श्रृंखला थोड़ी देर के लिए इकाई वर्ग के बाहर कहीं भटक जाती है, तो आपके पास प्रभाव के रूप में भयानक स्वीकृति संभावनाएं हो सकती हैं, क्योंकि आप अपने अधिकांश नमूने बाहर फेंक देंगे।

इसमें कोई संदेह नहीं है कि अन्य विकल्प हैं, मुझे यह देखने में दिलचस्पी होगी कि अन्य लोग क्या सुझाव देते हैं!

2 और 3 के बीच का अंतर कुछ हद तक वैचारिक है, हालांकि वास्तव में आप जो करते हैं उसके लिए वास्तविक निहितार्थ हैं। मैं शायद 3 के साथ जाऊंगा, जैसा कि मैंने अभी आर को बताया कि प्रस्ताव की संभावनाएं क्या हैं (यदि मैं आर में प्रोग्रामिंग कर रहा हूं) और प्रस्ताव वितरण पैरामीटर कुछ ट्यूनिंग से अलग, अतिरिक्त प्रयास की राशि , दिखता है मुझसे छोटा। अगर मैं JAGS या BUGS का उपयोग कर रहा था, तो निश्चित रूप से, यह एक अलग बात होगी, क्योंकि वे उपकरण अपने स्वयं के प्रस्तावों को संभालते हैं।n


पक्ष में मत देना! इस तरह के एक उत्तर के लिए बहुत बहुत धन्यवाद, लेकिन कुछ बिंदु हैं जो मैं पालन करने के लिए संघर्ष कर रहा हूं: 1) वास्तव में पैरामीटर स्पेस वर्ग में एक सेगमेंट से आ रहा है और इसके लिए समान नमूनाकरण द्वारा प्राप्त करना वास्तव में कठिन है। 2) यह वास्तव में एक अच्छा विचार नहीं है। एक सरल चित्रण देने के लिए बाहरी क्षेत्र की संभावना को शून्य पर सेट करके केवल बंधे हुए नमूने का विस्तार करने की कल्पना करें! यह
कन्वर्जिंग

3) इस विचार के साथ समस्या यह है कि आपका प्रस्ताव उलटा नहीं है और इसलिए यह मामला हो सकता है कि परिणामस्वरूप नमूना योजना अब एक ergodic नहीं हो सकती है!

4) वह तरीका है जो मैंने कोशिश की और उचित लग रहा है (IMH!) 5) यह उन उदाहरणों से पीड़ित लगता है जो मैंने 2 में उल्लेख किया था और जैसा कि आपने खुद कहा कि भयानक स्वीकृति दर दे सकते हैं!
वाला

2
1) निश्चित नहीं है कि आपका क्या मतलब है; क्या आपका मतलब है कि आपके दो पैरामीटर यूनिट स्क्वायर में एक लाइन पर हैं (और इसलिए वास्तव में केवल एक पैरामीटर है?) 2) क्या 2 पैरामीटर को अन्य मापदंडों में बदलना है, जैसे, y = x / (1-x) रेंज है जब x x के बजाय x ( 0 , 1 ) और y से नमूना। 3) β प्रस्ताव काम करता है; आपको केवल स्वीकृति अनुपात (मानक MCMC।) की गणना में प्रस्ताव संभावनाओं को शामिल करना होगा। धारण करने के लिए ergodicity के लिए आपको एक सममित प्रस्ताव (जो कि मुझे लगता है कि आपको "उल्टा" से मतलब है) की आवश्यकता नहीं है। (0,inf)x(0,1)β
जुम्मन

α=2.5(0.5,1)α=3.2(0,0.8)α=0.2(0.2,0)
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.