0

我正在尝试使用 hdbscan 进行聚类后重建脑肿瘤图像。

但是,hdbscan 没有与 kmeans 不同的聚类中心,所以我对如何获取聚类图像有点困惑。我尝试通过将 (65536,3) 数组与 hdbscan 标签即 r 匹配来获取 ref 簇中心,并在获取 crs 中每个簇的平均簇点后存储它们。

我不确定这是否是继续重建图像的最佳方法,即基于聚类获得一些平均中心并使用平均中心加标签重建图像。

crs = np.zeros((dbnumber_of_clusters, 3))
for i in range(0, dbnumber_of_clusters):
    dbcluster_points = mriarr[r == i]
    dbcluster_mean = np.mean(dbcluster_points, axis=0)
    crs[i, :] = dbcluster_mean
4

1 回答 1

0

HDBSCAN 并非旨在“重建”数据。所以可能没有优雅的方式。

使用每个集群的平均值是一个明显的选择。模拟 k-mrans 所做的事情,但如果集群不是凸的,那么这样的点可能位于实际集群之外。因此,选择最密集的点可能是合适的。此外,集群应该是分层的,因此在计算集群代表时,还应该考虑嵌套集群的数据......最后但并非最不重要的一点是,它会产生“噪声集群”。那实际上不是一个集群,而只是所有非集群数据。计算这些点的单个代表对象是没有意义的。相反,您可能希望将这些点视为每个点都有自己的集群。

于 2019-08-13T07:28:27.197 回答