根据paper,它应该起作用。 但作为scikit-learn包的学习者......我不知道如何。 所有示例代码都以省略号或圆圈的形式聚类为here。
我真的想知道如何通过不同的模式聚类下面的图... 0 -3是某些时间段内的功率平均值(分为4),而4,5,6各自对应于标准偏差工作日/周末的变化,冬季/夏季的变化。所以ylabel不一定符合4,5,6。
在样本之后.BIC确实生成了最佳簇数为5。
n_components = np.arange(1, 21)
models = [GMM(n, covariance_type='full', random_state=0).fit(input)
for n in n_components]
plt.plot(n_comp, [m.bic(read) for m in models], label = 'BIC')
plt.legend(loc='best')
plt.xlabel('n_components')
如果我用可用的示例代码进行绘图,但它会返回一些非常奇怪的东西,不值得分享。我虽然负BIC是好的。但我甚至不知道它是否正确聚类以推断出5是最佳数字。
答案 0 :(得分:0)
基本上是为了解决这个问题..我跟随post回答了如何使用GMM进行聚类。
相应地使用参数创建模型
gmm = GaussianMixture(n_components=10, covariance_type ='full', \
init_params = 'random', max_iter = 100, random_state=0)
使您的名字在我的案例中输入的数据(样本数x属性数)
gmm.fit(input)
print(gmm.means_.round(2))
cluster = gmm.predict(input)
群集包含我输入的每个样本的标签
如果我有任何错误,请随意添加