2017-08-14 45 views
0

在删除了停用词并在一组文档中应用了词干化过程之后,我应用了在Javascript中平分K-means以对从一些网页接收的一组文档进行聚类以查找它们的相似性。文本聚类:在k中选择k意味着

什么应该是一个很好的方法来找出在创建基于文本的群集时应该创建多少个群集?我看到了一些方法,例如弯头,轮廓或信息标准方法,但假设我没有任何有关我创建的集群的信息,其他方法似乎更适合数字集群,而不适用于基于文本的集群。

entropy是否可以帮助我在文本聚类中应用平分k-均值后找到正确数量的聚类?或F-measure?我的意思是在达到一定数值后停止划分集群?这些对于大量数据是否有用?

+0

在文本上,它们都没有可靠的工作。 –

+0

那我该如何确定K的个数?在文本聚类?有任何想法吗? – user3026017

+0

你有很多小文件或一些长文件吗? - 同一个词的多个出现是否表示更大的相似性?或者仅仅是重要的独特词的出现? – knb

回答

0

简短的回答:

您可以使用TermFequency- InverseDocument-Frequency(TF-IDF)。它强调在单个文档中特别使用的罕见词语,并且在所有文档中找到这些词语会受到惩罚。 如果您在数据集上应用了带有TfIDF的PCA,则可以使用“Scree Plot”(〜Elbow方法)来查找合适数量的聚类。

朗例如:

以下是不使用k均值的一个例子,例如使用了一些长文档,并已决定,有两个“集群”(使用主成分和TF-IDF ,实际上),但它创造性地使用了真实的数据:

在为R软件的tm笔者开发了PhD dissertation documenting the "textmining" package tm,英戈Feinerer,给出了一个例子(第10章)怎么办stylometry,那就是集群/识别来自“绿野仙踪”系列的5本书。对于其中的一本书,作者身份有争议(系列中有两位作者,汤普森和鲍姆,但他们对其中一本书的贡献是未知的)。

Feinerer将文档打印成500行块以构建TermDocumentMatrix,然后在Matrix上执行主成分分析(PCA)变体(一个包含TfIDF),并通过目视检查PCA图表显示有争议的书往往是由汤普森撰写的。但部分可能是由鲍姆写的。

在情节中,这是由粉红色的摆动椭圆(由我绘制)内的点表示。绿点是来自已知作者(T.)的书的大块,黄点来自未知/有争议的作者。 (这些点在图中相互靠近,这就是证据;这是定性的,但这只是PDF中许多的一个例子) enter image description here

第95页的Tf-IDF PCA图看起来很相似。

我还没有给出任何R代码,因为我不知道你是否喜欢R,而且这篇文章已经变得太长了,你可以在PDF中自己阅读它。

(我不知道Javascript中的Tf-IDF的任何实现)。