当维数大于观测次数时,PCA是否仍通过协方差矩阵的特征分解完成?
我有一个矩阵,在D = 100维空间中包含我的N = 20个样本。现在,我希望在Matlab中编写自己的主成分分析(PCA)。我首先将X贬为X_0。X N = 20 D = 100 X X 020 × 10020×10020\times100XXXñ= 20N=20N=20d = 100D=100D=100XXXX0X0X_0 我从某人的代码中了解到,在这种情况下,我们的维数比观测值大,我们不再对X0X0X_0的协方差矩阵进行特征分解。取而代之的是,我们对\ frac {1} {N-1} X_0X_0 ^ T进行特征分解1个ñ− 1X0XŤ01N−1X0X0T\frac{1}{N-1}X_0X_0^T。为什么正确? 正常协方差矩阵的大小为深× 深D×DD\times D,其中每个元素告诉我们二维之间的协方差。对我来说,1个ñ− 1X0XŤ01N−1X0X0T\frac{1}{N-1}X_0X_0^T甚至尺寸都不正确!它是N \ x Nñ× Nñ×ñN\times N矩阵,那么它将告诉我们什么?两个观察值之间的协方差?