【问题标题】:Clustering some graph form matrix聚类一些图形形式的矩阵
【发布时间】:2019-10-08 01:17:40
【问题描述】:

stackoverflow 上的几个问题提到了类似的问题,但是...

我有一个方阵,比如这样:

  |  A  |  B  |  C  |  D 
A |  1  |  1  |  0  |  0 
B |  1  |  1  |  1  |  0 
C |  0  |  1  |  1  |  0 
D |  0  |  0  |  0  |  1 

方阵可以是任意大小(可以是 1000x1000 或更大)。我想获得集群(我不知道有多少......)。对于上面的例子,我应该得到两个集群:

  1. A、B、C(因为 A-B 和 B-C)
  2. D

【问题讨论】:

标签: python scipy cluster-analysis networkx


【解决方案1】:
  1. 您给出的示例是一个经典的团检测,在图论中使用多种算法进行了深入研究。当您允许缺少某些边缘时,它会变得更加有趣。这将导致模块化等。
  2. 您拥有的是一个未加权的邻接矩阵。有一些聚类算法可以解决这个问题 - 亲和传播需要亲和,而分层凝聚聚类可以以相似的方式实现(请注意,大多数实现都使用距离)
  3. 在您的情况下,您可以轻松地将 1-X 用作许多聚类算法的距离矩阵,除了 k-means 和 GMM 以及其他一些需要坐标矩阵的例外情况。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-12-23
    • 1970-01-01
    • 1970-01-01
    • 2013-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多