Снижаем размерность. Факторный анализ и метод главных компонент
При решении задач прогнозирования, довольно часто в исходных данных находятся неинформативные признаки. Такие признаки могут быть как группами переменных с высокой корреляцией, создавать дополнительный шум, так и дублировать уже имеющуюся в данных информацию. Всё выше перечисленное негативно влияет на качество получаемой на таких данных модели, а большое количество переменных способствует увеличению количества времени, затрачиваемого на вычисления.
Задача ставится таким образом: набор признаков должен обеспечить максимальную информативность. Это значит, что отбираются признаки, способные объяснить наибольшую долю дисперсии исходного набора.
Факторный анализ – многомерный метод, который применяется для изучения связей между переменными, когда существует предположение об избыточности исходных данных. Вращение Varimax в ходе факторного анализа способствует нахождению наилучшего подпространства признаков.
Метод главных компонент – метод статистического анализа, позволяющих снизить размерность пространства признаков и потерять при этом минимальное количество информации. Достигается это за счёт построения подпространства признаков меньшей размерности таким образом, чтобы дисперсия, распределённая по получаемым осям, была максимальна.
Сгенерируем исходные данные: DataFrame, большее количество столбцов которого будут заполнены случайными числами с заданной амплитудой, и лишь некоторые признаки, назовём их существенными, которые будут выступать переменными, используемыми в модели, а также рассмотрим представленные выше методы на примере снижения размерности полученного набора данных.
Импорты (main):
Функции, используемые для генерации (main):
Импорты:
Генерация данных:
Выводим информацию о полученном наборе.
Смотрим на полученные классы:
Список существенных признаков:
Получим матрицу факторных нагрузок:
Выберем существенные признаки:
Получим матрицу факторных нагрузок:
Выберем существенные признаки:
Проверим, совпадают ли полученные признаки с исходными существенными признаками (совпадают):
Подготовим и обучим модели:
Рассмотрев результаты обучения, можно заметить, что точность модели при обучении на отобранных признаках с помощью методов факторного анализа и главных компонент выросла на 0.14, это произошло благодаря тому, что в результате отбора признаков, снизилось количество «шумных» переменных модели, а переменную, объясняемую 10004 признаками, удалось объяснить с помощью 4.
Рассмотренный пример показывает целесообразность использования возможности снижения количества переменных модели за счёт отбора существенных признаков. Стоит учесть, что метод снижения размерности нужно подбирать, исходя из природы данных.