我正在处理从协作者处收到的代码,它包含来自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
答案 0 :(得分:0)
解决方法:只需替换" GMM"通过" GaussianMixture"和" n_iter" by" 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