ПРОГРАММИРОВАНИЕ R: АНАЛИЗ ОСНОВНЫХ КОМПОНЕНТОВ

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

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

ГЛАВНЫЙ КОМПОНЕНТ: это новые ортогональные переменные, построенные как линейные комбинации или смесь исходных переменных, приоритет которых уменьшается по мере увеличения числа.

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

ND: количество основных компонентов всегда меньше или равно количеству атрибутов в наборе данных.

ПОНИМАНИЕ НАБОРА ДАННЫХ

Набор данных heart.xlsx датируется 1988 годом и состоит из четырех баз данных: Кливленд, Венгрия, Швейцария и Лонг-Бич V. Он содержит 76 атрибутов, включая предсказанные атрибуты, но все опубликованные эксперименты относятся к использованию подмножества из 14 из них. . поле «цель» относится к наличию болезни сердца у пациента. это дихотомия: 0 = отсутствие болезни и 1 = болезнь.

Информация об атрибутах контента:

возраст, пол, тип боли в груди (4 значения), артериальное давление в покое, уровень холестерина в сыворотке в мг/дл, уровень сахара в крови натощак> 120 мг/дл, результаты электрокардиографии в покое (значения 0,1,2), максимальная достигнутая частота сердечных сокращений, индуцированная физической нагрузкой стенокардия, старый пик = депрессия ST, вызванная физической нагрузкой, по сравнению с состоянием покоя, наклон пиковой нагрузки, сегмент ST, количество крупных сосудов (0–3), окрашенных при рентгеноскопии, th: 0 = нормальный, 1 = фиксированный дефект, 2 = реверсивный дефект. вы можете нажать на эту ссылку, чтобы просмотреть набор данных https://file.fm/f/nn5s4afh4

ЗАГРУЗКА НАБОРА ДАННЫХ В R

Очистка набора данных

Обобщение набора данных

Это показывает описательную статистику изучаемых переменных, как мы можем видеть в таблице выше, минимальный возраст составляет 29 лет, максимальный возраст составляет 77 лет, среднее значение trestbps составляет 131,6, среднее значение chol составляет 246, среднее значение thalach составляет 246 лет. 149,1, у oldpeak среднее значение 1,072.

Запуск матричной корреляции со значимыми уровнями

Матрица корреляции показывает коэффициенты корреляции между переменными. Используя эмпирическое правило, которое гласит, что для сильной корреляции переменной с другой коэффициент должен быть больше или равен + или - 0,3, и мы должны проверить, является ли этот коэффициент статистически значимым. В приведенной выше таблице возраст имеет статистически значимую связь со всеми переменными, но, согласно эмпирическому правилу, он сильно отрицательно коррелирует с талахом с коэффициентом -0,39, что является статистически значимым на 95% значимом уровне. Также существует статистически значимая положительная корреляция между trestbps и возрастом (0,27), chol и возрастом имеют 0,22 значимую положительную корреляцию, oldpeak и target имеют -0,44 значимую отрицательную корреляцию. Наконец, талах и цель имеют значимую корреляцию 0,42.

Выполнение анализа основных компонентов

В выходной таблице PCA у нас есть две информации:

  1. Важность компонента:

СТАНДАРТНОЕ ОТКЛОНЕНИЕ: показывает отклонение главных компонентов.

PROPORT OF VARIANCE: показывает процентные доли вклада в вариацию (изменчивость) в наборе данных. Comp.1 вносит около 36% изменчивости в исходный набор данных, Comp.2 вносит около 19% изменчивости в исходный набор данных, Comp. 3 вносят около 15% в изменчивость исходного набора данных, Comp.4 вносят около 14% в изменчивость в исходном наборе данных, Comp. 5 вносят около 9% изменчивости в набор данных. Наконец, Comp.6 вносит около 8% изменчивости исходного набора данных.

КУМУЛЯТИВНАЯ ПРОПОРЦИЯ: показывает совокупный процент изменчивости, объясняемый каждым основным компонентом. Комп. 1 составляют около 36% общей изменчивости в исходном наборе данных. Comp.2 составляет около 55% общей изменчивости в исходном наборе данных, эти 55% являются суммой доли дисперсии Comp.1 и доли дисперсии Comp.2 (36% + 19% = 55%). ); Комп. 3 составляют 70% от общей изменчивости в наборе данных, эти 70% являются добавлением Comp.1, Comp.2 и Comp.3 (36% + 19% + 15% = 70%). Comp.4 (83%), Comp.5 (92%) и Comp.6 (1%) следуют этому потоку, чтобы учесть их общую изменчивость в наборе данных.

2. Нагрузки: это веса или собственные векторы каждой переменной, которые представляют собой корреляцию между каждой исходной переменной и каждым компонентом. Эти нагрузки с ПК образуют уравнения PCA

PC1 = b11X1 + b21X2 + … + bn1Xn

PCn = bn1X1 + bn2X2 + … + bnnXn

где b11, b21, … , bnn — нагрузки, а X1, X2, … , Xn — переменные

Из нашей таблицы загрузки у нас есть следующие уравнения PCA

Комп.1 = 0,44возраст + 0,28трестбпс + 0,19хол - 0,48талах + 0,47старпик - 0,49цель

Комп.2 = 0,31возраст + 0,53трестбпс + 0,63хол + 0,33талах — 0,24старпик + 0,27цель

Комп. 3 =0,16возраст — 0,73трестбпс + 0,58хол — 0,25талах — 0,23старпик

Комп. 4 = 0,60 возраст — 0,44 хол — 0,36 талах — 0,43 старый пик +0,34 цель

Comp.5 = 0,19возраст — 0,20trestbps + 0,70oldpeak + 0,66target

Сост.6 = 0,53возраст — 0,29трестбпс — 0,20хол + 0,68талах — 0,36цель

Нанесение основных компонентов на график

Нанесение главного компонента на линейный график

На графике выше эффект локтя возникает на комп. 2, которые указывают, что только Comp.1 и Comp. 2 извлекаемые.

Визуализация извлекаемых основных компонентов на побочной диаграмме

Визуализация извлекаемых основных компонентов в дереве решений

ЗАКЛЮЧЕНИЕ

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