[PYTHON] Comprendre la signification des formules de distribution normale complexes et bizarres

La distribution normale joue un rôle très important dans les statistiques. La formule (fonction de densité) qui exprime la distribution normale est


\Phi(x) = \frac{1}{\sqrt{2\pi\sigma^2}}\exp \left( -\frac{(x-\mu)^2}{2\sigma^2} \right)

Mais c'est une formule très compliquée ...

Cela semble un peu plus facile avec une distribution normale standard avec une variance de $ \ sigma ^ 2 = 1 $ et une moyenne de $ \ mu = 0 $.


\phi(x) = \frac{1}{\sqrt{2\pi}}\exp \left( -\frac{x^2}{2} \right)

Cela ressemble à ceci dans un graphique. C'est un type de cloche. (Ci-après, je dessinerai un graphe de manière appropriée avec python)

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(-4,4, 100)
y = (1/np.sqrt(2*np.pi))*np.exp(-x**2/2)

plt.ylim(0,0.45)
plt.plot(x,y)
plt.show()

normdist0.png

En premier lieu, la distribution normale est lisse et symétrique, et je pense que le point de départ est que nous voulons exprimer la probabilité avec une fonction qui est regroupée en un point. Alors franchissez le pas et utilisez une fonction quadratique


f(x) = x^2

Si vous le dessinez dans un graphique comme

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(-10,10, 100)
y = x**2

plt.plot(x,y)
plt.show()

normdist.png

Hmmm, je suis malade. Si tel est le cas, il ne sera pas distribué, alors multipliez-le par moins et tournez-le vers le haut.


f(x) = -x^2

x = np.linspace(-1,1, 100)
y = -x**2

plt.xlim(-1.2,1.2)
plt.ylim(-1,0.2)
plt.plot(x,y)
plt.show()

normdist3.png

Ça devient un peu comme ça. Pour allonger l'ourlet et le faire en forme de cloche, vous pouvez le monter sur $ e $.


f(x) = e^{-x^2}
x = np.linspace(-1,1, 100)
y = np.exp(-x**2)

plt.xlim(-1.5,1.5)
plt.ylim(0,1.2)
plt.plot(x,y)
plt.show()

normdist4.png

La forme est maintenant tout à fait normale. L'origine de la forme de cette distribution normale était $ e ^ {-x ^ 2} $.

Après cela, $ x $ est $ 1 / \ sqrt {2} $ afin qu'il puisse être calculé facilement lorsqu'il est différencié. Autrement dit, convertissez la variable en $ y = \ sqrt {2} x $.


g(y) = \exp \left(-\frac{y^2}{2} \right)
x = np.linspace(-3,3, 500)
y1 = np.exp(-(x**2))
y2 = np.exp(-(x**2)/2)

plt.xlim(-3,3)
plt.ylim(0,1.1)
plt.plot(x,y1,"b", label="exp(-x^2)")
plt.plot(x,y2,"g", label="exp(-(x^2)/2")
plt.legend()
plt.show()

normdist5.png

Il s'est répandu un peu sur le côté.

Il faut intégrer pour que l'aire de ce f (x) devienne 1 (car c'est une probabilité, et si tous les événements possibles sont ajoutés, elle devient 100%).

D'après [Gauss Integral (voir Wikipedia)](http://ja.m.wikipedia.org/wiki/Gauss Integral), la valeur intégrée pour toute la plage de $ x $ est


\int_{-\infty}^{\infty} e^{-x^2}dx = \sqrt{\pi}

Donc, si vous appliquez la transformation variable $ y = \ sqrt {2} x $


\int_{-\infty}^{\infty} \exp \left( {-\frac{y^2}{2}}\right)dy = \sqrt{2\pi}

est. Divisez les deux côtés par $ \ sqrt {2 \ pi} $


\int_{-\infty}^{\infty} \frac{1}{\sqrt{2\pi}} \exp \left( {-\frac{y^2}{2}}\right)dy = 1

J'ai eu la formule de la distribution normale standard: blush:


x = np.linspace(-1,1, 100)
y = np.exp(-(x**2)/2)

plt.xlim(-1.5,1.5)
plt.ylim(0,1.2)
plt.plot(x,y)
plt.show()

normdist6.png

Cette formule a été ajustée en fonction de $ e ^ {-x ^ 2} $ afin qu'elle soit 1 lorsqu'elle est intégrée pour obtenir l'aire.

Recommended Posts

Comprendre la signification des formules de distribution normale complexes et bizarres
Compréhension complète des concepts de Bellmanford et Dyxtra
Battre la fonction de densité de probabilité de la distribution normale
Organiser la signification des méthodes, des classes et des objets
Le sens de soi
Vérification de la distribution normale
Tracer et comprendre la distribution normale multivariée en Python
Étapes pour calculer la probabilité d'une distribution normale
Vérifiez le type et la version de la distribution Linux
Relation et erreur d'approximation de la distribution binomiale, distribution de Poisson, distribution normale, distribution supergéométrique
[Statistiques] Visualisons la relation entre la distribution normale et la distribution du chi carré.
Installer et gérer plusieurs environnements de la même distribution sur WSL
Dérivez soigneusement la plage de quadrants de la distribution normale standard depuis le début
L'histoire de Python et l'histoire de NaN
Tester l'adéquation de la distribution
Comprendre et implémenter l'algorithme Tonelli-Shanks (2)
[Python] Comprendre le potentiel_field_planning de Python Robotics
Comprendre et implémenter l'algorithme Tonelli-Shanks (1)
J'ai essayé de visualiser la tranche d'âge et la distribution des taux d'Atcoder
[Python] Note: Fonction auto-conçue pour trouver la zone de distribution normale
[Comprendre en 3 minutes] Le début de Linux
Ceci et celui de la notation d'inclusion.
Une compréhension approximative de python-fire et un mémo
Signification des modèles et paramètres d'apprentissage en profondeur
Revoir le concept et la terminologie de la régression
L'histoire d'essayer deep3d et de perdre
À propos de l'équation normale de la régression linéaire
Résolution du gain complexe des observations d'interféromètre
Compréhension complète du threading Python et du multitraitement