[PYTHON] Battre la fonction de densité de probabilité de la distribution normale

Synopsis

f(x)=\frac{1}{\sqrt{2\piσ^2}}e^{-\frac{(x-μ)^2}{2σ^2}}

La distribution normale est l'une des distributions typiques et est une distribution qui apparaît fréquemment dans le domaine des statistiques. Cependant, la fonction de densité de probabilité de la distribution normale est très compliquée comme la formule ↑ et a enterré de nombreux débutants. Je me souviens aussi d'avoir mal à la tête et des étourdissements lorsque j'ai vu cette formule pour la première fois lorsque j'ai commencé à étudier les statistiques.

Dans cet article, la partie coefficient ($ \ frac {1} {\ sqrt {2 \ piσ ^ 2}} ) et la partie exposant ( - \ frac {(x-μ) ^ 2} {2σ ^ 2) de l'équation ↑ } $) et décrivez pourquoi il a été formé comme ceci.

Partie d'index

De nombreux événements dans le monde ont la plus grande probabilité de prendre une valeur moyenne, et la probabilité de prendre cette valeur diminue à mesure que la distance par rapport à la valeur moyenne augmente.

Une expression qui exprime simplement cela est

f(x)=e^{-x^2}

est. Dans un graphique,

import numpy as np
import matplotlib.pyplot as plt

def normal_dist(x, ave = 0, disp=1):
    return np.exp((-(x-ave)**2)/(2*disp**2))

x = np.linspace(-3, 3)
y = normal_dist(x)

plt.plot(x,y)
plt.grid(axis="both")
plt.show()

image.png Cela ressemble à une montagne.

Cette formule est moins polyvalente car un seul graphique peut être dessiné. Donc, ① Déplacer à gauche et à droite du graphique ② Changer la largeur du graphique Ajoutez la fonction de.

Se déplacer à gauche et à droite du graphique

En changeant la partie $ x $ en $ x-μ $, vous pouvez déplacer la position de $ x $, qui prend la valeur maximale.

f(x)=e^{-(x-μ)^2}

Cela devient une telle formule. Modifions la valeur de $ μ $ et voyons le changement dans le graphique.

color = ["b", "g", "r", "c", "m"]
for i, col in enumerate(color):
    y = normal_dist(x, i)
    plt.plot(x, y, color=col)
    
plt.show()

image.png Le graphique s'est déplacé vers la droite lorsque $ μ $ augmentait.

Changer la largeur du graphique

Vous pouvez changer la largeur en multipliant la partie exposant par $ \ frac {1} {2σ ^ 2} $.

f(x)=e^{-\frac{x^2}{2σ^2}}
x = np.linspace(-10, 10)
color = ["b", "g", "r", "c", "m"]
for i, col in enumerate(color):
    y = normal_dist(x, 0, i+1)
    plt.plot(x, y, color=col)
    
plt.show()

image.png

J'ai réussi à changer la largeur. Le carré de σ doit gérer à la fois le positif et le négatif, et la multiplication de 2 $ sert à faciliter le calcul.

Partie facteur

Puisqu'il s'agit d'une fonction de densité de probabilité, la superficie totale doit être de 1 $. Par conséquent, multipliez la fonction par une valeur appropriée. Mettez un coefficient pratique comme $ c $ et

\int_{-\infty}^{\infty}ce^{-\frac{(x-μ)^2}{2σ^2}}dx=1

Pour trouver $ c $.

À première vue, cela peut sembler un calcul compliqué,

\int_{-\infty}^{\infty}e^{-ax^2}dx=\sqrt{\frac{\pi}{a}}

En utilisant cette formule intégrale gaussienne, si $ a = \ frac {1} {2σ ^ 2} $

c=\frac{1}{\sqrt{2\piσ^2}}

Cela devient facile à calculer. La solution est maintenant le coefficient de la formule en haut.

Après tout, cette formule était une formule qui définit la fonction de densité de probabilité en rendant $ f (x) = e ^ {-x ^ 2} $ polyvalent et en ajustant les coefficients. Je suis heureux.

Site référencé

https://to-kei.net/distribution/normal-distribution/density-function-derivation/ Compréhension sémantique de la fonction de densité de la distribution normale

https://mathtrain.jp/gauss Deux preuves de la formule intégrale gaussienne

https://bellcurve.jp/statistics/course/7797.html 14-1. Distribution normale

Recommended Posts

Battre la fonction de densité de probabilité de la distribution normale
Essayez de transcrire la fonction de masse stochastique de la distribution binomiale en Python
Vérification de la distribution normale
[Python] Note: Fonction auto-conçue pour trouver la zone de distribution normale
Étapes pour calculer la probabilité d'une distribution normale
Tweetez la probabilité de précipitations dans le cadre de la fonction de bot
Vérifiez la nature atrophique de la distribution de probabilité en Python
Comprendre la signification des formules de distribution normale complexes et bizarres
Exercice de dessin de diagramme PRML 1.4 Transformation non linéaire de la fonction de densité de probabilité
La probabilité de précipitation est-elle correcte?
Tester l'adéquation de la distribution
Dérivez soigneusement la plage de quadrants de la distribution normale standard depuis le début
Précautions lors de la superposition de la fonction de densité de probabilité et de l'histogramme dans matplotlib
[Python3] Réécrire l'objet code de la fonction
A propos des arguments de la fonction setup de PyCaret
À propos de l'équation normale de la régression linéaire
Text mining: distribution de densité de probabilité sur hypersphère et clustering de texte avec KMeans
J'ai essayé la fonction de tableau croisé dynamique des pandas
Récupérer l'appelant d'une fonction en Python
Faites correspondre la distribution de chaque groupe en Python
Concept de raisonnement bayésien (2) ... Estimation bayésienne et distribution de probabilité
Correction des arguments de la fonction utilisée dans map
Calculer la probabilité de valeurs aberrantes sur les moustaches de la boîte
[CodeIQ] J'ai écrit la distribution de probabilité des dés (du cours de mathématiques CodeIQ pour l'apprentissage automatique [Distribution de probabilités])
Distribution normale bivariée
Trouver la fonction de distribution cumulative par tri (version Python)
Tracer et comprendre la distribution normale multivariée en Python
#Une fonction qui renvoie le code de caractère d'une chaîne de caractères
Dessinez sur Jupyter en utilisant la fonction de tracé des pandas
J'ai examiné l'argument class_weight de la fonction softmax_cross_entropy de Chainer.
Python: Diagramme de distribution de données bidimensionnelle (estimation de la densité du noyau)
Comment frapper le document de Magic Function (Line Magic)
Vérifiez le type et la version de la distribution Linux
Comment trouver la quantité moyenne d'informations (entropie) de la distribution de probabilité d'origine à partir de l'échantillon