我想使用sklearn.mixture.GaussianMixture來存儲高斯混合模型,這樣我就可以稍後使用它來使用score_samples
方法在採樣點生成採樣或值。這裏是一個例子,其中部件具有以下重量,平均和協方差使用組件參數進行的GaussianMixture初始化 - sklearn
import numpy as np
weights = np.array([0.6322941277066596, 0.3677058722933399])
mu = np.array([[0.9148052872961359, 1.9792961751316835],
[-1.0917396392992502, -0.9304220945910037]])
sigma = np.array([[[2.267889129267119, 0.6553245618368836],
[0.6553245618368835, 0.6571014653342457]],
[[0.9516607767206848, -0.7445831474157608],
[-0.7445831474157608, 1.006599716443763]]])
然後我初始化的混合物作爲遵循
from sklearn import mixture
gmix = mixture.GaussianMixture(n_components=2, covariance_type='full')
gmix.weights_ = weights # mixture weights (n_components,)
gmix.means_ = mu # mixture means (n_components, 2)
gmix.covariances_ = sigma # mixture cov (n_components, 2, 2)
最後,我試圖基於這導致了參數的樣品一個錯誤:
x = gmix.sample(1000)
NotFittedError: This GaussianMixture instance is not fitted yet. Call 'fit' with appropriate arguments before using this method.
據我所知GaussianMixture意欲使用的高斯的混合物,以適應的樣品,但有沒有向它提供的最終值和共同的方式ntinue從那裏?
首先,您需要將數據輸入到模型中進行訓練,然後才能生成隨機樣本。請參閱[示例文檔()](http://scikit-learn.org/stable/modules/generated/sklearn.mixture.GaussianMixture.html#sklearn.mixture.GaussianMixture.sample) –
我沒有初始數據我擁有的是每個組件的參數。我正在尋找解決方法或替代python庫。 – hashmuke