哪个是聚类具有低密度差异的多维数据的最佳聚类算法?

Which is the best clustering algorithm for clustering multidimensional data with low density difference?

我目前正在做一个项目,希望对多维数据进行聚类。我尝试了 K-Means 聚类和 DBSCAN 聚类,它们都是完全不同的算法。

K-Means 模型 返回了一个相当不错的输出,它返回了 5 个簇,但是我读到当维数很大时,欧几里得距离失败所以我不知道我是否可以信任这个模型。

在尝试 DBSCAN 模型时,该模型生成了很多噪声点并将很多点聚集在一个簇中。我尝试了 KNN dist plot 方法来找到模型的最佳 eps,但我似乎无法使模型工作。这导致我得出结论,也许绘制的点的密度非常高,也许这就是我在一个集群中得到很多点的原因。

对于聚类,我使用了 10 个不同的数据列。 我应该更改我正在使用的算法吗?对于多维数据和密度变化较小的更好算法是什么?

也许这能给你一些启发:Scikit-learn clustering algorithms 我建议你尝试一些。希望对您有所帮助!

您可以先使用 PCA/LDA/t-sne 或自动编码器对数据集进行降维。然后运行标准一些聚类算法。

另一种方法是您可以使用奇特的深度聚类方法。 blog post 很好地解释了他们如何在高维数据集上应用深度聚类。