【问题标题】:DBSCAN Clustersize smaller than MinPtsDBSCAN Clustersize 小于 MinPts
【发布时间】:2020-03-27 07:42:07
【问题描述】:

我只是想到了 DBSCAN 的一些特殊情况。案例说明here。 假设 eps 等于圆的半径。对于 MinPts=3,p 和 r 是核心点。不清楚 q 是属于 p 的集群还是属于 r 的集群。如果使用递归实现并且算法首先检查 r,则 q 将是 r 的集群的一部分。因此 p 将定义一个只有两个元素的集群。原始paper 声明:“请注意,集群 wrt.Eps 和 MinPts 至少包含 MinPts 点 [...]” 我在这里遗漏了什么还是没有考虑这种特殊情况?

【问题讨论】:

    标签: algorithm machine-learning parameters cluster-analysis dbscan


    【解决方案1】:

    例如,q也是一个核心点:圆内有三个点:p、q、r。在这个例子中你需要 minPts=4。

    您需要将密度簇的理论定义与有效的算法输出区分开来,这只是“几乎”给出了理论结果,这是有充分理由的:在理论模型中,q 将是一部分两个集群。但这对用户来说既不方便又令人惊讶。

    你不是第一个注意到的。连维基百科都知道这一点:

    虽然 minPts 直观上是最小集群大小,但在某些情况下,DBSCAN 可以生成更小的集群。[5]一个 DBSCAN 集群至少包含一个核心点。 [5]由于其他点可能是多个簇的边界点,因此无法保证每个簇中至少包含 minPts 点。

    参考文献[5]是文章

    舒伯特,埃里希;桑德,约尔格;酯,马丁;克里格尔,汉斯·彼得;徐小伟(2017 年 7 月)。 “重新审视、重新审视 DBSCAN:为什么以及如何(仍然)使用 DBSCAN”。 ACM 翻译。数据库系统42 (3): 19:1–19:21。 doi:10.1145/3068335。 ISSN 0362-5915。

    其中包含脚注:

    请注意,在极少数情况下,如果可以到达的边界点过多,这可能会导致集群的点数少于 minPts 由不同的集群,并且之前已分配给其他集群。每个集群至少有一个核心点。 可以实现精确表示理论模型的多重赋值(或最短距离赋值) 很容易。

    【讨论】:

      猜你喜欢
      • 2014-03-26
      • 2020-09-10
      • 2012-10-05
      • 2015-11-10
      • 2021-08-18
      • 2014-03-18
      • 2016-08-12
      • 2019-08-01
      • 2018-04-28
      相关资源
      最近更新 更多