[Grundlagen der modernen mathematischen Statistik mit Python] Kapitel 1: Wahrscheinlichkeit

Einführung

Diese Reihe ist eine kurze Erklärung von "The Basics of Modern Mathematical Statistics" von Tatsuya Kubogawa und lässt uns den Inhalt in Python implementieren. Ich habe Google Colaboratory (im Folgenden als Colab bezeichnet) für die Implementierung verwendet. Wenn Sie Vorschläge haben, würde ich mich freuen, wenn Sie diese in den Kommentarbereich schreiben könnten. Es ist möglicherweise nicht für diejenigen geeignet, die den gesamten Inhalt des Buches richtig verstehen möchten, da es mit der Haltung geschrieben ist, dass es schön wäre, wenn es ausgegeben werden könnte, indem nur der Teil berührt wird, von dem ich dachte, dass er einer Erklärung bedarf. Bitte beachten Sie, dass die Zahlen in diesem Artikel möglicherweise übersprungen werden, wenn die Formelnummern und Satz- / Definitionsindizes gemäß dem Buch geschrieben wurden.

Übersicht über Kapitel 1

Es beginnt mit der Definition der Wahrscheinlichkeit in der Mengenlehre. Sogar diejenigen, die sich nicht für eine solche Definition interessieren, können dieses Buch lesen. Der Autor selbst konzentriert sich auf die mathematische Statistik und geht nur kurz auf das theoretische System der Wahrscheinlichkeitstheorie ein. Der Inhalt von Kapitel 1 ist hauptsächlich ・ Definition der Wahrscheinlichkeit ・ Erläuterung der Begriffe ・ Bayes-Theorem ist. In 1.3 Evolutionary Matters verwenden wir das, was auf der vorherigen Seite geschrieben steht, um den Satz zu beweisen (leicht zu befolgen).

Wort

$$ Die Wahrscheinlichkeit besteht darin, ein zufälliges Phänomen in der Welt mathematisch zu beschreiben. Nehmen wir als Beispiel einen kubischen Würfel. Versuch: Ich habe einmal gewürfelt. Alle Ereignisse / Beispielbereich $ \ Omega $: $ \ Omega $ = \ {1,2,3,4,5,6 } Ereignis: Eine Teilmenge von $ \ Omega $, z. B. \ {1 }, \ {3,6 }. In diesem Buch wird es durch $ A $ oder $ B $ dargestellt. Produktmenge: $ A \ cap B = $ \ {$ x | x \ in A und x \ in B $ } $$ Summensatz: $ A \ cup B = $ \ {$ x | x \ in A oder x \ in B $ } $$ ・ ・ ・ Der Komplementsatz, der Differenzsatz, der symmetrische Unterschied usw. sind durch Zeichnen eines Ben-Diagramms leicht zu verstehen.

Definition

Die $$ Wahrscheinlichkeit wird durch die folgenden drei definiert.

$$ (P1) $ P (A) \ geq 0 $. Für alle $ A \ in \ mathcal {B} . (P2)P(\Omega)=1$. (P3) Wenn $ A_k \ in \ mathcal {B}, k = 1,2, ..., $ widersprüchlich sind, dh $ A_i \ cap A_j = \ Emptyset, i \ neq j $, $ P (\ bigcup_ {k = 1} ^ {\ infty} {A_k}) = \ sum_ {n = 1} ^ \ infty P (A_k) $ gilt.

$ \ mathcal B $ ist eine messbare Mengenfamilie und erfüllt die folgenden Eigenschaften: (M1) \emptyset\in\mathcal{B} , \Omega\in\mathcal{B}. (M2) Wenn $ A \ in \ mathcal {B} $, dann $ A ^ c \ in \ mathcal {B} $ ($ A ^ c $ ist eine Ergänzung von $ A $). (M3) $ A_k \ in \ mathcal {B}, k = 1,2,3 ..., $ dann $ \ bigcup_ {k = 1} ^ {\ infty} {A_k} \ in \ mathcal B $.

