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

https://phuongdelrosario.medium.com/uci-cardiotocography-data-set-fetal-states-classification-part-1-data-summary-and-eda-e0cec8a61eff

Полный R-скрипт приведен в конце статьи. Пожалуйста, оставьте мне комментарий, если у вас есть какие-либо вопросы или советы.

Анализ основных компонентов (PCA)

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

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

В анализе PCA количество новых функций выбирается таким образом, чтобы доля дисперсии, объясняемой (PVE) количеством новых функций, составляла примерно 95% или 90%, а PVE вычислялась следующим образом. формула:

PCA был применен к нашим стандартизированным данным, и в Таблице 3 показаны новые функции ПК, собственные значения, доля дисперсии и кумулятивный PVE всех новых функций ПК. Имеется 21 функция, поэтому имеется 21 собственное значение, сгенерированное от наибольшего к наименьшему. Сумма всех собственных значений также равна 21.

На рис. 3 показан график собственных значений, рассчитанных по данным. Собственные значения уменьшаются по мере увеличения числа ПК, а большее собственное значение означает, что этот ПК объясняет большую часть дисперсии в наших данных.

В нашем наборе данных наибольшее собственное значение составляет 6,026 от PC1, а его доля дисперсии составляет 0,287. Это означает, что PC1 может объяснить около 28,7% дисперсии в нашем наборе данных. На рис. 4: кумулятивный PVE, кумулятивный PVE составляет 95,8% при ПК14; следовательно, число новых выбранных функций для наших данных равно 14.

Теперь посмотрим, как эти данные выглядят на 3D визуализации.

в этом наборе данных есть 3 класса, и для каждой пары классов все наблюдения были спроецированы на первые 3 собственных вектора коррелированного SDATA. Графики в 3D-проекции под разными углами показаны на Рис. 5: Нормальный (N) и подозрительный (S), Рис. 6: Подозреваемый (S) и патологический (P) и Рис. 7: Нормальный (N) и патологический ( П).

Для N-класса и S-класса многие случаи в некоторой степени смешаны вместе, в то время как для пары S-класса и P-класса достаточно случаев патологии отделены от подозрительных случаев. В паре класса N и класса P кажется, что они совершенно отделены друг от друга, но есть небольшое количество случаев патологии, смешанных с нормальными случаями. Позже это может повлиять на чистоту кластеров в нашем кластерном машинном обучении.