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

Есть некоторые функции (функции означают столбцы ...), которые мы находим неуместными, и мы опускаем их с первого взгляда, например. Имя, идентификатор столбца.

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

Также есть одно преимущество: выбор функций уменьшает переобучение, таким образом, повышая точность, а также позволяет алгоритму ML обучаться быстрее.

Featurewiz, как следует из названия, — это новая библиотека Python, которая поможет вам выбрать наиболее важные функции / необходимые функции в вашем наборе данных, и это тоже без написания огромного кода. Featurewiz может автоматически определить, является ли проблема регрессией или классификацией.

Как это работает?

Featurewiz использует алгоритм SULOV и рекурсивный XGBoost, чтобы уменьшить количество функций и выбрать лучшие функции в модели. СУЛОВ (Поиск некоррелированного списка переменных) -

1. Он ищет пару сильно коррелированных переменных, которые превышают пороговое значение корреляции.

2. В отношении Целевой переменной находит показатель взаимной информации.

3. Пара с наименьшим показателем взаимной информации отбрасывается.

4. Берется пара с наивысшим информационным баллом и наименьшей корреляцией друг с другом.

Теперь Recursive XGBOOST находит лучшие функции среди оставшихся переменных.

1. Разделить данные на Train и Valid set

2. Найдите лучшие N функций в обучении, а также используйте раннюю остановку, которая фактически предотвращает переобучение.

3. Рекурсивно выполните шаг и повторите его пять раз, а затем объедините их и удалите дубликаты.

Монтаж:

!pip установить featurewiz

Итак, чтобы импортировать featurewiz, который мы используем,

из featurewiz импортировать featurewiz

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

dep_var = 'целевое_значение'

функции, поезд = featurewiz(данные, dep_var, corr_limit=0.7, verbose=2, sep=,, header=0,test_data=, feature_engg=, category_encoders=)

По умолчанию у нас есть предел корреляции, равный 7.

Я поделюсь своим проектом, в котором я использовал Featurewiz на одном из соревнований Kaggle.

— Наташа И Мешрам,

РАЗРАБОТЧИК ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ В ICICI SECURITIES