プロが教える店舗&オフィスのセキュリティ対策術

PythonのNumpyのrandom.multivariate_normal()の使い方ですが、たとえば、2次元で

np.random.multivariate_normal([2,2], [[1,0],[1,2]], 5)

みたいな使われ方をしているようなのですが、ここで使われている共分散行列
[[1,0],[1,2]]は対称行列でなくてもかまわないのでしょうか?その場合、xyとyx
の分散が違うというのはどのように理解すればいいのでしょうか?

多分、何か基本的なことが理解できていないような気がします。

質問者からの補足コメント

  • 2次元の場合、対角の値を同じにした場合、共分散(対称行列)だと、y = x
    の軸に対称にばらついたガウス分布になると思うのですが、わざとに共分散に
    しないで、y = xの軸に対して非対称なばらつきのガウス分布を作るためにそうしているの
    という理解でいいのでしょうか?

      補足日時:2017/01/13 12:31

A 回答 (3件)

共分散については授業で習った程度の知識しかないですが、


「共分散行列は対称行列である」というのは違うと思います。
共分散行列が対称なときは、ガウス分布の形(楕円)はy=xとy=-xに関して対称ですが、共分散行列が対称でないときはその楕円が傾いている、という状況です。

>非対称なばらつきのガウス分布を作るためにそうしているのという理解でいいのでしょうか?

理解するも何も、そのプログラムの1文をどこでみつけたのか、どういう背景なのかが分からないとこちらは何も言えません。
    • good
    • 0

私にはさっぱりわかりません. 書いた人に聞いてください.



少なくとも, Numpy としてそんな使い方を想定していないことはドキュメントを読めばわかるはずです.
    • good
    • 0

疑問に思ったら, まずドキュメントを読んでみるべきでしょう.



https://docs.scipy.org/doc/numpy/reference/gener …
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!