【发布时间】:2020-05-21 12:30:38
【问题描述】:
我有 569 个向量要使用 K-Means 进行聚类。但首先,我需要找到最优的 K-Cluster。我尝试使用 YellowBrick 包中的 KElbowVizualizer 函数使用肘部方法,但它无法显示 K-Cluster 的确切数量。所以现在我正在寻找替代方案。
知道如何找到最优的 k 簇吗?
这是我在 KElbowVisualizer 中使用的代码:
from sklearn.cluster import MiniBatchKMeans
from sklearn.feature_extraction.text import TfidfVectorizer
from yellowbrick.cluster import KElbowVisualizer
vec = TfidfVectorizer(
stop_words = 'english',
use_idf=True
)
vectors_= vec.fit_transform(df1)
model = MiniBatchKMeans()
titleKElbow = "The Optimal K-Cluster with Elbow Method"
visualizer = KElbowVisualizer(model, k=(2,30), metric='silhouette', timings=False, title = titleKElbow, size=(1080, 720))
visualizer.fit(vectors_)
visualizer.show(outpath="G:/My Drive/0. Thesis/Results/kelbow_minibatchkmeans.png")
【问题讨论】:
标签: python scikit-learn k-means