0

DBSCAN(epsilon, minPts = 2) 与单链接聚类有关,HDBSCAN(minPts = 2) 也与单链接聚类有关。

我的问题是:如何使用这些设置获得相同的聚类结果?或者需要在 HDBSCAN 中设置其他参数(hdbscan 库中有很多参数)?

4

1 回答 1

1

DBSCAN 和 HDBSCAN 在边界点的处理上有所不同,因此实际上不可能从它们那里得到完全相同的答案。尽管如此,您仍可以采取一些措施来获得类似于 DBSCAN 的 HDBSCAN 结果。

clusterer = hdbscan.HDBSCAN(
    min_samples=2, match_reference_implementation=True
).fit(X)
clusters = clusterer.single_linkage_.get_clusters(
    cut_distance=0.25, min_cluster_size=2
)

您可以更改cut_distance所需的值(DBSCAN 中的等效参数是epsilon。请注意,您可以运行 HDBSCAN 一次,然后选择cut_distance您想要的任何值(非常便宜的计算)。

于 2020-06-21T21:40:40.663 回答