我需要将数据点划分为彼此相似的数据点("好的"点)和其他所有人("坏"点)。
它看起来像某种聚类问题,我该怎么做:
我假设至少有两个"好"点。
这很有效,但如果有两个点非常接近。 minDist非常小,这个5 * minDist切割也很小=>只有这两个点在期望的"好"群集。
我认为我需要完全改变这种方法,这里是问题1:
[1]"有哪些方法可以将类似点与其他人分开?"
或者我需要将这个5 * minDist修改为minDist的其他一些功能。问题是:
[2]"我可以选择什么作为5 * minDist的合理替代品?"
弗拉基米尔
答案 0 :(得分:0)
您希望进行异常值检测。而不是进行群集。
有很多算法(参见大型集合的ELKI)。一些非常基本的方法可以解决您的问题:
半径为r的邻居数。如果+ i<阈值,该点是异常值。
距离k最近邻居的距离。选择k> 1以避免您看到的这两个元素群集。
此外,DBSCAN群集可能对您有用。考虑所有集群是好的,只有 noise 是坏的!