Während des Studiums statistischer Tests kommen verschiedene Wahrscheinlichkeitsverteilungen heraus, aber ich denke, es ist schwierig, ein Bild zu erhalten, wenn man nur die mathematischen Formeln betrachtet. Zeichnen Sie beim Verschieben verschiedener Parameter mit Python die Wahrscheinlichkeitsverteilung und hängen Sie das Bild an. (Der vorherige Beitrag war hier. Letztes Mal haben wir uns auf die Binomialverteilung und die Poisson-Verteilung konzentriert.)
Zur Erläuterung der Wahrscheinlichkeitsverteilung wird auf Folgendes verwiesen.
Dieser Artikel enthält keine detaillierten Erklärungen wie die Ableitung verschiedener mathematischer Formeln, sondern konzentriert sich darauf, die Form jeder Verteilung und die Bedeutung dieser Verteilung zu erfassen. Dieser Artikel befasst sich mit den folgenden drei Distributionen.
Die Häufigkeit, mit der $ X $ bis zum ersten erfolgreichen unabhängigen Versuch (Bernouy-Versuch) mit nur zwei Konsequenzen folgt, z. B. "ob die Münze auf die Vorder- oder Rückseite geworfen wird" * * Wird als geometrische Verteilung bezeichnet. Es ist sehr ähnlich, da die Binomialverteilung der Anzahl der erfolgreichen ** $ n $ mal ** folgt. (Informationen zur Binomialverteilung finden Sie in Vorheriger Artikel.)
――Die Anzahl, bis 1 zum ersten Mal herauskommt, nachdem Sie weiter gewürfelt haben ――Die Häufigkeit, bis die Vorderseite zum ersten Mal angezeigt wird, nachdem weiterhin Münzen geworfen wurden
Folgen Sie einer geometrischen Verteilung.
Die Formel für die stochastische Massenfunktion der geometrischen Verteilung wird wie folgt ausgedrückt.
P(X = k) = p(1-p)^{k-1}
$ p $ ist die Erfolgsrate des Versuchs.
Wenn die Wahrscheinlichkeitsvariable $ X $ einer geometrischen Verteilung folgt, sind der erwartete Wert $ E (X) $ und die Varianz $ V (X) $ wie folgt.
E(X) = \frac{1}{p}
V(X) = \frac{1-p}{p^2}
Beispielsweise beträgt die erwartete Anzahl von Versuchen, bis 1 zum ersten Mal nach dem Würfeln gewürfelt wird, $ \ frac {1} {\ frac {1} {6}} = 6 $.
Zeichnen wir nun, wie sich die Form der geometrischen Verteilung ändert, wenn sich der Wert von $ p $ (Erfolgswahrscheinlichkeit) ändert.
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')
Hier ist die geometrische Verteilung von Ereignissen mit einer Erfolgswahrscheinlichkeit von 10 $% zu Ereignissen mit einer Erfolgswahrscheinlichkeit von 90 $%. Ich denke, Sie können intuitiv verstehen, dass die Erfolgswahrscheinlichkeit bei geringer Anzahl von Versuchen umso höher ist, je höher die Erfolgsquote ist. Es stellt sich heraus, dass es fast ein Wunder ist, $ 10 $ in Folge für ein Event mit einer Erfolgswahrscheinlichkeit von $ 90 $% zu scheitern.
Darüber hinaus hat die geometrische Verteilung die Eigenschaft, dass die Wahrscheinlichkeit, dass ein Ereignis auftritt, nicht durch das zuvor aufgetretene Ergebnis beeinflusst wird. Das Bild ist, dass nur weil die Vorderseite einer Münze $ 5 $ hintereinander erscheint, dies nicht bedeutet, dass eine hohe Wahrscheinlichkeit besteht, dass sie als nächstes erscheint. Dies nennt man ** memoryless **. (Dies bedeutet, dass frühere Informationen nicht gespeichert werden.)
Die Exponentialverteilung ist eine Wahrscheinlichkeitsverteilung, die die Wahrscheinlichkeit darstellt, dass das Intervall zwischen dem Auftreten von Ereignissen, die durchschnittlich $ \ lambda $ mal pro Zeiteinheit auftreten, $ x $ Zeiteinheit ** beträgt und in den folgenden Beispielen verwendet wird.
Die Wahrscheinlichkeitsdichtefunktion der Exponentialverteilung wird wie folgt ausgedrückt.
\begin{equation}
f(x)=
\left\{
\begin{aligned}
&\lambda \mathrm{e}^{-\lambda x} &(x\geq0) \\
&0 &(x<0)\\
\end{aligned}
\right.
\end{equation}
Wenn die Wahrscheinlichkeitsvariable $ X $ der Exponentialverteilung folgt, sind der erwartete Wert $ E (X) $ und die Varianz $ V (X) $ wie folgt.
E(X) = \frac{1}{\lambda}
V(X) = \frac{1}{\lambda}
Das erwartete Intervall zwischen Ereignissen, die $ 5 $ pro $ 1 $ Stunde (Zeiteinheit) auftreten, beträgt beispielsweise $ \ frac {1} {5} Stunden = 12 Minuten $. Ich denke es passt irgendwie zum Gefühl.
Zeichnen wir nun, wie sich die Form der Exponentialverteilung ändert, wenn sich der Wert von $ \ lambda $ (die durchschnittliche Anzahl von Ereignissen, die pro Zeiteinheit auftreten) ändert.
Stellen wir uns das beispielsweise als eine Verteilung vor, die das Zeitintervall zwischen Kundenbesuchen darstellt, von einem Geschäft, in dem durchschnittlich 30 Kunden pro Stunde besuchen, bis zu einem Geschäft, in dem nur durchschnittlich 1 Kunde besucht wird **.
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')
Können Sie sehen, dass die Form der Verteilung der geometrischen Verteilung irgendwie ähnlich ist? ** Tatsächlich ist die kontinuierliche Version der geometrischen Verteilung die Exponentialverteilung. ** (Wenn Sie die Anzahl der Versuche in der geometrischen Verteilung erhöhen und eine geeignete Grenze festlegen, die die Erfolgswahrscheinlichkeit näher an $ 0 $ bringt, wird dies zu einer Exponentialverteilung.)
Zusätzlich gibt es drei Punkte in Form der Exponentialverteilung.
Der erste Punkt lautet: "Ein Geschäft mit durchschnittlich 15 US-Dollar wird in 1 Stunde früher kommen als ein Geschäft mit durchschnittlich 5 US-Dollar." Es ist ein Bild, also denke ich, dass es leicht zu verstehen ist.
Der zweite und dritte Punkt sind ** "Wenn ein Kunde in das Geschäft kommt, ist es am wahrscheinlichsten, dass der nächste Kunde unmittelbar danach in das Geschäft kommt" **. Ich denke, es gibt einige Leute, die das Gefühl haben, dass etwas damit nicht stimmt. Tatsächlich wird es aus der ** Speicherlosigkeit ** der Indexverteilung abgeleitet, und nur weil ein Kunde für $ 1 $ ankommt, bedeutet dies nicht, dass der nächste Kunde für eine Weile nicht kommt oder dass es einfach ist, den Laden hintereinander zu besuchen. Wir gehen davon aus, dass Kundenbesuche völlig zufällig sind. Daher ist die Idee, dass ** die Wahrscheinlichkeit, dass es bald auftritt, höher ist als die Zeit, in der es für eine lange Zeit nicht auftritt **. (Diese Unwissenheit ist dieselbe wie die, die zum Zeitpunkt der geometrischen Verteilung auftrat.)
Was wir mehr über unsere täglichen Gefühle wissen möchten, ist die Wahrscheinlichkeit, dass der nächste Kunde genau 10 $ Minuten später kommt, und nicht die Wahrscheinlichkeit, dass der nächste Kunde innerhalb von ** 10 $ Minuten ** kommt. In diesem Fall muss alles hinzugefügt werden, von der Wahrscheinlichkeit, dass der nächste Kunde das Geschäft besucht, 0 $ Sekunden bis zu der Wahrscheinlichkeit, dass es 10 $ Minuten sind.
Zu diesem Zeitpunkt wird die folgende kumulative Dichtefunktion verwendet, die das Ergebnis der Integration der Wahrscheinlichkeitsdichtefunktion ist. ** Stellt die Wahrscheinlichkeit dar, dass ein Ereignis, das durchschnittlich $ \ lambda $ mal pro Zeiteinheit auftritt, innerhalb von $ x $ Zeiteinheit auftritt **.
{{\begin{eqnarray}
F(x) &=& 1 - \mathrm{e}^{-\lambda x} \\
\end{eqnarray}}
}
Zeichnen wir nun, wie sich die Form des Diagramms der kumulativen Dichtefunktion ändert, wenn sich der Wert von $ \ lambda $ (die durchschnittliche Anzahl von Ereignissen, die pro Zeiteinheit auftreten) ändert.
Nach wie vor ** Wahrscheinlichkeit, wie viele Minuten der nächste Kunde für einen Besuch benötigt, von einem Geschäft mit durchschnittlich 30 USD pro Stunde bis zu einem Geschäft mit durchschnittlich 1 USD pro Stunde. Stellen wir uns das als eine Distribution vor, die ** darstellt.
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')
Sie können sehen, dass die Verteilungskurve sanfter wird, wenn $ \ lambda $ wächst. Ich denke, es ist überzeugend, dass ein Geschäft mit durchschnittlich 30 US-Dollar pro Stunde den nächsten Kunden eher innerhalb von 10 US-Dollar hat als ein Geschäft, das nur 1 US-Dollar besucht.
Obwohl es in der zweiten Klasse des statistischen Tests selten vorkommt, hängt es eng mit den bisher behandelten Verteilungen zusammen, sodass wir uns auch mit der negativen Binomialverteilung befassen. Die Verteilung gefolgt von $ X $, der Anzahl der Versuche, die für einen erfolgreichen, unabhängigen Versuch (Bernouy-Versuch) mit nur zwei Ergebnissen erforderlich sind, wird als negative Binomialverteilung bezeichnet.
P(X = k) = {}_{k-1} C _{r-1}p^r(1-p)^{k-r}
Folgen Sie einer negativen Binomialverteilung.
Wie der Name schon sagt, ist die negative Binomialverteilung eine erweiterte Version der Binomialverteilung und weist die folgenden Unterschiede auf.
Binäre Verteilung: Feste Anzahl von Versuchen, Anzahl von Erfolgen ist eine Wahrscheinlichkeitsvariable Negative Binomialverteilung: Feste Anzahl von Erfolgen, Anzahl von Versuchen ist eine Wahrscheinlichkeitsvariable
Wenn Sie $ r = 1 $ setzen, ist dies eine geometrische Verteilung und ein Ausdruck. (Weil die geometrische Verteilung die Wahrscheinlichkeitsverteilung der Anzahl der Versuche ist, bis sie zum ersten Mal erfolgreich ist.)
Wenn außerdem $ \ lambda $ der Poisson-Verteilung der Gamma-Verteilung folgt, wird es zu einer negativen Binomialverteilung. (Die Gammaverteilung geht über den Rahmen des statistischen Tests der zweiten Klasse hinaus und wird in diesem Artikel nicht behandelt.)
Wenn die Wahrscheinlichkeitsvariable $ X $ einer negativen Binomialverteilung folgt, sind der erwartete Wert $ E (X) $ und die Varianz $ V (X) $ wie folgt.
E(X) = \frac{r}{p}
V(X) = \frac{k(1-p)}{p^2}
Zum Beispiel ist die erwartete Anzahl von Versuchen, die erforderlich sind, um fünfmal 1 auf einen Würfel zu bekommen, $ \ frac {5} {\ frac {1} {6}} = 30 $.
Verschieben wir nun die Erfolgswahrscheinlichkeit zwischen 10 $% und 90 $% für die Wahrscheinlichkeitsverteilung (negative Binomialverteilung) der Anzahl der Versuche, die erforderlich sind, damit ein Ereignis 10 $ erfolgreich ist.
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')
Sie können sehen, dass je höher die Erfolgsrate, desto näher an 10 $ die Anzahl der Versuche zum Erfolg liegt.
Ich habe mich mit verschiedenen Wahrscheinlichkeitsverteilungen befasst, die im Bereich der Fragen für die zweite Klasse des statistischen Tests liegen, aber in Wirklichkeit sind sie alle miteinander verbunden. Das Folgende ist ein Diagramm der gegenseitigen Beziehungen der Wahrscheinlichkeitsverteilungen, mit denen wir uns bisher befasst haben.
Es ist nicht klar, ob Sie nur die mathematischen Formeln betrachten, aber ich denke, dass Sie Ihr Verständnis vertiefen werden, wenn Sie über die Beziehung zwischen den gegenseitigen Wahrscheinlichkeitsverteilungen nachdenken, während Sie die Verteilung tatsächlich zeichnen.
NEXT Nächstes Mal werde ich über Normalverteilung und t-Verteilung sprechen.
Recommended Posts