正規分布については以下の記事にまとめています。
目次
ガウス積分とは
ガウス積分とは、以下のように定義される積分のことです。
$$\int_{-\infty}^{\infty}e^{-\alpha x^2}dx=\sqrt{\frac{\pi}{\alpha}}$$
ガウス積分の証明
初めに、求めるガウス積分の値をIとします。
このとき、
$$I=\int_{-\infty}^{\infty}e^{-\alpha x^2}dx=\int_{-\infty}^{\infty}e^{-\alpha y^2}dy$$
が成り立つことから、
$$I^2=\iint_{-\infty}^{\infty}e^{-\alpha (x^2+y^2)}dxdy$$
と表すことができます。
ここで、
$$x=r\cos{\theta},y=r\sin{\theta}$$
とおくとヤコビアンは
$$\begin{bmatrix}\frac{\partial x}{\partial r} & \frac{\partial x}{\partial \theta}\\\frac{\partial y}{\partial r}&\frac{\partial x}{\partial \theta}\\\end{bmatrix}=\begin{bmatrix} cos{\theta}&-rsin{\theta} \\sin{\theta}&rcos{\theta}\\\end{bmatrix}$$
$$J_f=r$$
であるから、極座標変換を行い
$$I^2 = \int_{0}^{\infty}re^{-\alpha (r^2)}dr\int_{0}^{2\pi}d\theta$$
を得ます。
上記の式を計算すると
$$I^2 = 2\pi\left[\frac{e^{-\alpha r^2}}{2\alpha}\right]^\infty_0=\frac{\pi}{\alpha}$$
$$(\lim_{r \to \infty}2\pi\frac{e^{-\alpha r^2}}{2\alpha}=0より)$$
よって
$$I=\int_{-\infty}^{\infty}e^{-\alpha x^2}dx=\sqrt{\frac{\pi}{\alpha}}$$
となります。
正規分布との関係
$$f(x;\mu,\sigma^2)=\dfrac{1}{\sqrt{2\pi\sigma^2}}\exp(-\dfrac{(x-\mu)^ 2}{2\sigma^ 2})$$
ここで、正規分布の確率密度関数を改めてよく見てみます。
$$x-\mu=t$$
とおくと全区間積分は
$$\int_{-\infty}^{\infty}f(x;\mu,\sigma^2)=\dfrac{1}{\sqrt{2\pi\sigma^2}}\int_{-\infty}^{\infty}e^{-\frac{t^2}{2{\sigma}^2}}dt$$
と表されます。
ここで、ガウス積分を用いると、
$$\int_{-\infty}^{\infty}e^{-\frac{t^2}{2{\sigma}^2}}dt=\sqrt{2\sigma^2\pi}$$
であるから、
$$\int_{-\infty}^{\infty}f(x;\mu,\sigma^2)=1$$
が成り立ちます。
せっかくなので、Pythonを使ってゴリ押しで計算してみたいと思います。
全区間積分の値は標準偏差と平均の値によらないとわかったので、標準正規分布を用いて全区間積分を行ってみます。
import sympy as sp
import numpy as np
sp.init_printing(use_unicode=True)
x = sp.symbols("x")
sigma = 1
mu = 0
f = 1/(sp.sqrt(np.pi*2))*sp.exp(-(x**2)/2)
print(sp.integrate(f,(x,'-oo','oo')).evalf())計算結果
1.00000000000000ちゃんと1になってますね。
