45. Метод главных компонент и поиск сингулярных значений, прикладные аспекты.

Метод главных компонент ⇔ PCA ⇔ Principal Component Analysis - метод понижения размерности данных и удаления линейных зависимостей путем перевода данных в декартову систему координат, где базисные вектора - собственные вектора.

Реализация для собственных чисел:

1. Стандартизируем данные

2. Вычисляем ков. матрицу

3. Находим собственные значения и вектора ков. матрицы

4. Сортируем по невозростанию собственных значений. Собственные значения показывают какая у компоненты (пара собственное значение/вектор) дисперсия. Чем больше дисперсия компоненты, тем она важнее.

5. Выбираем k первых компонент, они называются главными.

6. Проецируем исходные данные в систему, где базисные вектора - главные компоненты  - собственные вектора, T - спроецированные данные

Реализация через SVD:

1. Центрируем данные

2. Вычисляем SVD

3. Находим собственные значения ков. матрицы  - сингулярное значение,  - собственное значение ковариационной матрицы; Вектора для компонент - V из разложения SVD

4. Сортируем по невозростанию собственных значений. Собственные значения показывают какая у компоненты (пара собственное значение/вектор) дисперсия. Чем больше дисперсия компоненты, тем она важнее.

5. Выбираем k первых компонент, они называются главными.

6. Проецируем исходные данные в систему, где базисные вектора - главные компоненты  - собственные вектора, T - спроецированные данные

Через SVD устойчивее, потому что не вычисляется  - если X имеет малый ранг или содержит маленькие числа значения будут сравнимы с ошибками округления

Выбор k количества компонент:

Обычно выбирают n так, чтобы во включенных компонентах было не меньше 95% дисперсии: