HDBSCAN 参数差异

时间:2021-06-09 05:22:02

标签: machine-learning scikit-learn cluster-analysis hierarchical-clustering hdbscan

我对 HDBSCAN 中以下参数之间的差异感到困惑

  1. min_cluster_size
  2. min_samples
  3. cluster_selection_epsilon

如果我错了,请纠正我。

对于min_samples,如果设置为7,则形成的簇需要有7个或更多点。 对于 cluster_selection_epsilon,如果设置为 0.5 米,则任何相距 0.5 米以上的集群都不会合并为一个。这意味着每个集群将只包含相距 0.5 米或更小的点。

这与 min_cluster_size 有何不同?

1 个答案:

答案 0 :(得分:0)

从技术上讲,他们做了两件不同的事情。

min_samples = 核心点的最小邻居数。该值越高,将作为噪声/异常值丢弃的点就越多。这是来自 HDBScan 的 DBScan 部分。

min_cluster_size = 最终集群的最小大小。该值越高,您的集群就越大。这是来自 HDBScan 的 H 部分。

增加 min_samples 会增加集群的大小,但它是通过使用 DBSCAN 丢弃作为异常值的数据来实现的。

相比之下,增加 min_cluster_size 的同时保持 min_samples 小,会保留这些异常值,而是将任何较小的集群与其最相似的邻居合并,直到所有集群都高于 min_cluster_size

所以:

  1. 如果您需要许多高度特定的集群,请使用一个小的 min_samples 和一个小的 min_cluster_size
  2. 如果您想要更通用的聚类但仍想保留大部分细节,请使用小 min_samples 和大 min_cluster_size
  3. 如果您想要非常一般的聚类并丢弃聚类中的大量噪声,请使用大 min_samples 和大 min_cluster_size

(不可能使用比 min_cluster_size 大的 min_samples,afaik)

相关问题