1

我正在使用基于数据集的核密度估计的 Mean Shift 聚类算法。我想生成一个大型的高维数据集,我认为 Scikit-Learn 函数make_blobs会很合适。但是当我尝试生成一个 100 万个点的 8 维数据集时,我最终将几乎每个点都视为一个单独的集群。

我正在生成标准差为 1 的 blob,然后将均值偏移的带宽设置为相同的值(我认为这是有道理的,对吗?)。对于二维数据集,这产生了很好的结果,但对于更高的维度,我认为我遇到了维度的诅咒,因为点之间的距离变得太大而无法进行有意义的聚类。

有没有人有关于如何获得适合(类似于)Mean Shift 聚类的良好高维数据集的任何提示/技巧?(或者我做错了什么?(这当然是一个很好的可能性))

4

1 回答 1

1

聚类的标准差不是 1。

您有 8 个维度,每个维度的 stddev 为 1,因此您的总标准差为 sqrt(8) 或类似的东西。

由于带宽问题,核密度估计在高维数据中效果不佳。

于 2015-03-19T16:04:30.027 回答