छद्म-यादृच्छिक संख्या पीढ़ी में बीज स्थापित करने के लिए संदर्भ और सर्वोत्तम अभ्यास


11

में इस दस्तावेज़ , कि चिंताओं "सेट बीज" कमांड, Stata लोगों बीज जब छद्म यादृच्छिक संख्या पैदा करने की सेटिंग से संबंधित मुद्दों पर चर्चा।

एक उल्लेखनीय "नहीं" है "क्रमिक रूप से बीज के रूप में प्राकृतिक संख्याओं के अनुक्रम का उपयोग न करें, क्योंकि इसमें एक पैटर्न और खतरे का छद्म यादृच्छिकता है"।

केवल एक-चौथाई-मजाकिया उल्लेखनीय "करो" , अपने जीवनकाल के दौरान सिर्फ एक बीज निर्धारित करना है , और फिर प्रत्येक प्रयोग के अंत में उत्पन्न प्रक्रिया की "स्थिति" को रिकॉर्ड करना है, ताकि अगला प्रयोग बिंदु पर जारी रहेगा जहां प्रक्रिया बंद हो गई है।

जाहिर है, उपर्युक्त सलाह छद्म यादृच्छिक संख्याओं की अपेक्षित गिनती पर निर्भर करती है जो उनके शोध जीवन में उत्पन्न होगी। शायद एक Mersenne ट्विस्टर कई शोधकर्ताओं की जीवन-समय की जरूरतों को कवर करेगा ...

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

तो, मेरे सवाल हैं

1) क्या आप ऊपर दी गई सलाह को समझाने या अमान्य करने में मदद कर सकते हैं, या ऐसे संदर्भों की ओर इशारा कर सकते हैं जो इस तरह के मुद्दों से संबंधित है?

2) क्या आप ऐसे संदर्भ प्रदान कर सकते हैं जो बीज स्थापित करने में "सर्वोत्तम प्रथाओं" की पेशकश करते हैं?

3) आप अपने काम में इसके बारे में कैसे जाते हैं, और क्यों?

प्रश्न 3) के लिए एक उदाहरण के रूप में, मान लीजिए कि मोंटे कार्लो अध्ययन के लिए, आप प्रत्येक आकार n में नमूने उत्पन्न करना चाहते हैं , और यह कि आपके PRNG की अवधि m n की तुलना में पर्याप्त रूप से बड़ी है । क्या आप एक बीज के साथ सभी मी n छद्म यादृच्छिक संख्या उत्पन्न करेंगे , या आपको प्रति नमूना बीज बदलने की आदत है? (लेकिन यह सिर्फ दृष्टांत के लिए है-मेरा मानना ​​है कि अधिक सामान्य उत्तर यहां दिए गए हैं)। nPRNGnn

एक संबंधित धागा (हालांकि बहुत अधिक केंद्रित है)
प्रत्येक कोड ब्लॉक से पहले या एक बार प्रोजेक्ट के अनुसार सेट बीज है?

मुझे लग रहा है कि शायद यह एक सामुदायिक विकी होना चाहिए, मोदी कृपया उस पर निर्णय लें।


4
यह स्टैट्टा मैनुअल पेज एक बीज का उपयोग क्यों कर रहा है, इसके बारे में महत्वपूर्ण निहितार्थ धारणाएं बनाता है। मुख्य कारण मैं बीज का उपयोग करता हूं (सीवी पर मेरी पोस्टिंग में) प्रजनन योग्य उदाहरण बनाने के लिए यह प्रदर्शित करने के लिए कि मैंने बीज से फ़िडिंग नहीं की है जब तक कि उदाहरण मेरी पसंद (!) के लिए नहीं था, मैं (लगभग) हमेशा एक ही बीज का उपयोग करता हूं। यह इतनी स्पष्ट रूप से स्टाटा सलाह का खंडन करता है क्योंकि मेरे पास एक अलग उद्देश्य है जो उन्हें ध्यान में रखना चाहिए (जो कि अस्थिर है)। यहां नैतिक यह है कि सर्वोत्तम अभ्यास उद्देश्य पर निर्भर करता है।
whuber

@whuber मेरी भावना यह है कि दस्तावेज़ में दी गई सलाह का उल्लेख है जिसका उद्देश्य "यादृच्छिकता" और उपयोग की जाने वाली श्रृंखला की प्रतिलिपि प्रस्तुत करने की क्षमता दोनों को संरक्षित करना है (प्रक्रिया के "राज्य" की रिकॉर्डिंग के माध्यम से, जैसा कि वे कहते हैं)। ये लक्ष्य किसी भी सेट अप का पीछा करने के लायक हैं, जो भी अनुसंधान का उद्देश्य है, नहीं?
एलेकोस पापाडोपोलोस

