Sorunu simülasyonla çözme
İlk denemem bunu bir bilgisayar üzerinde simüle etmek, bu da birçok adil parayı çok hızlı çevirebilir. Aşağıda bir milyon deneme içeren bir örnek yer almaktadır. Olay 'kaç kezX '1-0-0' düzeni n=100 jeton çevirileri 20 veya daha fazla 'kabaca her üç bin denemede bir gerçekleşir, bu yüzden gözlemlediğiniz şey (adil bir madeni para için) pek olası değildir.
Histrogramın simülasyon için olduğunu ve satırın aşağıda açıklanan tam hesaplama olduğunu unutmayın.
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)
Sorunu kesin bir hesaplama ile çözme
Analitik bir yaklaşım için, 100 madeni para saygısında '20 veya daha fazla diziyi gözlemleme olasılığı' 1-0-0 ', 1 eksi 20 diziyi yapmak için 100'den fazla çevirmenin olması olasılığı' gerçeğini kullanabilirsiniz. . Bu, aşağıdaki adımlarda çözülmüştür:
'1-0-0' çevirme olasılığı için bekleme süresi
Dağıtım, fN,x=1(n), tam olarak bir dizi '1-0-0' elde edene kadar kaç kez çevirmeniz gerektiği aşağıdaki gibi hesaplanabilir:
Markov zinciri olarak '1-0-0' elde etmenin yollarını analiz edelim. Çevirme dizesinin sonekiyle açıklanan durumları izleriz: '1', '1-0' veya '1-0-0'. Örneğin, aşağıdaki sekiz döndürme 10101100'e sahipseniz, sırayla, aşağıdaki sekiz durumu geçtiniz: '1', '1-0', '1', '1-0', '1', '1', '1-0', '1-0-0' olarak adlandırıldı ve '1-0-0' değerine ulaşmak sekiz tur aldı. Her kapakta '1-0-0' durumuna ulaşmak için eşit olasılığınızın olmadığını unutmayın . Böylece bunu bir binom dağılımı olarak modelleyemezsiniz . Bunun yerine bir olasılık ağacını takip etmelisiniz. '1' durumu '1' ve '1-0', '1-0' durumu '1' ve '1-0-0' olabilir, ve '1-0-0' durumu emici bir durumdur. Aşağıdaki gibi yazabilirsiniz:
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}
ve bir ilk '1' yuvarladıktan sonra (1-0-0 '' düzenine ulaşma olasılığı ('0' durumuyla başlıyorsunuz, henüz bir kafa atmadınız) n döndürme, "1-0" durumunda olma olasılığının yarısı kadardır. n−1 çevirir:
fNc,x=1(n)=Fn−22n−1
nerede Fi bu i-Fibonnaci sayısı. Koşulsuz olasılık bir toplamdır
fN,x=1(n)=∑k=1n−20.5kfNc,x=1(1+(n−k))=0.5n∑k=1n−2Fk
Çevirme olasılığı için bekleme süresi k kez '1-0-0'
Bunu bir evrişim ile hesaplayabilirsiniz.
fN,x=k(n)=∑l=1nfN,x=1(l)fN,x=1(n−l)
20 veya daha fazla '1-0-0' düzenini gözlemleme olasılığı elde edersiniz (madalyonun adil olduğu hipotezine dayanarak)
> # exact computation
> 1-Fx[20]
[1] 0.0003247105
> # estimated from simulation
> sum(counts>=20)/10^6
[1] 0.000337
Hesaplamak için R kodu:
# 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)
Haksız paralar için hesaplama
Gözlemleme olasılığının yukarıdaki hesaplamasını genelleştirebiliriz x kalıplar n '1 = kafa' olasılığı olduğunda p ve döndürmeler bağımsızdır.
Şimdi Fibonacci sayılarının genellemesini kullanıyoruz:
Fn( x ) =⎧⎩⎨1xx (Fn - 1+Fn - 2)Eğer , n = 1Eğer , n = 2eğer n > 2
olasılıklar şu şekildedir:
fN-c, x = 1 , p( n ) = ( 1 - p)n - 1Fn - 2( ( 1 - p)- 1- 1 )
ve
fN-, x = 1 , p( n ) =Σk = 1n - 2p ( 1 - p)k - 1fN-c, x = 1 , p(1+n−k)=p(1−p)n−1∑k=1n−2Fk((1−p)−1−1)
Bunu çizdiğimizde şunları elde edersiniz:
Bu nedenle, p değeri 0.0003247 adil bir para için küçük olsa da, farklı haksız paralar için çok daha iyi olmadığını (sadece tek bir sipariş) not etmeliyiz. İhtimal oranı, ya da Bayes faktörü , yaklaşık 11 olduğu zaman sıfır hipotezi (p=0.5) alternatif hipotez ile karşılaştırılır p=0.33. Bu, arka oran oranının , önceki oran oranından sadece on kat daha yüksek olduğu anlamına gelir .
Bu yüzden deneyden önce madalyonun olası adaletsiz olduğunu düşündüyseniz, o zaman hala madalyonun olası adaletsiz olduğunu düşünmelisiniz.
Bozuk para pheads=ptails ancak '1-0-0' olaylarına ilişkin haksızlık
Kişi, kafa ve kuyruk sayısını sayarak adil bir madeni para olasılığını test edebilir ve bu gözlemleri modellemek ve gözlemin özel olup olmadığını test etmek için bir binom dağılımı kullanabilir.
Bununla birlikte, madalyonun ortalama olarak eşit sayıda kafa ve kuyruk çevirmesi olabilir, ancak belirli desenlerle ilgili adil değildir. Örneğin, madalyonun, madeni para çevirmeyi başarmak için bazı korelasyonları olabilir (Madalyonun metalinin içindeki boşluklar ile bir kum saati gibi kumla doldurulmuş, madeni parayı yükleyen bir kum saati gibi akacak bir mekanizma hayal ediyorum. önceki tarafla aynı tarafa düşme olasılığı daha yüksektir).
İlk jeton çevirme eşit olasılık başları ve kuyrukları olsun ve sonraki dönüşler olasılıkla pönceki kapakla aynı taraf. Daha sonra bu yazının başlangıcına benzer bir simülasyon, '1-0-0' şablonunun 20'yi aşma sayısı için aşağıdaki olasılıkları verecektir:
'1-0-0' modelini (etrafta bir yerde) gözlemleme olasılığını daha da arttırmanın mümkün olduğunu görebilirsiniz. p=0.45negatif korelasyonu olan bir bozuk para), ancak daha dramatik olan, kişinin '1-0-0' modelini saptırma olasılığını azaltabileceğidir. Düşük içinpbir kafadan sonra birçok kez kuyruk alırsınız, '1-0-0' deseninin ilk '1-0' kısmıdır, ancak arka arkaya '0-0' kısmını arka arkaya iki kuyruk almazsınız. Desen. Bunun tersi yüksekler için doğrudurp değerler.
# 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),]))
Matematiğin istatistiklerde kullanımı
Yukarıdakilerin hepsi iyi ama soruya doğrudan bir cevap değil
"bunun adil bir para olduğunu mu düşünüyorsun?"
Bu soruyu cevaplamak için yukarıdaki matematik kullanılabilir ancak kişi önce durumu, hedefleri, adalet tanımını vb. Çok iyi tanımlamalıdır. açık soru.
Açık bir soru, '1-0-0' modelini neden ve nasıl aradığımızdır.
- Örneğin, belki de bu model, soruşturma yapılmadan önce kararlaştırılan bir hedef değildi . Belki de verilerde 'göze çarpan' bir şeydi ve deneyden sonra dikkat çeken bir şeydi . Bu durumda, kişinin etkili bir şekilde çoklu karşılaştırmalar yaptığı düşünülmelidir .
- Başka bir konu, yukarıda hesaplanan olasılıkın bir p-değeri olmasıdır. Bir p-değerinin anlamı dikkatle ele alınmalıdır. Öyle değil sikke adil olma olasılığı. Bunun yerine, madeni para adil ise belirli bir sonucu gözlemleme olasılığıdır . Kişinin, madeni paraların adilliğinin bir miktar dağılımını bildiği veya makul bir varsayımda bulunabileceği bir ortam varsa, bunu dikkate alabilir ve Bayesci bir ifade kullanabilir .
- Adil olan, haksız olan nedir. Sonunda, yeterli denemeler göz önüne alındığında, biraz ufak bir haksızlık bulabilir. Ancak konuyla alakalı mı ve böyle bir arama taraflı değil mi? Sıkça yaklaşan bir yaklaşıma bağlı kaldığımızda, o zaman yukarıda bir jeton fuarı olarak düşündüğümüz bir sınır tanımlamak gerekir (bazı ilgili etki büyüklüğü). Daha sonra madalyonun adil olup olmadığına karar vermek için iki tek taraflı t-testine benzer bir şey kullanılabilir ('1-0-0' deseni ile ilgili olarak).