Table of Contents
1. 多変量正規分布に従う確率変数をPythonで作成する
さて、多変量正規分布に従う確率変数を作成したことがたまにありますよね?
今回はPythonで作成してみます。
多変量標準正規分布に従う確率変数を作成します。
このデータは英語のサイトではWhite dataと呼ばれたりWhitening transformationの文脈で使用されていますが、日本語のサイトではwhite dataで検索しても日本語のサイトでは情報を見つけることができませんでした。日本では一般的な呼称ではないのでしょうか?
共分散行列の性質について勉強を進めていたところWhite dataが出てきたの、Pythonで実際に作成してみよう!と考えた次第です。
2. scipy.stats.multivariate_normal
を使用して確率変数を作成します。
3. method rvs
method rvs を使用して確率変数を作成します。
下記のパラメータを指定することで作成できます。
-
mean
-
cov
-
size
-
random_state
3.1. mean
今回は標準正規分布を使用するので平均は0。
3.2. cov
今回は標準正規分布を使用するので単位行列。 === size
作成するサンプル数です。任意の数を指定します。
3.3. random_state
再実行しても出力結果が変わらないようにseedとして任意の数を指定します。
4. 2変量標準正規分布に従う確率変数のサンプル1000個を作成する
試しに2変量の確率変数を作成してみます。
create_random_variable.py
import numpy as np
from scipy.stats import multivariate_normal
random_state = 123
M = 2
size=1000
E = np.eye(M)
m = np.zeros(M)
X = multivariate_normal.rvs(
mean=m,
cov=E,
size=size,
random_state=random_state
)
5. M変量多変量正規分布に従う確率変数を作成する
上記のコードのMの値を任意の数に変更すればM変量の確率変数を作成することができます。
6. まとめ
今回は多変量正規分布に従う確率変数をPythonで作成してみました。
今回は以上です。