Es scheint schwierig zu sein, aber wenn Sie hier tiefer graben, kennen Sie den Landepunkt nicht. Ich denke, dass $ \ mathcal B $ eine Menge ist, die aus einer Teilmenge des Probenraums $ \ Omega $ besteht, und $ A $ ist eine Teilmenge von $ \ Omega $. Bitte. Wie bei (P3) wird es in Zukunft oft ausreichen, es im Ben-Diagramm darzustellen. $ \ Bigcup $ ist ein Symbol, das die Summe einer Mengenfamilie verwendet. $ \bigcup_{k=1}^{n}{A_k} = A_1 \cup A_2 \cup ...\cup A_n$ Kurz gesagt, die Wahrscheinlichkeit $ P $ ist eine Funktion der Menge $ A $ (Beispiel: Wie hoch ist die Wahrscheinlichkeit, einen Würfel zu würfeln und 2 zu erhalten? Antwort: $ P (A = $ \ {2 } $) = 1/6 $), P1 ~ Es trifft P3. (P1) Die Wahrscheinlichkeit ist immer 0 oder mehr (P2) Die Wahrscheinlichkeit, dass eines der Ereignisse eintritt, ist 1 (eines wird immer eintreten) (P3) Wenn die betrachteten Ereignisse widersprüchlich sind (die Menge wird beim Zeichnen im Ben-Diagramm nicht abgedeckt), kann die Wahrscheinlichkeit, dass ein Ereignis in der Summe der Ereignisse auftritt, durch die Summe der Wahrscheinlichkeiten ausgedrückt werden, mit denen jedes Ereignis auftritt. Es ist eine Denkweise. Ich habe danach viel geschrieben, aber ich denke nicht, dass es Sinn macht, es zu lesen, bis Sie Metrologie gelernt haben. Ich habe viel geschrieben, aber am Ende war es die übliche Wahrscheinlichkeit. Ich denke, es ist gut, wenn Sie das Bewusstsein haben, dass Wahrscheinlichkeit eine Funktion ist.

Bayes-Theorem

Es gibt etwas, das ich erklären muss, um den $$ Bayes'schen Satz zu verstehen.

· Bedingte Wahrscheinlichkeit

Definition:

Wenn es zwei Ereignisse gibt $ A $ und $ B $ und $ P (B)> 0 , $ P(A|B)=\frac{P(A \cap B)}{P(B)} \tag{1.1a} $$ Wird die bedingte Wahrscheinlichkeit von $ A $ genannt, wenn $ B $ gegeben ist.

$ P (A | B) $ bedeutet die Wahrscheinlichkeit, dass das Ereignis $ A $ unter der Bedingung auftritt, dass das Ereignis $ B $ eintritt. Dies gilt auch, wenn Sie $ A $ und $ B $ tauschen. Gleichung (1.1a) transponiert $P(A \cap B) = P(A|B)P(B) \tag{1.1b}$ Ist auch bequem.

・ Alle Wahrscheinlichkeitsformeln

$ B_1, B_2 ... $ sind widersprüchliche Ereignisse, und wenn $ P (B_k)> 0 ist, ist \ bigcup_ {k = 1} ^ {\ infty} {B_k} = \ Omega $ erfüllt, Ereignis $ A. Die Wahrscheinlichkeit von $ kann wie folgt ausgedrückt werden. $P(A)=\sum_{k=1}^\infty P(A|B_k)P(B_k) \tag{1.2}$

Es heißt, aber ich denke, es ist leicht zu verstehen, wenn Sie sich die Abbildung unten ansehen. Versuchen Sie es mit Gleichung (1.1b) gut zu beweisen.

