«Проклятие размерности», на мой родной язык (телугу) переводится как «колатхала йока саапам» звучит как голливудский дублированный фильм ужасов. Это явление часто называют проблемами, возникающими при работе с данными в высших измерениях. , которого не было в низших измерениях.

В худшем случае набор данных может иметь большое количество признаков или измерений. По мере увеличения количества функций визуализация (более высокие размеры невозможны) или обучение становятся более сложными, а модель может перегружать данные, что приводит к снижению производительности.

Но в случае набора данных с меньшим количеством функций данные малы, поэтому требуется хранилище. избыточность меньше, поэтому повышается точность. также модель работает быстрее

Итак, как мы преодолеваем эту проблему?, здесь идет уменьшение размерности

Снижение размерности

Уменьшение размерности — это процесс уменьшения размерности набора данных, что означает преобразование данных более высокой размерности в более низкую размерность без потери большого количества информации.

Уменьшение размерности имеет два класса методов: устранение признаков и извлечение признаков. ну, PCA подпадает под технику извлечения признаков.

существует множество инструментов уменьшения размерности. но PCA старше, но популярнее

СПС

PCA (анализ основных компонентов) — это метод извлечения признаков, который в основном используется в качестве инструмента исследовательского анализа данных и для создания прогностических моделей. Идея PCA проста - уменьшить размерность больших наборов данных (k-измерения) до меньшего (d-измерения), где d‹k, сохраняя при этом как можно больше информации.

Для данного набора данных линейная корреляция между переменными разбивается на независимые переменные, чтобы они были независимыми и ортогональными (перпендикулярными) друг другу, они были названы главными компонентами. Это преобразование определяется таким образом, что первый главный компонент имеет максимально возможную дисперсию (более разбросанный по данным), а каждый последующий компонент, в свою очередь, имеет максимально возможную дисперсию при условии, что он ортогонален и некоррелирован с предыдущим. компоненты

процесс PCA включает в себя для данного многомерного набора данных:

  • стандартизировать данные
  • найти ковариационную матрицу стандартизированных данных.
  • Вычислите собственные векторы и соответствующие собственные значения для полученной ковариационной матрицы.
  • Отсортируйте собственные векторы на основе их собственных значений в порядке убывания.
  • Выберите первые d собственных векторов, и это будут новые d измерения. Преобразуйте исходные k-мерные точки данных в d измерения.

Это может быть легко реализовано с помощью sci-kit, с помощью следующего кода

from sklearn.decomposition import PCA as sklearnPCA
sklearn_pca = sklearnPCA(n_components=2)
Y_sklearn = sklearn_pca.fit_transform(X_std)

в приведенном выше коде n_components=2 мы взяли 2 основных компонента, которые полезны для двумерной визуализации, но для обучения модели нам нужно больше функций с наибольшим количеством информации, затем нам нужно вычислить объясненную дисперсию и выбрать значение, используя отсортированные собственные значения в порядке убывания

например, на изображении красная линия представляет собой PDF, а желтая представляет CDF. Когда мы берем один основной компонент (PC 1), объясненная дисперсия составляет 23%, а для второго основного компонента (PC2) - 19%, вместе они оба покрывают 42% данные. Предположим, если мы хотим включить 90% данных, мы берем первые 10 основных компонентов из 13.

для вычисления объясненной дисперсии нам нужны собственные значения, отсортированные в порядке убывания (λ1,λ2,…λ13). объясненная дисперсия включением только одной главной компоненты составляет λ1/(λ1 + λ2 + … + λ13)=23 %. данные (λ1 + λ2 + … + λ10)/(λ1 + λ2 + … + λ13)=91%.

вывод

Я надеюсь, что вы нашли эту статью полезной! Предложения приветствуются

использованная литература

http://sebastianraschka.com/Articles/2014_pca_step_by_step.html

https://en.wikipedia.org/wiki/Основной_компонент_анализ

https://towardsdatascience.com/a-one-stop-shop-for-principal-component-analysis-5582fb7e0a9c