En étudiant les tests statistiques, diverses distributions de probabilités apparaissent, mais je pense qu'il est difficile d'obtenir une image simplement en regardant les formules mathématiques. Tout en déplaçant divers paramètres avec Python, dessinez la distribution de probabilité et attachez l'image. (Le message précédent était ici. La dernière fois, nous nous sommes concentrés sur la distribution binomiale et la distribution de Poisson.)
Pour l'explication de la distribution de probabilité, reportez-vous à ce qui suit.
Cet article ne donne pas d'explications détaillées telles que la dérivation de diverses formules mathématiques, mais se concentre sur la compréhension de la forme de chaque distribution et la signification de cette distribution. Cet article traite des trois distributions suivantes.
Le nombre de fois où $ X $ suit jusqu'au premier essai indépendant réussi (procès de Bernouy) avec seulement deux conséquences, comme "si la pièce est lancée au recto ou au verso" * * S'appelle une distribution géométrique. C'est très similaire car la distribution binomiale suit le nombre de réussites ** $ n $ fois **. (Pour la distribution binomiale, veuillez vous référer à Article précédent.)
――Le nombre de fois jusqu'à ce que 1 sort pour la première fois après avoir continué à lancer les dés ――Le nombre de fois jusqu'à ce que le front apparaisse pour la première fois après avoir continué à lancer des pièces
Etc. suivent une distribution géométrique.
La formule de la fonction de masse stochastique de la distribution géométrique est exprimée comme suit.
P(X = k) = p(1-p)^{k-1}
$ p $ est le taux de réussite de la tentative.
De plus, lorsque la variable de probabilité $ X $ suit une distribution géométrique, la valeur attendue $ E (X) $ et la variance $ V (X) $ sont les suivantes.
E(X) = \frac{1}{p}
V(X) = \frac{1-p}{p^2}
Par exemple, le nombre prévu d'essais jusqu'à ce que 1 soit lancé pour la première fois après avoir lancé les dés est $ \ frac {1} {\ frac {1} {6}} = 6 $.
Maintenant, dessinons comment la forme de la distribution géométrique change lorsque la valeur de $ p $ (probabilité de succès) change.
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
def comb_(n, k):
result = math.factorial(n) / (np.math.factorial(n - k) * np.math.factorial(k))
return result
def geometric_dist(p, k):
result = ((1 - p) ** (k - 1)) * p
return result
fig = plt.figure()
def update(a):
plt.cla()
x = np.arange(1, 50, 1)
y = [geometric_dist(a, i) for i in x]
plt.bar(x, y, align="center", width=0.4, color="blue",
alpha=0.5, label="binomial p= " + "{:.1f}".format(a))
plt.legend()
plt.ylim(0, 0.3)
plt.xlim(0, 50)
ani = animation.FuncAnimation(fig,
update,
interval=1000,
frames = np.arange(0.1, 1, 0.1),
blit=True)
plt.show()
ani.save('Geometric_distribution.gif', writer='pillow')
Voici la distribution géométrique des événements avec une probabilité de succès de 10 $% aux événements avec une probabilité de succès de 90 $%. Je pense que vous pouvez comprendre intuitivement que plus le taux de réussite est élevé, plus la probabilité de succès est élevée lorsque le nombre d'essais est faible. Il s'avère que c'est presque un miracle d'échouer 10 $ d'affilée pour un événement avec une probabilité de succès de 90 $%.
De plus, la distribution géométrique a la propriété que la probabilité qu'un événement se produise n'est pas affectée par le résultat qui s'est produit auparavant. L'image est que le simple fait que le recto d'une pièce apparaisse à 5 $ d'affilée ne signifie pas qu'il y a une forte probabilité qu'elle apparaisse ensuite. Cela s'appelle ** sans mémoire **. (Cela signifie que les informations passées ne sont pas mémorisées.)
La distribution exponentielle est une distribution de probabilité qui représente la probabilité que l'intervalle entre les événements qui se produisent en moyenne de $ \ lambda $ fois par unité de temps soit de $ x $ unité de temps **, et est utilisée dans les exemples suivants.
--Intervalles en cas de catastrophe --Intervalle auquel les pannes accidentelles du système avec des temps de panne constants se produisent ―― L'intervalle entre l'arrivée d'un client et l'arrivée du client suivant dans le magasin
La fonction de densité de probabilité de la distribution exponentielle est exprimée comme suit.
\begin{equation}
f(x)=
\left\{
\begin{aligned}
&\lambda \mathrm{e}^{-\lambda x} &(x\geq0) \\
&0 &(x<0)\\
\end{aligned}
\right.
\end{equation}
De plus, lorsque la variable de probabilité $ X $ suit la distribution exponentielle, la valeur attendue $ E (X) $ et la variance $ V (X) $ sont les suivantes.
E(X) = \frac{1}{\lambda}
V(X) = \frac{1}{\lambda}
Par exemple, l'intervalle prévu entre les événements qui se produisent 5 $ par $ 1 $ heure (unité de temps) est $ \ frac {1} {5} heures = 12 minutes $. Je pense que cela correspond en quelque sorte au sentiment.
Maintenant, dessinons comment la forme de la distribution exponentielle change lorsque la valeur de $ \ lambda $ (le nombre moyen d'événements qui se produisent par unité de temps) change.
Par exemple, considérons-le comme une distribution qui représente l'intervalle de temps entre les visites des clients, d'un magasin où 30 clients en moyenne visitent une heure à un magasin où seulement 1 client en moyenne visite **.
import numpy as np
import matplotlib.animation as animation
import matplotlib.pyplot as plt
from scipy.stats import expon
fig = plt.figure()
def update(a):
plt.cla()
x = np.arange(0, 1, 0.01)
y = [expon.pdf(i, scale = 1/a) for i in x]
plt.plot(x, y, label="expon λ= %d" % a)
plt.legend()
plt.ylim(0, 35)
plt.xlim(0, 1.0)
ani = animation.FuncAnimation(fig,
update,
interval=500,
frames = np.arange(31, 1, -1),
blit=True)
plt.show()
ani.save('Exponential_distribution.gif', writer='pillow')
Pouvez-vous voir que la forme de la distribution est en quelque sorte similaire à la distribution géométrique? ** En fait, la version continue de la distribution géométrique est la distribution exponentielle. ** (Si vous augmentez le nombre d'essais dans la distribution géométrique et prenez une limite appropriée qui rapproche la probabilité de succès de 0 $, cela deviendra une distribution exponentielle.)
De plus, il y a trois points sous la forme de la distribution exponentielle.
-Plus $ \ lambda $ est petit, plus la diminution est lente --Diminue toujours de manière monotone quelle que soit la valeur de $ \ lambda $ -Plus $ x $ est proche de 0 $, plus la densité de probabilité est élevée
Le premier point est: «Un magasin avec une moyenne de 15 $ arrivera plus tôt qu'un magasin avec une moyenne de 5 $ en 1 $ heure». C'est une image, donc je pense que c'est facile à comprendre.
Les deuxième et troisième points sont ** «Lorsqu'un client vient au magasin, le client suivant est le plus susceptible de venir au magasin immédiatement après cela» **. Je pense que certaines personnes pensent que quelque chose ne va pas avec cela. En fait, cela est dérivé du ** manque de mémoire ** de la distribution d'index, et ce n'est pas parce qu'un client arrive pour 1 $ que cela signifie que le prochain client ne viendra pas pendant un certain temps ou qu'il est facile de visiter le magasin d'affilée. , Nous supposons que les visites des clients sont complètement aléatoires. Par conséquent, l'idée est que ** la probabilité que cela se produise bientôt est plus élevée que le temps où cela ne se produit pas pendant une longue période **. (Cette ignorance est la même que celle qui apparaissait au moment de la distribution géométrique.)
Ce que nous voulons en savoir plus sur nos sentiments quotidiens, c'est la probabilité que le prochain client arrive exactement 10 $ minutes plus tard, plutôt que la probabilité que le prochain client arrive dans ** 10 $ minutes **. Dans ce cas, il est nécessaire d'ajouter tout, de la probabilité que le prochain client visite le magasin soit de 0 $ $ secondes à la probabilité qu'il soit de 10 $ $ minutes.
À ce stade, la fonction de densité cumulative suivante, qui est le résultat de l'intégration de la fonction de densité de probabilité, est utilisée. ** Représente la probabilité qu'un événement qui se produit en moyenne $ \ lambda $ fois par unité de temps se produise dans un délai de $ x $ unité de temps **.
{{\begin{eqnarray}
F(x) &=& 1 - \mathrm{e}^{-\lambda x} \\
\end{eqnarray}}
}
Maintenant, dessinons comment la forme du graphique de la fonction de densité cumulée change lorsque la valeur de $ \ lambda $ (le nombre moyen d'événements qui se produisent par unité de temps) change.
Comme précédemment ** Probabilité du nombre de minutes que mettra le prochain client à visiter, d'un magasin avec une moyenne de 30 $ de l'heure à un magasin avec une moyenne de 1 $ de l'heure. Pensons-y comme une distribution qui représente **.
import numpy as np
import matplotlib.animation as animation
import matplotlib.pyplot as plt
from scipy.stats import expon
fig = plt.figure()
def update(a):
plt.cla()
x = np.arange(0, 1.2, 0.01)
y = [expon.cdf(i, scale = 1/a) for i in x]
plt.plot(x, y, label="expon λ= %d" % a)
plt.legend()
plt.ylim(0, 1.2)
plt.xlim(0, 1.2)
ani = animation.FuncAnimation(fig,
update,
interval=500,
frames = np.arange(30, 1, -1),
blit=True)
plt.show()
ani.save('Exponential_cumulative_distribution.gif', writer='pillow')
Vous pouvez voir que la courbe de distribution devient plus douce à mesure que $ \ lambda $ grandit. Je pense qu'il est convaincant qu'un magasin qui coûte en moyenne 30 $ de l'heure est plus susceptible d'avoir le prochain client à moins de 10 $ qu'un magasin que seulement 1 $ de personnes visitent.
Bien qu'elle apparaisse rarement en deuxième année du test statistique, elle est étroitement liée aux distributions qui ont été traitées jusqu'à présent, nous traitons donc également la distribution binomiale négative. La distribution suivie de $ X $, le nombre d'essais nécessaires pour un essai indépendant réussi (essai de Bernouy) avec seulement deux résultats, est appelée distribution binomiale négative.
P(X = k) = {}_{k-1} C _{r-1}p^r(1-p)^{k-r}
--Nombre d'essais jusqu'à ce que 1 sort 3 $ en continuant à lancer les dés --Nombre d'essais jusqu'à ce que la table apparaisse 5 $ en continuant à lancer des pièces
Etc. suivent une distribution binomiale négative.
Comme son nom l'indique, la distribution binomiale négative est une version étendue de la distribution binomiale et présente les différences suivantes.
Distribution binaire: nombre d'essais fixe, le nombre de succès est une variable de probabilité Distribution binomiale négative: nombre fixe de succès, le nombre d'essais est une variable de probabilité
Si vous définissez $ r = 1 $, ce sera une distribution géométrique et une expression. (Parce que la distribution géométrique est la distribution de probabilité du nombre d'essais jusqu'à ce qu'elle réussisse pour la première fois.)
De plus, lorsque $ \ lambda $ de la distribution de Poisson suit la distribution gamma, cela devient une distribution binomiale négative. (La distribution gamma sort du cadre du test statistique de deuxième niveau et n'est pas couverte dans cet article.)
De plus, lorsque la variable de probabilité $ X $ suit une distribution binomiale négative, la valeur attendue $ E (X) $ et la variance $ V (X) $ sont les suivantes.
E(X) = \frac{r}{p}
V(X) = \frac{k(1-p)}{p^2}
Par exemple, le nombre prévu d'essais requis pour obtenir 1 sur un dé 5 fois est $ \ frac {5} {\ frac {1} {6}} = 30 $.
Maintenant, déplaçons la probabilité de succès entre 10 $% et 90 $% pour la distribution de probabilité (distribution binomiale négative) du nombre d'essais requis pour qu'un événement réussisse 10 $ fois.
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
def comb_(n, k):
result = math.factorial(n) / (np.math.factorial(n - k) * np.math.factorial(k))
return result
def negative_binomial_dist(p, k, r):
result = comb_(k - 1, r - 1) * (p**r) * ((1 - p) ** (k - r))
return result
fig = plt.figure()
def update(a):
plt.cla()
r = 10
x = np.arange(r, 70, 1)
y = [negative_binomial_dist(a, i, r) for i in x]
plt.bar(x, y, align="center", width=0.4, color="blue",
alpha=0.5, label="Negative binomial p= " + "{:.1f}".format(a))
plt.legend()
plt.ylim(0, 0.4)
plt.xlim(10, 70)
ani = animation.FuncAnimation(fig,
update,
interval=1000,
frames = np.arange(0.1, 1, 0.1),
blit=True)
plt.show()
ani.save('Negative_binomial_distribution.gif', writer='pillow')
Vous pouvez voir que plus le taux de réussite est élevé, plus le nombre d'essais est proche de 10 $.
J'ai traité de diverses distributions de probabilité qui sont dans la gamme des questions pour la deuxième année du test statistique, mais en réalité elles sont toutes liées. Ce qui suit est un diagramme des relations mutuelles des distributions de probabilité que nous avons traitées jusqu'à présent.
Ce n'est pas clair si vous regardez uniquement les formules mathématiques, mais je pense que vous approfondirez votre compréhension si vous pensez à la relation entre les distributions de probabilité mutuelle tout en dessinant la distribution.
NEXT La prochaine fois, je parlerai de la distribution normale et de la distribution t.
Recommended Posts