6

我有一个我用来适应的字符串列表sklearn.cluster.KMeans

X = TfidfVectorizer().fit_transform(docs)
km = KMeans().fit(X)

现在我想以原始字符串表示形式获得集群中心。我知道km.cluster_centers_但无法弄清楚如何获得docs.

4

1 回答 1

7

k均值中没有集群中心的“原始表示” ;它们实际上不是输入集中的点(矢量化文档),而是多个点的手段。由于词袋表示破坏了术语的顺序,因此无法将此类方法转换回文档。

一种可能的近似是取一个质心向量,然后用TfidfVectorizer.inverse_transform它来找出哪些项在其中具有非零 tf-idf 值。

您可以使用k -medoids算法实现您想要的,该算法确实将实际输入点分配为质心,但这并未在 scikit-learn 中实现。

于 2012-07-05T13:27:39.780 回答