据说DBSCAN在边界点上不一致,并且取决于它首先将点分配给哪个群集。
当DBSCAN想要为一个群集分配边界点时,是否考虑到每个群集中边界点接近(eps)的点数?
最佳答案
在这些很重要的情况下,每个群集的点数通常为1。
更好的决胜局将是距离,但即使那样也可以取得平局。
这是一个微不足道的修改,可以在后处理中轻松实现:对于每个边界点,找到最近的核心点,并使用该标签。
但是,这有关系吗?
集群从来都不是完美的。我们在这里谈论的是一种罕见的情况,其中“最佳”(基于两个硬性阈值的“最佳”的临时定义)分配通常会使最终结果相差0.000。
如果我没记错的话,DBSCAN作者建议您也可以将这些点分配给两个群集。据说这是最符合定义的解决方案(两个群集都可以到达边界点)。但这使一切变得更加复杂。因为许多用户希望每个点在一个漂亮的数字列中都有一个标签,而不必处理这种特殊情况。
关于machine-learning - DBSCAN和边界点,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50882170/