【问题标题】:Clustering texts in weka在 weka 中聚类文本
【发布时间】:2014-03-26 08:27:00
【问题描述】:

我正在尝试使用 simpleKmeans 在 weka 中对文本数据(论坛中的帖子内容 + 用户)817 个实例进行聚类。由于某种原因,集群是这样的:

Clustered Instances

0      812 ( 99%)
1        1 (  0%)
2        1 (  0%)
3        1 (  0%)
4        1 (  0%)
5        1 (  0%)

有人可以向我解释为什么我没有得到均匀的聚类吗?

【问题讨论】:

    标签: cluster-analysis weka


    【解决方案1】:

    K-means 甚至不能保证集群。 (有a tutorial on how to modify k-means to produce even-sized clusters;但这不能解决你的问题)。

    k-means 对异常值非常敏感。在存在异常值的情况下,看到仅由一个点组成的“异常值集群”是相当常见的。这可能就是您所观察到的。

    但更重要的是,k-means 也不适用于高维离散数据......而您的文本数据很可能正是这样:高维和离散值。问题是在这样的数据上,每个点或多或少都是独一无二的。 IE。异常值。没有两个表单帖子(可能除了垃圾邮件)是相同的。更糟糕的是:它们在平方欧几里得距离(这是 k-means 最适合的距离)方面也或多或少相似。

    您正在将 k-means 用于它不是设计的场景。所以它不能很好地工作也就不足为奇了。它用于量化低维连续数据;不是为了从文本中提取有意义的组。

    【讨论】:

    • 在我的情况下你推荐什么算法?
    • 我不知道你最终想要做什么,我不使用文本数据。恕我直言,它太吵了,没有真正有用。人们在玩 SVD、LDA 和这些东西,它们会产生“一些东西”,但我还没有看到有人做过真正有用的事情,除了通过计算单词和垃圾邮件分类制作漂亮的图表。这些中没有聚类。
    猜你喜欢
    • 2013-06-08
    • 2011-08-13
    • 2015-01-04
    • 2012-03-18
    • 1970-01-01
    • 2013-04-22
    • 2018-04-18
    • 2012-05-10
    • 2012-03-22
    相关资源
    最近更新 更多