【问题标题】:Clustering words by using numpy and nltk or CLUTO in Python programming在 Python 编程中使用 numpy 和 nltk 或 CLUTO 对单词进行聚类
【发布时间】:2013-12-26 22:17:10
【问题描述】:

我正在尝试对一些单词进行聚类。
我的部分数据如下(只是示例)。

    cat dog horse ostrich 
cat  8   2.3  3.4  4.7
dog  7   8    3   2.4
horse 3.4 2.5 8  1.5
ostrich 3.4 3.2 4.4 8

数字越大,表示两个词的相似度越高。 基于这种格式数据,我想制作一个簇(例如,(猫,狗),(马),(鸵鸟)总共3个簇)。

起初,我尝试使用 CLUTO... 制作一些集群和一个(非常漂亮的)图表,如下所示。

但我不能...我已经看过手册,但不是那么容易理解。 因此,我尝试在 nltk 中使用一些聚类库,例如 k-means..etc。但我不知道如何创建像上面这样的图表。 (我还要根据输入数据做一些聚类)

【问题讨论】:

  • 我不太明白你想要什么。你是在要求有人给你一个教程吗?我建议您再次尝试使用该文档,然后带着一些真实和具体的疑问回来。

标签: python cluster-analysis nltk cluto


【解决方案1】:

您展示的图片是hierarchical cluster。与“典型”聚类分析不同,它显示的不是一种聚类数据的方法,而是所有可能的聚类方法,适用于所有可能数量的聚类。您可以通过计算层次结构与层次结构图像中任意水平线的交点来获得一个“集群集”。

K-means 算法 OTOH 取决于您提供所需的集群数量,因此您无法从中生成层次结构。 NLTK doesn't seem 为层次聚类分析提供工具。

在决定你想要什么输出之前,你可能应该熟悉basic clustering concepts

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-05-24
    • 2018-11-03
    • 2021-11-29
    • 2017-02-04
    • 1970-01-01
    • 2018-12-12
    • 2015-09-10
    • 2018-05-13
    相关资源
    最近更新 更多