多変量正規分布の確率密度の計算を速くしたいです
現時点では以下のようなコードで動かしています
python
1import numpy as np 2 3x = np.array([ 0.70864076 ,-0.61552062]) 4mean = [0.79081355 ,0.10586335] 5cov = [[1,0],[0,1]] 6 7def gaussian(x, mean, cov): 8 A = 1. / ((2. * np.pi) ** (x.size**(1/2)/2.0)) 9 B = 1. / (np.linalg.det(cov) ** 0.5) 10 C = -0.5 * np.dot(np.dot(x - mean, np.linalg.inv(cov)), x - mean) 11 return A * B * np.exp(float(C)) 12 13gaussian(x,mean,cov)
例として2次元ですが,多次元になった時に非常に計算が遅くなってしまいます
改善点があれば教えていただけるとありがたいです

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/11/13 04:27
2018/11/13 05:13
2018/11/13 05:14
2018/11/13 05:21
2018/11/13 05:21
2018/11/13 05:25
2018/11/13 05:41
2018/11/13 05:46
2018/11/13 05:49
2018/11/13 05:54
2018/11/13 06:12
2018/11/13 08:19