0

我正在尝试对 m*n 数组进行层次聚类。

  1. 输入数组:500 * 1000(1000 个特征,500 个观测值)
  2. 使用自定义的 pdist 函数计算距离矩阵
  3. 将此距离矩阵提供给链接函数: clusters = sch.linkage(distanceMatrix,'single')
  4. 形成扁平集群:fc = sch.fcluster(clusters,cutoff,'distance')

这给了我一些集群(大约 80 个,使用 6.0 的截止值)。现在,无论如何,我也可以获得与每个集群对应的 1000 个特征吗?(就像我们使用 K-means 聚类获得质心的特征一样)。

4

1 回答 1

3

层次聚类中的聚类(或几乎任何东西,除了 k-means 和高斯混合 EM 仅限于“球形” - 实际上:凸 - 聚类)不一定具有合理的均值

因为它们允许非球形集群。这实际上是一个功能...

https://en.wikipedia.org/wiki/Cluster_analysis#Connectivity_based_clustering_.28hierarchical_clustering.29

查看标题为“链接聚类示例”的右图。在这个“香蕉”示例中,集群有什么好处?质心甚至可能不在集群中!

请注意,如果需要,您仍然可以自己计算质心。由于聚类算法不需要质心,显然它不会自动为您计算它。

于 2013-02-14T10:10:32.333 回答