假设我们有一个高维数据集,我们使用PCA将其降维到较低维度,那么接下来在这个数据集上使用聚类算法是否明智/准确?假设我们不知道期望的聚类数量。
在Iris数据集上使用PCA(数据在csv文件中按顺序排列,首先列出第一类,然后是第二类,最后是第三类)会得到以下图表:-
可以看出,Iris数据集中的三个类别被保留了下来。然而,当样本顺序随机化后,会产生以下图表:-
在上图中,数据集中包含多少个聚类/类别并不清楚。在这种情况下(更接近现实世界的情况),如何确定类别的数量,使用像K-Means这样的聚类算法是否有效?
由于丢弃了低阶主成分,是否会导致不准确性?
编辑:为了明确,我是在问是否可以在运行PCA后对数据集进行聚类,如果可以,最准确的方法是什么。
回答:
假设我们有一个高维数据集,我们使用PCA将其降维到较低维度,那么接下来在这个数据集上使用聚类算法是否明智/准确?假设我们不知道期望的聚类数量。
你的数据可能在低方差维度上分离。我不建议在聚类之前运行PCA。
在上图中,数据集中包含多少个聚类/类别并不清楚。在这种情况下(更接近现实世界的情况),如何确定类别的数量,使用像K-Means这样的聚类算法是否有效?
有一些有效的聚类算法不需要预先知道类别的数量,例如Mean Shift和DBSCAN。