-2

我正在处理从合作者那里收到的代码,它包含 sklearn 中已弃用的 GMM 类中的两个函数:distribute_covar_matrix_to_match_covariance_type log_multivariate_normal_density

由于我对它背后的数学不太熟悉,我很难在新的 GaussianMixture 类中找到等效的函数。任何帮助将不胜感激!

调用函数的代码部分如下:

for x in models:
  bics=[]
  gmm = mixture.GMM(n_components=x, n_iter=100000, n_init=5, covariance_type='full')
  gmm.fit(np.array(s))
  bic.append(gmm.bic(np.array(s)))
return bic.index(min(bic))+2
4

1 回答 1

1

解决方法:只需将“GMM”替换为“GaussianMixture”,将“n_iter”替换为“max_itern”:

for x in models:
  bics=[]
  gmm = mixture.GaussianMixture(n_components=x, max_iter=100000, n_init=5, covariance_type='full')
  gmm.fit(np.array(s))
  bic.append(gmm.bic(np.array(s)))
return bic.index(min(bic))+2

谢谢@Vivek Kumar

于 2018-06-12T16:19:14.320 回答