0

所以我有了这个向量,我想用简单的 K-Means 聚类对它们进行聚类,但首先,我需要用 Elbow 方法寻找最优的 k-聚类。我使用 YellowBrick 包中的 KElbowVisualizer 函数来找到最佳 k 簇。问题是我有 569 个向量,而 KElbowVisualizer 图不够大,无法可视化它们;因此,我看不出有哪个最好的 k-cluster。

我确实寻找了设置绘图大小的代码,但它没有用。这是绘图结果: 在此处输入图像描述

这是我的代码:

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.pdf")

我什至无法用我的代码的最后一行将它保存到我的目录中。有人知道如何解决吗?谢谢

4

1 回答 1

0

答案:只需安装最新版本的 Yellowbrick 即可 pip install -U yellowbrick

不要忘记设置 KElbowVisualizer 绘图的大小,以便您可以详细查看最佳 k 簇

于 2020-02-11T19:06:29.523 回答