Столкнулись с проблемами переобучения и низкой точности? Выбор функций приходит на помощь

Уменьшение размерности

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

Необходимость уменьшения размерности

Уменьшение размерности предотвращает переоснащение.

  • Переобучение — это когда модель запоминает данные и не может их обобщить. Переобучение может быть вызвано также гибкими моделями (например, деревом решений) и многомерными данными.
  • Модель Overfitted не может быть применена к реальным задачам из-за проблемы обобщения.

Типы снижения размерности

  • Выбор функций: методы выбора функций пытаются уменьшить количество функций, отбрасывая наименее важные функции.
  • Извлечение функций. Методы извлечения функций пытаются уменьшить количество функций путем их объединения и преобразования в указанное количество функций.

Выбор функции

  1. Методы фильтрации
  2. Методы-оболочки
  3. Встроенные методы
  4. Важность функции

Импортируйте необходимые библиотеки

Загрузите предварительно обработанные данные

Данные для обучения уже предварительно обработаны. Задействованные этапы предварительной обработки:

  1. Вменение MICE
  2. Преобразование журнала
  3. Преобразование квадратного корня
  4. Порядковое кодирование
  5. Целевое кодирование
  6. Нормализация Z-оценки

Для подробной реализации вышеупомянутых шагов обратитесь к моей записной книжке Kaggle по предварительной обработке данных:

Ссылка на блокнот

Выбор функции

1. Методы фильтрации

Методы фильтрации выбирают функции независимо от используемой модели. Он может использовать следующие методы для выбора полезного набора функций,

  • Корреляция для числовых столбцов
  • Ассоциация Chi2 для категориальных столбцов

Выберите K Best in sci-kit Learn

F_Regression:

F_Regression используется для числовых переменных. F_Regression состоит из 2 шагов:

  • Корреляция вычисляется с использованием каждой функции с целью.
  • Затем корреляция преобразуется в показатель F, а затем в значение p.

Чи2:

  • Chi2 используется для проверки связи между категориальными переменными.

2. Методы-обертки

Методы-оболочки используют оценщик для выбора полезного набора функций. Доступные методы,

  • Рекурсивное устранение признаков
  • Рекурсивное устранение признаков, перекрестная проверка

Рекурсивное устранение признаков (RFE)

  • Оценщик, предоставленный RFE, присваивает веса признакам (например, коэффициентам), RFE рекурсивно исключает подмножество признаков, которым присвоены низкие веса.
  • Оценщик обучается с начальным набором признаков. У оценщика могут быть такие атрибуты, как coef_ или feature_importances_. С помощью этого атрибута оценщика мы находим веса каждой функции.
  • Функции с наименьшим весом удаляются из текущего набора функций. Эта процедура повторяется для удаленного набора до тех пор, пока, наконец, не будет достигнуто указанное количество объектов для выбора.

Рекурсивная перекрестная проверка исключения признаков (RFECV)

  • RFECV очень похож на RFE, но использует перекрестную проверку на каждом этапе обучения и, наконец, выводит оптимальное количество столбцов для выбора.

3. Встроенные методы

Встроенные методы выбирают функции во время самого процесса обучения.

  • Коэффициенты признаков становятся равными нулю, когда важность этого признака низка и, следовательно, этот признак не используется для прогнозирования.

ЛАССО регрессия

LASSO расшифровывается как оператор наименьшей абсолютной усадки и выбора.

λ = штраф (параметр настройки)

При λ = 0 никакие параметры не исключаются, а при λ = 1 это равносильно линейной регрессии.

  • Оценки параметров находятся путем минимизации этой функции стоимости.
  • Когда оценки коэффициентов меньше λ/2, коэффициенты становятся равными нулю.

4. Важность функции

Важность признаков рассчитывается после подгонки модели ко всему набору признаков, в котором каждому из признаков присваивается вес.

  • Модель может иметь атрибуты, такие как coef_ или feature_importances_, которые помогают выбрать подмножество функций. Используя это, наименее важные функции обрезаются.

Выберите из модели в научном наборе

Найдите этот пост в моей записной книжке Kaggle:https://www.kaggle.com/srivignesh/feature-selection-techniques

Ссылки:

[1] М. Рамасвами и Р. Бхаскаран, Исследование методов выбора признаков в образовательном интеллектуальном анализе данных (2009 г.)

Свяжитесь со мной в LinkedIn, Twitter!

Спасибо!