freeCodeCamp/guide/russian/machine-learning/principal-component-analysis/eigen-faces/index.md

4.9 KiB
Raw Blame History

title localeTitle
Eigen Faces Собственные лица

Eigen Faces

Контур

  • проблема
  • Подход к решению
  • Dataset
  • Математический анализ
  • Реконструкция изображения

проблема

Обычно мы используем собственные значения и собственные векторы ковариационной матрицы данных для вычисления наших главных компонентов. Что делать, если вы не можете вычислить матрицу ковариации из-за проблем с памятью?

Подход к решению

Теперь мы используем трюк. Вместо использования размеров изображения для ковариационной матрицы мы используем количество изображений. Это открывает еще одно преимущество. Теперь, когда у нас есть векторы признаков всех наших изображений, все, что нам нужно, это эти m-изображения, чтобы иметь возможность восстановить любое изображение в мире.

Определение набора данных

Предположим, у нас есть m изображений в серой шкале размером nx n. m имеет порядок 100 и n имеет порядок 10000. Наша цель - выбрать k компонентов, которые правильно отображают все функции изображения. Теперь мы создадим матрицу X, где мы сохраним сглаженные изображения (n ^ 2 x 1). Следовательно, X имеет размерность п ^ 2 х т.

Математический анализ

Вычисление ковариации этой матрицы - то, где вещи становятся интересными. Ковариация матрицы X определяется как точка (X, XT), размерность которой равна n ^ 2 xn ^ 2. Это, очевидно, выйдет из памяти для такого большого набора данных. Теперь рассмотрим следующую систему уравнений. точка (XT, X) V = λ V, где V - собственный вектор, λ - соответствующие собственные значения. Предварительное умножение на X, точка (точка (X, XT), точка (X, V)) = λ точка (X, V) Таким образом, мы видим, что собственный вектор ковариационной матрицы является просто точечным произведением матрицы изображений и собственным вектором точки (XT, X).

Поэтому мы вычисляем точку (XT, X), размерность которой равна просто mxm, и используем собственный вектор этой матрицы для построения собственного вектора исходная матрица. M собственных значений точки (XT, X) (вместе с их соответствующими собственными векторами) соответствуют m наибольшим собственным значениям точки (X, XT) (вместе с их соответствующими собственными векторами). Наши требования собственные векторы - это только первые k собственных векторов и соответствующие им собственные значения. Теперь мы вычислим матрицу собственных функций, которая представляет собой не что иное, как изображения, взвешенные по отношению к их собственные векторы. Веса для каждого k-изображения теперь будут точками (XT, собственными (первые k значений)).

Реконструкция изображения

Этот метод помогает нам представлять любое изображение, используя только k функций m изображений. Любое изображение может быть восстановлено с использованием этих весов. Чтобы получить любое изображение i, Изображение (i) = точка (собственная поверхность (k), вес [i,:]. T)