AttributeError:'GMM'对象没有属性'covariances_'|| AttributeError:'module'对象没有属性'GaussianMixture'

时间:2018-03-20 03:33:13

标签: python scikit-learn

我有一段代码可以适合我的数据的guassian模型。我从sklearn进口了混合物。然而,即使我使用mixture.GaussianMixture我得到一个错误:AttributeError:'module'对象没有属性'GaussianMixture',如果我使用另一种方式,它会给出一个错误:AttributeError:'GMM'对象没有属性'covariances_'。我甚至尝试导入协方差,但似乎没有用。谁能告诉我如何解决这个错误。

from sklearn import mixture   

# Fit a Gaussian mixture with EM using five components
gmm = mixture.GaussianMixture(n_components=5, covariance_type='full').fit(X) 
gmm = GMM(n_components=3, covariance_type='full')

1 个答案:

答案 0 :(得分:5)

在从0.18开始的新版本中,GMM已被弃用,而GaussianMixture用于替代documentation here.

现在你的第一个错误,似乎你有一个旧版本的scikit-learn还没有GaussianMixture类。对于第二个错误,旧的GMM没有属性covariances_。请改用covars_属性。查看较旧的documentation here: -

  

covars_:array

Covariance parameters for each mixture component. 
The shape depends on covariance_type:

然后它不会抛出任何错误。

更新scikit-learn到最新版本以使用GaussianMixture类中的covariances_属性。