अनुकरण द्वारा समस्या का समाधान
मेरा पहला प्रयास कंप्यूटर पर इसे अनुकरण करना होगा, जो बहुत सारे उचित सिक्कों को बहुत तेजी से फ्लिप कर सकता है। नीचे एक उदाहरण एक परीक्षण के साथ है। यह घटना 'कि का पैटर्न' 1-0-0 ' की संख्या सिक्का फ़्लिप 20 या अधिक होता है' लगभग हर तीन हज़ार परीक्षणों में एक बार होता है, इसलिए आपने जो देखा वह बहुत संभावना नहीं है (एक निष्पक्ष के लिए) सिक्का)।Xn=100
ध्यान दें कि हिस्ट्रोग्राम सिमुलेशन के लिए है और रेखा नीचे सटीक गणना है जिसे आगे बताया गया है।
set.seed(1)
# number of trials
n <- 10^6
# flip coins
q <- matrix(rbinom(100*n, 1, 0.5),n)
# function to compute number of 100 patterns
npattern <- function(x) {
sum((1-x[-c(99,100)])*(1-x[-c(1,100)])*x[-c(1,2)])
}
# apply function on data
counts <- sapply(1:n, function(x) npattern(q[x,]))
hist(counts, freq = 0)
# estimated probability
sum(counts>=20)/10^6
10^6/sum(counts>=20)
एक सटीक गणना के साथ समस्या को हल करना
एक विश्लेषणात्मक दृष्टिकोण के लिए आप इस तथ्य का उपयोग कर सकते हैं कि '100 सिक्कों के फ़्लिप्स में 20 या अधिक सीक्वेंस' 1-0-0 'का निरीक्षण करने की संभावना 1 माइनस के बराबर है कि इसमें 20 सीक्वेंस बनाने के लिए 100 फ़्लिप होने में अधिक समय लगता है' । इसे निम्नलिखित चरणों में हल किया गया है:
'1-0-0' के फ़्लिप करने की संभावना के लिए प्रतीक्षा समय
वितरण, , आपको जितनी बार फ्लिप करने की आवश्यकता होती है, उतनी बार आपको एक अनुक्रम '1-0-0' प्राप्त करने की आवश्यकता होती है:fN,x=1(n)
आइए मार्कोव श्रृंखला के रूप में '1-0-0' तक पहुंचने के तरीकों का विश्लेषण करें। हम flips के स्ट्रिंग के प्रत्यय द्वारा वर्णित राज्यों का अनुसरण करते हैं: '1', '1-0', या '1-0-0'। उदाहरण के लिए यदि आपके पास निम्नलिखित आठ फ़्लिप 10101100 हैं, तो आप क्रम में आए, निम्नलिखित आठ अवस्थाएँ: '1', '1-0', '1', '1-0', '1', '1'। -0 1-0 ’, 1-0 1-0-0’ और इसे '1-0-0 ’तक पहुंचने में आठ झटके लगे। ध्यान दें कि आपके पास प्रत्येक फ्लिप में '1-0-0' तक पहुंचने की समान संभावना नहीं है। इस प्रकार आप इसे एक द्विपद वितरण के रूप में मॉडल नहीं कर सकते । इसके बजाय आपको संभावनाओं के एक पेड़ का पालन करना चाहिए। राज्य '1' '1' और '1-0' में जा सकता है, राज्य '1-0' '1' और'-0-0 'में जा सकता है, और राज्य '1-0-0' एक अवशोषित राज्य है। आप इसे नीचे लिख सकते हैं:
number of flips
1 2 3 4 5 6 7 8 9 .... n
'1' 1 1 2 3 5 8 13 21 34 .... F_n
'1-0' 0 1 1 2 3 5 8 13 21 F_{n-1}
'1-0-0' 0 0 1 2 4 7 12 20 33 sum_{x=1}^{n-2} F_{x}
और पैटर्न '1-0-0' तक पहुंचने की संभावना, पहले '1' को रोल करने के बाद (आप राज्य 0 से शुरू करते हैं, अभी तक एक सिर नहीं फ़्लिप किया है), फ़्लिप के भीतर संभावना से डेढ़ गुना है फ़्लिप के भीतर राज्य '1-0' में होना :nn−1
fNc,x=1(n)=Fn−22n−1
जहां है मई के Fibonnaci संख्या। गैर-सशर्त संभावना एक योग हैFii
fN,x=1(n)=∑k=1n−20.5kfNc,x=1(1+(n−k))=0.5n∑k=1n−2Fk
'1-0-0' की गुणा करने की संभावना के लिए प्रतीक्षा समयk
यह आप एक दृढ़ संकल्प द्वारा गणना कर सकते हैं।
fN,x=k(n)=∑l=1nfN,x=1(l)fN,x=1(n−l)
आपको 20 या अधिक '1-0-0' पैटर्न का अवलोकन करने की संभावना के रूप में मिलेगा (यह परिकल्पना के आधार पर कि सिक्का उचित है)
> # exact computation
> 1-Fx[20]
[1] 0.0003247105
> # estimated from simulation
> sum(counts>=20)/10^6
[1] 0.000337
इसकी गणना करने के लिए यहाँ R-code दिया गया है:
# fibonacci numbers
fn <- c(1,1)
for (i in 3:99) {
fn <- c(fn,fn[i-1]+fn[i-2])
}
# matrix to contain the probabilities
ps <- matrix(rep(0,101*33),33)
# waiting time probabilities to flip one pattern
ps[1,] <- c(0,0,cumsum(fn))/2^(c(1:101))
#convoluting to get the others
for (i in 2:33) {
for (n in 3:101) {
for (l in c(1:(n-2))) {
ps[i,n] = ps[i,n] + ps[1,l]*ps[i-1,n-l]
}
}
}
# cumulative probabilities to get x patterns in n flips
Fx <- 1-rowSums(ps[,1:100])
# probabilities to get x patterns in n flips
fx <- Fx[-1]-Fx[-33]
#plot in the previous histogram
lines(c(1:32)-0.5,fx)
अनुचित सिक्कों के लिए कम्प्यूटिंग
हम flips में पैटर्न का निरीक्षण करने के लिए प्रायिकता के उपरोक्त गणना को सामान्य कर सकते हैं , जब '1 = हेड' की संभावना और फ़्लिप स्वतंत्र होते हैं।xnp
अब हम फाइबोनैचि संख्याओं के सामान्यीकरण का उपयोग करते हैं:
Fn(x)=⎧⎩⎨1xx(Fn−1+Fn−2)if n=1if n=2if n>2
संभावनाएं अब इस प्रकार हैं:
fNc,x=1,p(n)=(1−p)n−1Fn−2((1−p)−1−1)
तथा
fN,x=1,p(n)=∑k=1n−2p(1−p)k−1fNc,x=1,p(1+n−k)=p(1−p)n−1∑k=1n−2Fk((1−p)−1−1)
जब हम इसे प्राप्त करते हैं:
इसलिए जब उचित मूल्य 0.0003247 के लिए पी-मूल्य छोटा है, तो हमें ध्यान देना चाहिए कि विभिन्न अनुचित सिक्कों के लिए यह बहुत बेहतर (केवल एक आदेश) नहीं है। संभावना अनुपात, या बेयस कारक , लगभग 11 है जब शून्य परिकल्पना ( ) की तुलना वैकल्पिक परिकल्पना । इसका मतलब है कि पीछे बाधाओं अनुपात पहले बाधाओं अनुपात से केवल दस गुना अधिक है।p=0.5p=0.33
इस प्रकार यदि आपने प्रयोग से पहले सोचा कि सिक्का अनुचित नहीं था, तो अब आपको यह सोचना चाहिए कि सिक्का अनुचित नहीं है।
साथ एक सिक्का लेकिन '1-0-0' घटनाओं के बारे में अनुचितताpheads=ptails
एक बहुत ही आसान सिक्का और सिर और पूंछ की संख्या की गिनती करके एक निष्पक्ष सिक्के के लिए संभावना का परीक्षण कर सकता है और इन टिप्पणियों को मॉडल करने के लिए एक द्विपद वितरण का उपयोग कर सकता है और परीक्षण कर सकता है कि अवलोकन विशेष है या नहीं।
हालाँकि यह हो सकता है कि सिक्का चमक रहा हो, औसतन, समान संख्या में सिर और पूंछ लेकिन कुछ पैटर्न के बारे में उचित नहीं है। उदाहरण के लिए सिक्के के फलैश के सफल होने के लिए सिक्के का कुछ संबंध हो सकता है (मैं सिक्के के धातु के अंदर गुहाओं के साथ कुछ तंत्र की कल्पना करता हूं जो भरे हुए रेत के होते हैं जो पिछले सिक्के फ्लिप के विपरीत छोर की ओर एक घंटे के गिलास की तरह बहेंगे, जो सिक्के को लोड कर रहा है पिछली तरफ के समान पक्ष पर अधिक संभावना गिरने के लिए)।
बता दें कि पहला सिक्का फ्लिप समान संभावना वाले हेड्स और टेल्स हैं और फ़्लिपिंग सफ़लता संभावनाएँ के साथ उसी तरफ हैं जैसे कि फ्लिप से पहले। फिर इस पोस्ट की शुरुआत के समान एक अनुकार निम्न संभावनाएं देगा कि पैटर्न '1-0-0' की संख्या 20 से अधिक है:p
आप देख सकते हैं कि '1-0-0' पैटर्न (कहीं एक सिक्का जिसमें कुछ नकारात्मक सहसंबंध है) का निरीक्षण करने के लिए इसे और अधिक अस्पष्ट बनाने की संभावना है , लेकिन अधिक नाटकीय यह है कि कोई इसे बहुत कम कर सकता है '1-0-0' पैटर्न को बनाए रखने की संभावना है। कम आपको कई बार एक सिर के बाद की पूंछ मिलती है, '1-0-0' पैटर्न का पहला '1-0' हिस्सा, लेकिन आपको '0-0' की पंक्ति में इतनी बार दो पूंछ नहीं मिलती हैं पैटर्न का हिस्सा। उच्च मूल्यों के लिए विपरीत सच है ।p=0.45pp
# number of trials
set.seed(1)
n <- 10^6
p <- seq(0.3,0.6,0.02)
np <- length(p)
mcounts <- matrix(rep(0,33*np),33)
pb <- txtProgressBar(title = "progress bar", min = 0,
max = np, style=3)
for (i in 1:np) {
# flip first coins
qfirst <- matrix(rbinom(n, 1, 0.5),n)*2-1
# flip the changes of the sign of the coin
qrest <- matrix(rbinom(99*n, 1, p[i]),n)*2-1
# determining the sign of the coins
qprod <- t(sapply(1:n, function(x) qfirst[x]*cumprod(qrest[x,])))
# representing in terms of 1s and 0s
qcoins <- cbind(qfirst,qprod)*0.5+0.5
counts <- sapply(1:n, function(x) npattern(qcoins[x,]))
mcounts[,i] <- sapply(1:33, function(x) sum(counts==x))
setTxtProgressBar(pb, i)
}
close(pb)
plot(p,colSums(mcounts[c(20:33),]),
type="l", xlab="p same flip", ylab="counts/million trials",
main="observation of 20 or more times '1-0-0' pattern \n for coin with correlated flips")
points(p,colSums(mcounts[c(20:33),]))
आंकड़ों में गणित का उपयोग करना
उपरोक्त सभी ठीक है लेकिन यह सवाल का सीधा जवाब नहीं है
"क्या आपको लगता है कि यह एक उचित सिक्का है?"
उस प्रश्न का उत्तर देने के लिए, ऊपर दिए गए गणित का उपयोग कर सकता है, लेकिन किसी को पहले वास्तव में बहुत अच्छी तरह से स्थिति, लक्ष्यों, निष्पक्षता की परिभाषा आदि का वर्णन करना चाहिए, पृष्ठभूमि और परिस्थितियों के ज्ञान के बिना किसी भी गणना सिर्फ गणित का अभ्यास होगा और उत्तर का नहीं। स्पष्ट सवाल।
एक खुला सवाल यह है कि हम '1-0-0' पैटर्न की तलाश क्यों और कैसे कर रहे हैं।
- उदाहरण के लिए, शायद यह पैटर्न एक लक्ष्य नहीं था, जो जांच करने से पहले तय किया गया था । शायद यह कुछ ऐसा था जो डेटा में 'बाहर खड़ा था' और यह कुछ ऐसा था जिसे प्रयोग के बाद ध्यान मिला । उस मामले में किसी को यह विचार करने की आवश्यकता है कि कोई प्रभावी रूप से कई तुलना कर रहा है ।
- एक और मुद्दा यह है कि ऊपर की गणना की गई संभावना एक पी-मूल्य है। पी-मूल्य का अर्थ सावधानी से विचार करने की आवश्यकता है। यह संभावना नहीं है कि सिक्का उचित है। यह, बजाय, संभावना एक विशेष परिणाम निरीक्षण करने के लिए है , तो सिक्का मेला है। यदि किसी के पास एक ऐसा वातावरण है, जिसमें किसी को सिक्कों की निष्पक्षता का कुछ वितरण पता है, या कोई एक उचित धारणा बना सकता है, तो कोई इसे ध्यान में रख कर बायेसियन अभिव्यक्ति का उपयोग कर सकता है ।
- क्या उचित है, क्या अनुचित है। आखिरकार, पर्याप्त परीक्षणों को देखते हुए, कुछ छोटे-मोटे अन्याय हो सकते हैं। लेकिन क्या यह प्रासंगिक है और क्या ऐसी खोज पक्षपातपूर्ण नहीं है? जब हम एक निरंतरवादी दृष्टिकोण से चिपके रहते हैं, तो किसी को एक सीमा जैसा कुछ वर्णित करना चाहिए जिसके ऊपर हम एक सिक्का मेला (कुछ प्रासंगिक प्रभाव आकार) मानते हैं। फिर एक दो तरफा टी-टेस्ट के समान कुछ का उपयोग कर सकता है ताकि यह तय किया जा सके कि सिक्का उचित है या नहीं ('1-0-0' पैटर्न के बारे में)।