关于sklearn的python:PCA。 无法通过PCA确定功能选择

PCA with sklearn. Unable to figure out feature selection with PCA

我一直在尝试使用PCA进行降维。 我目前有一张尺寸为(100,100)的图像,并且我使用的是由140个Gabor滤镜组成的滤镜组,其中每个滤镜都会给我一个响应,它又是(100,100)的图像。 现在,我想进行功能选择,而我只想选择非冗余功能,而我读到PCA可能是一个好方法。

因此,我开始创建一个具有10000行和140列的数据矩阵。 因此,每一行都包含该滤波器组的Gabor滤波器的各种响应。 现在,据我所知,我可以使用PCA作为

1
2
3
4
from sklearn.decomposition import PCA

pca = pca(n_components = 3)
pca.fit(Q) # Q is my 10000 X 140 matrix

但是,现在我对如何找出这140个特征向量中的哪一个感到困惑。 我猜想它应该给我这140个向量中的3个(对应于包含有关图像最多信息的Gabor滤波器),但我不知道如何从这里开始。


PCA将为您提供功能的线性组合,而不是功能的组合。 它会为您提供最适合L2意义上的重构的线性组合,也就是捕获最大方差的组合。

你的目标是什么? 如果您在一幅图像上执行此操作,则任何类型的选择都将为您提供将图像的某些部分与同一图像的其他部分区分开的最佳功能。

另外:Garbor滤镜是自然图像的稀疏基础。 除非您有非常具体的图像,否则我不会期望发生任何有趣的事情。