1
यकीन है कि वे सार्थक हैं - लेकिन यह उन्हें "मैनुअल" और "डोनट्स" के रूप में मैनुअल पेज द्वारा व्यक्त करने का औचित्य साबित नहीं करता है। ऐसे अनियंत्रित अधिनायक के साथ समस्या यह है कि अन्य - जैसे कि वकील - यह सोचने के लिए प्रेरित होंगे कि उद्देश्य या परिस्थितियों की परवाह किए बिना किसी भी विपरीत अभ्यास स्वाभाविक रूप से गलत है। आंकड़ों के व्यवहार में निर्णय के लिए जगह छोड़ना महत्वपूर्ण है! विशेष रूप से, कृपया "सर्वोत्तम प्रथाओं" के साथ सॉफ़्टवेयर के उपयोग के लिए सिफारिशों को भ्रमित न करें।
व्हिबर

@whuber तथ्य यह है कि मैं "प्रोत्साहन" के रूप में एक विशेष सॉफ्टवेयर से जुड़ा एक दस्तावेज का उपयोग करता था, मेरा सवाल "सॉफ़्टवेयर के उपयोग के लिए सिफारिशें" के बारे में नहीं है। प्रश्न स्पष्ट रूप से सांख्यिकीय अनुसंधान के संचालन में शोधकर्ताओं द्वारा उपयोग की जाने वाली नीतियों के बारे में हैं , इसलिए मुझे यहां कोई उलझन नहीं है।
एलेकोस पापाडोपोलोस

3
मान लें कि आपका PRNG अच्छा है, क्यों पैटर्न के साथ बीज स्थापित करने से कोई फर्क पड़ता है, क्या यह PRNGs का पूरा बिंदु नहीं है?
पर्पल51

जवाबों:


3

इसके लायक क्या है, यह अनुभव पर आधारित है और गणितीय विश्लेषण पर नहीं:

मुझे लगता है कि जब तक आप क्रिप्टोग्राफी नहीं कर रहे हैं, जहां सूक्ष्म पैटर्न बहुत खराब हो सकते हैं, तो आपके द्वारा निर्धारित बीज से कोई फर्क नहीं पड़ता है, जब तक कि आप Mersenne Twister जैसे स्वीकार किए गए अच्छे PRNGs का उपयोग करते हैं और न कि पुराने जैसे कि रैखिक बधाई जनरेटर। जहाँ तक मुझे पता है, इसका कोई तरीका नहीं है कि आप यह बता सकें कि किसी दिए गए बीज से वास्तव में PRNG को चलाने के बिना कौन सा यादृच्छिक नंबर आएगा (यह एक सभ्य है), अन्यथा आप बस उस नए एल्गोरिथ्म को ले लेंगे और उसका उपयोग करेंगे के रूप में अपने रैंडम संख्या जनरेटर।

एक और परिप्रेक्ष्य: क्या आपको लगता है कि आपके मोंटे-कार्लो सिमुलेशन में किसी भी सूक्ष्म पैटर्न की माप सभी त्रुटि त्रुटि, भ्रमित, और अन्य मॉडलिंग मान्यताओं द्वारा पेश की गई तुलना में अधिक परिमाण में होने की संभावना है?

मैं सिर्फ प्रतिलिपि प्रस्तुत करने के लिए शुरुआत में एक यादृच्छिक बीज का उपयोग करूंगा, और प्रत्येक कॉल से पहले एक सेट नहीं करूंगा, जब तक कि मैं डिबगिंग नहीं कर रहा हूं, जहां मुझे यह सुनिश्चित करने की आवश्यकता है कि दो अलग-अलग एल्गोरिदम सटीक एक ही इनपुट डेटा के लिए एक ही परिणाम उत्पन्न करते हैं।

अस्वीकरण: यदि आप परमाणु रिएक्टरों या मिसाइल नियंत्रण प्रणालियों या मौसम के पूर्वानुमान का अनुकरण करते हैं, तो डोमेन विशेषज्ञों से परामर्श करने के लिए सबसे अच्छा है, मैं उस मामले में कोई जिम्मेदारी नहीं लेता हूं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.