Résoudre le problème par simulation
Ma première tentative serait de simuler cela sur un ordinateur, ce qui peut retourner très rapidement de nombreuses pièces justes. Voici un exemple avec un million d'essais. L'événement « que le nombre de fois le motif « 1-0-0 » se produit dans pièces flips est de 20 ou plus » se produit à peu près une fois tous les trois mille essais, donc ce que vous avez observé est peu probable (pour une foire pièce de monnaie).Xn = 100
Notez que l'histrogramme est pour la simulation et la ligne est le calcul exact expliqué plus loin ci-dessous.
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)
Résoudre le problème avec un calcul exact
Pour une approche analytique, vous pouvez utiliser le fait que 'la probabilité d'observer 20 séquences ou plus' 1-0-0 'dans 100 tours de pièces est égale au 1 moins la probabilité qu'il faut plus de 100 tours pour faire 20 séquences' . Ceci est résolu dans les étapes suivantes:
Temps d'attente pour la probabilité de basculer «1-0-0»
La distribution, , du nombre de fois que vous devez retourner jusqu'à ce que vous obteniez exactement une séquence '1-0-0' peut être calculée comme suit:FN, x = 1( n )
Analysons les moyens d'arriver à «1-0-0» en tant que chaîne de Markov. Nous suivons les états décrits par le suffixe de la chaîne de flips: «1», «1-0» ou «1-0-0». Par exemple, si vous avez les huit flips 10101100 suivants, vous avez passé, dans l'ordre, les huit états suivants: "1", "1-0", "1", "1-0", "1", "1", '1-0', '1-0-0' et il a fallu huit flips pour atteindre '1-0-0'. Notez que vous n'avez pas la même probabilité d'atteindre l'état «1-0-0» à chaque flip. Ainsi, vous ne pouvez pas modéliser cela comme une distribution binomiale . Au lieu de cela, vous devez suivre un arbre de probabilités. L'état '1' peut aller dans '1' et '1-0', l'état '1-0' peut aller dans '1' et '1-0-0', et l'état «1-0-0» est un état absorbant. Vous pouvez l'écrire comme:
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}
et la probabilité d'atteindre le modèle «1-0-0», après avoir obtenu un premier «1» (vous commencez par l'état «0», sans avoir encore renversé la tête), en flips, la moitié de la probabilité être dans l'état «1-0» dans flips:nn - 1
FNc, x = 1( n ) = Fn - 22n - 1
où est le ème nombre de Fibonnaci. La probabilité non conditionnelle est une sommeFjeje
FN, x = 1( n ) = ∑k = 1n - 20,5kFNc, x = 1( 1 + ( n - k ) ) = 0,5n∑k = 1n - 2Fk
Temps d'attente pour la probabilité de retourner fois '1-0-0'k
Vous pouvez le calculer par convolution.
FN, x = k( n ) = ∑l = 1nFN, x = 1( l ) fN, x = 1( n - l )
vous obtiendrez comme probabilité d'observer au moins 20 modèles `` 1-0-0 '' (selon l'hypothèse que la pièce est juste)
> # exact computation
> 1-Fx[20]
[1] 0.0003247105
> # estimated from simulation
> sum(counts>=20)/10^6
[1] 0.000337
Voici le code R pour le calculer:
# 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)
Calcul de pièces déloyales
Nous pouvons généraliser le calcul ci-dessus de la probabilité d'observer modèles dans flips, lorsque la probabilité de «1 = tête» est et que les flips sont indépendants.Xnp
Nous utilisons maintenant une généralisation des nombres de Fibonacci:
Fn( x ) = ⎧⎩⎨1Xx ( Fn - 1+ Fn - 2)si n = 1si n = 2si n > 2
les probabilités sont maintenant les suivantes:
FNc, x = 1 , p( n ) = ( 1 - p )n - 1Fn - 2( ( 1 - p )- 1- 1 )
et
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 )
Lorsque nous traçons cela, vous obtenez:
Ainsi, bien que la valeur de p soit petite pour une pièce de monnaie équitable 0,0003247, nous devons noter qu'elle n'est pas beaucoup meilleure (une seule commande) pour différentes pièces de monnaie déloyales. Le rapport de vraisemblance, ou facteur de Bayes , est d'environ 11 lorsque l'hypothèse nulle ( ) est comparée à l'hypothèse alternative . Cela signifie que le rapport de cotes postérieur n'est que dix fois plus élevé que le rapport de cotes précédent.p = 0,5p = 0,33
Ainsi, si vous pensiez avant l'expérience que la pièce était improbable, alors vous devriez maintenant penser que la pièce est improbable.
Une pièce avec mais une injustice concernant les événements '1-0-0'ph e a ds= pt a i l s
On pourrait beaucoup plus facilement tester la probabilité d'une pièce équitable en comptant le nombre de têtes et de queues et utiliser une distribution binomiale pour modéliser ces observations et tester si l'observation est particulière ou non.
Cependant, il se peut que la pièce retourne, en moyenne, un nombre égal de têtes et de queues, mais n'est pas juste en ce qui concerne certains modèles. Par exemple, la pièce peut avoir une certaine corrélation pour les tours de pièces suivants (j'imagine un mécanisme avec des cavités à l'intérieur du métal de la pièce qui sont remplies de sable qui coulera comme un sablier vers l'extrémité opposée du tour de pièce précédent, qui charge la pièce pour tomber plus probablement du même côté que le côté précédent).
Soit le premier flip de pièces de monnaie à probabilité et à queues égales et les flips suivants sont avec probabilité du même côté que le flip précédent. Ensuite, une simulation similaire au début de ce post donnera les probabilités suivantes pour le nombre de fois que le modèle '1-0-0' dépasse 20:p
Vous pouvez voir qu'il est possible de le rendre légèrement plus susceptible d'observer le modèle `` 1-0-0 '' (quelque part autour de une pièce qui a une certaine corrélation négative), mais plus dramatique est que l'on peut le rendre beaucoup moins susceptibles d’observer le schéma «1-0-0». Pour un faible, vous obtenez plusieurs fois la queue après une tête, la première partie «1-0» du motif «1-0-0», mais vous n'obtenez pas si souvent deux queues d'affilée le «0-0» partie du motif. L'inverse est vrai pour les valeurs élevées.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),]))
Utiliser les mathématiques dans les statistiques
Ce qui précède est très bien, mais ce n'est pas une réponse directe à la question
"pensez-vous que c'est une pièce de monnaie équitable?"
Pour répondre à cette question, on peut utiliser les mathématiques ci-dessus mais il faut vraiment d'abord très bien décrire la situation, les objectifs, la définition de l'équité, etc. Sans aucune connaissance du contexte et des circonstances, tout calcul ne sera qu'un exercice de mathématiques et non une réponse à la question explicite.
Une question ouverte est pourquoi et comment nous recherchons le modèle «1-0-0».
- Par exemple, ce schéma n'était peut-être pas un objectif, qui a été décidé avant de mener l'enquête. Peut-être que c'était juste quelque chose qui «se démarquait» dans les données et c'était quelque chose qui a attiré l'attention après l'expérience. Dans ce cas, il faut considérer que l'on fait effectivement des comparaisons multiples .
- Un autre problème est que la probabilité calculée ci-dessus est une valeur de p. La signification d'une valeur p doit être soigneusement examinée. Ce n'est pas la probabilité que la pièce soit juste. C'est plutôt la probabilité d'observer un résultat particulier si la pièce est juste. Si l'on a un environnement dans lequel on connaît une certaine distribution de l'équité des pièces, ou si l'on peut faire une hypothèse raisonnable, alors on peut en tenir compte et utiliser une expression bayésienne .
- Ce qui est juste, ce qui est injuste. Finalement, avec suffisamment de procès, on peut trouver un tout petit peu d'injustice. Mais est-ce pertinent et une telle recherche n'est-elle pas partiale? Lorsque nous nous en tenons à une approche fréquentiste, il faut alors décrire quelque chose comme une frontière au-dessus de laquelle nous considérons une pièce juste (une certaine taille d'effet pertinente). Ensuite, on pourrait utiliser quelque chose de similaire au test t bilatéral afin de décider si la pièce est juste ou non (en ce qui concerne le modèle «1-0-0»).