Регрессия: отбор признаков

Практика вопросов интервью по машинному обучению на Python

Lisa Stuart

Data Scientist

Выбор правильных признаков:

  • Снижает переобучение
  • Повышает точность
  • Улучшает интерпретируемость
  • Сокращает время обучения

Этапы отбора признаков

1 https://www.analyticsindiamag.com/what-are-feature-selection-techniques-in-machine-learning/
Практика вопросов интервью по машинному обучению на Python

Методы отбора признаков

  • Фильтрация: ранжирование признаков по статистическим показателям
  • Обёртка: оценка качества с помощью метода машинного обучения
  • Встроенные методы: итеративное обучение модели для извлечения признаков
  • Важность признаков: древовидные модели машинного обучения
Практика вопросов интервью по машинному обучению на Python

Сравнение методов

Метод Использует модель МО Выбирает лучшее подмножество Может переобучиться
Фильтрация Нет Нет Нет
Обёртка Да Да Иногда
Встроенные Да Да Да
Важность признаков Да Да Да
Практика вопросов интервью по машинному обучению на Python

Статистические тесты коэффициента корреляции

Признак/Отклик Непрерывный Категориальный
Непрерывный Корреляция Пирсона LDA
Категориальный ANOVA Хи-квадрат
Практика вопросов интервью по машинному обучению на Python

Функции для фильтрации

Функция Возвращает
df.corr() Матрицу корреляции Пирсона
sns.heatmap(corr_object) Тепловую карту
abs() Абсолютное значение
Практика вопросов интервью по машинному обучению на Python

Методы-обёртки

  1. Прямой отбор (LARS — метод наименьших углов)
    • Начинает без признаков, добавляет по одному
  2. Обратное исключение
    • Начинает со всех признаков, исключает по одному
  3. Комбинация прямого и обратного отбора (двунаправленное исключение)
  4. Рекурсивное исключение признаков
    • RFECV
Практика вопросов интервью по машинному обучению на Python

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

  1. Lasso Regression
  2. Ridge Regression
  3. ElasticNet

Lasso, Ridge и ElasticNet

Практика вопросов интервью по машинному обучению на Python

Методы важности признаков на основе деревьев

  • Random Forest --> sklearn.ensemble.RandomForestRegressor
  • Extra Trees --> sklearn.ensemble.ExtraTreesRegressor
  • После обучения модели --> tree_mod.feature_importances_
Практика вопросов интервью по машинному обучению на Python
Функция Возвращает
sklearn.svm.SVR Оценщик метода опорных векторов для регрессии
sklearn.feature_selection.RFECV Рекурсивное исключение признаков с кросс-валидацией
rfe_mod.support_ Булев массив выбранных признаков
ref_mod.ranking_ Ранжирование признаков, выбранные=1
sklearn.linear_model.LinearRegression Оценщик линейной модели
sklearn.linear_model.LarsCV Метод наименьших углов с кросс-валидацией
LarsCV.score Коэффициент R²
LarsCV.alpha_ Оценённый параметр регуляризации
Практика вопросов интервью по машинному обучению на Python

Давайте потренируемся!

Практика вопросов интервью по машинному обучению на Python

Preparing Video For Download...