def gmm(X,y,M,C,K=4,cov_type='diag',reps=10):
# Fit Gaussian mixture model
gmm = GMM(n_components=K, covariance_type=cov_type, n_init=reps, params='wmc').fit(X)
cls = gmm.predict(X) # extract cluster labels
cds = gmm.means_ # extract cluster centroids (means of gaussians)
covs = gmm.covars_ # extract cluster shapes (covariances of gaussians)
if cov_type == 'diag':
new_covs = np.zeros([K,M,M])
count = 0
for elem in covs:
temp_m = np.zeros([M,M])
for i in range(len(elem)):
temp_m[i][i] = elem[i]
new_covs[count] = temp_m
count += 1
covs = new_covs
clusterPlot(X,cls,K,C,y,cds,covs)
methods.py 文件源码
python
阅读 27
收藏 0
点赞 0
评论 0
评论列表
文章目录