(Es ist $ k \ to \ infty $)![795316b92fc766b0181f6fef074f03fa-9.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/594672/fb4318be-1240- c824-aec9-23633cdb55b6.png) (Das Bild stammt von https://bellcurve.jp/statistics/course/6444.html. Besonderer Dank!)

· Hauptthema

Der Bayes'sche Satz kann durch Kombinieren der bedingten Wahrscheinlichkeitsformel mit der vollständigen Wahrscheinlichkeitsformel bewiesen werden. Der genaue Ausdruck des Bayes'schen Theorems lautet wie folgt.

$ B_1, B_2 ... $ ist eine Folge widersprüchlicher Ereignisse, und $ P (B_k)> 0, \ bigcup_ {k = 1} ^ {\ infty} {B_k} = \ Omega $ ist erfüllt. Zu diesem Zeitpunkt wird für jedes Ereignis $ A $ die bedingte Wahrscheinlichkeit $ P (B_j | A) $ von $ B_j $, wenn $ A $ gegeben ist, wie folgt ausgedrückt. $P(B_j|A)= \frac{P(A|B_j)P(B_j)}{\sum_{k=1}^\infty P(A|B_k)P(B_k)}$

Ich denke, es ist einfacher zu verstehen, wenn Sie ein Diagramm zeichnen. Sie kann abgeleitet werden, indem mit der rechten Seite der bedingten Wahrscheinlichkeitsformel gespielt wird. Der Satz von Bayes schätzt die Ursache aus dem Ergebnis (wenn das Ereignis (Ergebnis) von $ A $ eintritt, wie hoch ist die Wahrscheinlichkeit, dass es auf $ B_j (j = 1,2, ...) $ zurückzuführen ist). Eine wichtige Idee ist.

Das ist alles für die Erklärung von Kapitel 1. Ich denke, dass Sie das Beispiel des Buches verstehen können, indem Sie Ihre Hand bewegen. Wenn Sie also ein Buch haben, versuchen Sie es bitte.

Lassen Sie uns Python ausführen

Ich habe ein passendes Beispiel gemacht, also werde ich es mit Python lösen.

Beispiel: Im Aquarium befinden sich 20 Corridras, 7 Guppys und 9 Neontetras. Normalerweise hat Corridras eine Chance von 0,1, Insekten zu essen, Guppy hat eine Chance von 0,8, Insekten zu essen, und Neon Tetra hat eine Chance von 0,3, Insekten zu essen. Eines Tages, als ich meine Augen schloss und zum Zeitpunkt der Fütterung ein Insekt warf, wurde das Insekt von einem Biss gefressen. Wie groß ist die Wahrscheinlichkeit, dass Guppy zu diesem Zeitpunkt ein Insekt gefressen hat?

Lassen Sie uns das lösen

Corydoras = 0
Guppy  = 1
Neontetora = 2

#Wahrscheinlichkeit, dass jeder Fisch normalerweise Insekten frisst
_p_eat = []
_p_eat.insert(Corydoras,0.1)
_p_eat.insert(Guppy,0.8)
_p_eat.insert(Neontetora,0.3)

#Fischverhältnis
_p_fish = []
_p_fish.insert(Corydoras,20/36)
_p_fish.insert(Guppy,7/36)
_p_fish.insert(Neontetora,9/36)

#Post-hoc-Wahrscheinlichkeit
def prob_eat(fish):
   if int(fish) == 0 :
      return _p_eat[fish]*_p_fish[fish]
   elif int(fish) == 1 :
      return _p_eat[fish]*_p_fish[fish]
   else:
      return _p_eat[fish]*_p_fish[fish]

#Wahrscheinlichkeit, dass Insekten gefressen haben
def probability(fish):
    return prob_eat(fish) / (prob_eat(Corydoras) + prob_eat(Guppy) + prob_eat(Neontetora))#Einfallsreichtum ist erforderlich, wenn die Gesamtzahl groß ist

print(round(probability(Guppy),2))

Wenn Sie dies tun,

0.54

Dann kam die Wahrscheinlichkeit heraus, dass Guppy es aß.

Kapitel 1 sieht so aus. Wenn Sie Lust dazu haben, werde ich es im nächsten Kapitel und darüber hinaus tun. Vielen Dank.

Verweise

"Grundlagen der modernen mathematischen Statistik" von Tatsuya Kubogawa

Recommended Posts

[Grundlagen der modernen mathematischen Statistik mit Python] Kapitel 1: Wahrscheinlichkeit
[Grundlagen der modernen mathematischen Statistik mit Python] Kapitel 3: Typische Wahrscheinlichkeitsverteilung
[Grundlagen der modernen mathematischen Statistik mit Python] Kapitel 2: Wahrscheinlichkeitsverteilung und Erwartungswert
1. Mit Python gelernte Statistiken 2. Wahrscheinlichkeitsverteilung [Gründliches Verständnis von scipy.stats]
Grundlagen der binärisierten Bildverarbeitung durch Python
Python-Grundlagen ①
Grundlagen von Python ①
[Python] Kapitel 02-04 Grundlagen des Python-Programms (Informationen zu Kommentaren)
[Python] Kapitel 02-03 Grundlagen von Python-Programmen (Eingabe / Ausgabe)
[Python of Hikari-] Kapitel 05-06 Steuerungssyntax (Grundlagen der Einschlussnotation)
[Python] Kapitel 02-01 Grundlagen von Python-Programmen (Operationen und Variablen)
[Python] Kapitel 02-02 Grundlagen von Python-Programmen (Umgang mit Zeichenketten)
1. Mit Python 2-1 gelernte Statistiken. Wahrscheinlichkeitsverteilung [diskrete Variable]
[Hikari-Python] Kapitel 09-01 Klassen (Grundlagen von Objekten)
[Python] Kapitel 02-05 Grundlagen von Python-Programmen (Zeichenfolgenoperationen / -methoden)
Grundlagen der Python-Scraping-Grundlagen
# 4 [Python] Grundlagen der Funktionen
Grundlagen von Python: Ausgabe
[Python] Kapitel 02-06 <Zusatz> Grundlagen von Python-Programmen (Umgang mit numerischen Werten)
[Kapitel 3] Einführung in Python mit 100 Klopfen Sprachverarbeitung
[Kapitel 2] Einführung in Python mit 100 Klopfen Sprachverarbeitung
[Grundlagen der Datenwissenschaft] Sammeln von Daten aus RSS mit Python
[Kapitel 4] Einführung in Python mit 100 Klopfen Sprachverarbeitung
Python: Grundlagen der Verwendung von Scikit-Learn ①
Python x GIS-Grundlagen (1)
Python x GIS-Grundlagen (3)
Paiza Python Primer 5: Grundlagen von Wörterbüchern
Mit Flask erstellte SNS Python-Grundlagen
[Hikari-Python] Kapitel 09-03 Klasse (Vererbung)
Richten Sie mit Homebrew eine moderne Python-Umgebung ein
100 Sprachverarbeitungsklopfen mit Python (Kapitel 1)
100 Sprachverarbeitungsklopfen mit Python (Kapitel 3)
Lebensspiel mit Python! (Conways Spiel des Lebens)
10 Funktionen von "Sprache mit Batterie" Python
Überprüfung der Grundlagen von Python (FizzBuzz)
1. Mit Python 1-1 gelernte Statistiken. Grundlegende Statistiken (Pandas)
Grundlagen von Python x GIS (Teil 2)
Grundlagen zum Berühren von MongoDB mit MongoEngine
Implementierung der Dyxtra-Methode durch Python
Koexistenz von Python2 und 3 mit CircleCI (1.0)
Führen Sie mit Python, matplotlib, einen logarithmischen Normalwahrscheinlichkeitsplot durch
Informationen zur Grundlagenliste der Python-Grundlagen
Grundlegendes Studium von OpenCV mit Python
Lernen Sie die Grundlagen von Python ① Grundlegende Anfänger
Berechnen Sie die Wahrscheinlichkeit, eine Tintenfischmünze zu sein, mit dem Bayes-Theorem [Python]
[Einführung in Datenwissenschaftler] Grundlagen der Wahrscheinlichkeit und Statistik ♬ Wahrscheinlichkeits- / Wahrscheinlichkeitsvariable und Wahrscheinlichkeitsverteilung
Rehabilitation von Python- und NLP-Kenntnissen ab "100 Language Processing Knock 2015" (Kapitel 1)
Python-Lernnotiz für maschinelles Lernen von Chainer Kapitel 13 Grundlagen des neuronalen Netzwerks
Python: Grundlagen der Bilderkennung mit CNN
[Beispiel für eine Python-Verbesserung] Python mit Codecademy lernen
Versuchen Sie eine Formel mit Σ mit Python
[Lernnotiz] Grundlagen des Unterrichts mit Python
[Python3] Verstehe die Grundlagen von Beautiful Soup
Überprüfen Sie die Existenz der Datei mit Python
Verstopft mit Python-Update der GCP-Konsole ①
Einfache Einführung der Spracherkennung mit Python
100 Sprachverarbeitungsklopfen mit Python (Kapitel 2, Teil 2)
Ich kannte die Grundlagen von Python nicht
100 Sprachverarbeitungsklopfen mit Python (Kapitel 2, Teil 1)