当我得到PCA变换图像的对角线的特征值时,无论图像是什么,我总是得到1。这背后的原因是什么?
我使用了以下代码。
coeff = pca(pmap);
disp(coeff);
[V,L]=eig (coeff'*coeff);
Lamda = diag(L);
disp(Lamda);
答案 0 :(得分:2)
explained
pca
个输出已经是特征向量,它们都是正交的。它们甚至是正交的,因为MATLAB将它们标准化。相对权重位于pca
的{{1}}输出参数中。
因此,transpose(coeff)*coeff
为您提供单位矩阵,其中只包含1个单位矩阵,单位矩阵的特征向量显然只是单个维度中的1
。
因此因为线性代数的运作方式。