Собственные значения всегда 1 - PullRequest
0 голосов
/ 06 июня 2018

Когда я получаю собственные значения диагонали преобразованного изображения PCA, я всегда получаю 1, независимо от изображения.В чем причина этого?

Я использовал следующий код.

coeff = pca(pmap);
disp(coeff);

[V,L]=eig (coeff'*coeff);
Lamda = diag(L);
disp(Lamda);

1 Ответ

0 голосов
/ 06 июня 2018

Выходы coeff, которые pca, уже являются собственными векторами, которые все ортогональны.Они даже ортонормированы, поскольку MATLAB их нормализует.Относительный вес в выходном параметре explained равен pca.

Итак, transpose(coeff)*coeff дает вам единичную матрицу, которая содержит только единицы, а собственные векторы единичной матрицы, очевидно, всего лишь 1 в одном измерении.

Причина, таким образом, , потому что именно так работает линейная алгебра .

...