有没有定向聚类算法?

数据挖掘 聚类 数据库扫描
2022-02-26 05:28:10

我正在寻找一种聚类算法,它将根据方向进行聚类。基于恒定半径的 DBSCAN 算法聚类点:

https://upload.wikimedia.org/wikipedia/commons/thumb/a/af/DBSCAN-Illustration.svg/800px-DBSCAN-Illustration.svg.png

是否有基于“椭圆而不是圆形”的 DBSCAN 实现?

编辑:我的解决方案

好的,所以我的解决方案是处理我的数据集。我有一组 2D 点,我想根据给定的方向来支持集群的定义。

我的解决方案是将我的点集集中在坐标系的原点上,按您想要的方向旋转它们并将这个向量场应用于点集: X(x, y) = (xx*a, y) ,其中 a 是决定方向是否重要的​​因素 (a ∈ [0, 1]) 。

然后应用这个修改后的数据集的 DBSCAN。

我希望我足够清楚,不要犹豫,问我是否不是这样。

1个回答

如果我没记错的话,非负矩阵分解 (NMF) 可以用作一种聚类方法,例如可以恢复沿向量的聚类。它可能适用于您的数据集。它考虑了一个数据矩阵DRmn成两个矩阵WRmkHRkn. 有效地,W包含应用于每个向量的权重H重建原始数据;使用这种方法的一种方法是解释n维向量H作为集群(这些向量将是您的数据所在的“方向”)和k维向量W作为不同集群的数据示例相关性。使用此过程进行聚类的一种方法是简单地将每个m将数据示例放入具有最高值索引的集群中W向量。

在包括sklearn在内的几个标准库中都有实现,所以尝试起来应该相对容易。祝你好运,欢迎来到本站!