Python 2.7 在分类数据上应用PCA,分类数据还是完整数据集?

Python 2.7 在分类数据上应用PCA,分类数据还是完整数据集?,python-2.7,machine-learning,pca,Python 2.7,Machine Learning,Pca,我有一个与分类相关的图像数据,有15个不同的类,每个类有5个特征集。这五个特征集包括颜色特征、筛选特征等。。多达5种不同的功能。每个类中的实例/示例的平均数量约为300(从200到400不等)。特征集的尺寸为512、1296、5376、5376和22950。样本总数接近4500个 (为了清楚起见:对于一个类别和一个颜色特征,我有一个220行(样本)的矩阵,每行是5376维向量,因此一个220 x 5376维矩阵表示一个类别和一个特征) 现在,如果我对单个类别/类应用PCA,那么我将获得小于270

我有一个与分类相关的图像数据,有15个不同的类,每个类有5个特征集。这五个特征集包括颜色特征、筛选特征等。。多达5种不同的功能。每个类中的实例/示例的平均数量约为300(从200到400不等)。特征集的尺寸为512、1296、5376、5376和22950。样本总数接近4500个

(为了清楚起见:对于一个类别和一个颜色特征,我有一个220行(样本)的矩阵,每行是5376维向量,因此一个220 x 5376维矩阵表示一个类别和一个特征)

现在,如果我对单个类别/类应用PCA,那么我将获得小于270的所有特征集的降维(n_分量=min(n_样本,特征维))

如果我在4500幅图像的完整数据集上应用PCA(连接15个类的所有样本),当然是在一个特征集上,比如说颜色。。然后我将获得一个降维小于min的数据集(4500,feature_dimension)

应用PCA的最合适方法是什么?在类别数据(每个特征)上还是在一个特征的完整数据集上?注意,我需要修正主成分的数量,以解释90%以上的方差


很高兴得到一些帮助

我建议您尝试这两种方法。将数据转储到ARFF文件中(类似于带有某些头的CSV),并在Weka()中打开它。您将能够轻松探索不同的场景,可视化降维,甚至检查一些功能选择算法。

@感谢您的关注!但是你看。。我期望通过两种方式降低维度会产生一定的数学影响。我正在按照建议检查这两种方法,但只是在一种方法(完整数据集)中,我们有许多不同的样本,我不确定它对降维有什么影响。有关这两种方法的一些理论解释会很有帮助。@zerone在Weka中,您可以调整应用后希望保留的方差,并查看不同特征选择策略的影响。要得到更理论化的答案,你可以尝试在社区中提问。