我有一个庞大的数据集 (32000*2500) 需要用于训练。这对我的分类器来说似乎太多了,所以我决定阅读一些降维内容,特别是 PCA。
据我了解,PCA 选择当前数据并将它们重新绘制在另一个 (x,y) 域/尺度上。这些新坐标没有任何意义,只是重新排列数据以提供一个轴的最大变化。在这些新系数之后,我可以放弃cooeff
具有最小变化的系数。
现在我正在尝试在 MatLab 中实现这一点,并且在提供的输出方面遇到了问题。MatLab 始终将行视为观察值,将列视为变量。所以我对pca
函数的输入将是我的 size 矩阵(32000*2500)
。这将在 size 的输出矩阵中返回 PCA 系数2500*2500
。
pca 的帮助指出:
coeff 的每一列都包含一个主成分的系数,并且这些列按成分方差的降序排列。
在此输出中,我的数据的观察值是哪个维度?我的意思是,如果我必须将其提供给分类器,行将coeff
代表我的数据观察,还是现在是 的列coeff
?
以及如何删除变化最小的系数?