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

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

Использование 𝜙k с PhikSelector от Kydavra

В первую очередь вам потребуется установить библиотеку Kydavra:

pip install kydavra

Не забудьте обновить его, если он уже установлен:

pip install — upgrade kydavra

Теперь нам нужно импортировать модель, сгенерировать селектор, а затем применить его к нашему набору данных:

from kydavra import PhikSelector
phks = PhikSelector()
phks.select(df, 'target')

Функция выбора принимает фрейм данных и заданный целевой столбец в качестве параметров. Что касается селектора, то он принимает следующие параметры:

  • min_corr (с плавающей запятой, от 0 до 1, по умолчанию = 0,5): минимальное положительное значение корреляции, которое должно быть у функции с целевым значением.
  • max_corr(число с плавающей запятой, от 0 до 1, по умолчанию = 0,8): максимальное положительное значение корреляции, которое должно иметь свойство с целевым значением.
  • erase_corr (логическое значение, по умолчанию = False): Если установлено значение False, селектор не стирает функции, которые сильно коррелируют между собой. Если установлено значение True, селектор стирает функции, которые сильно коррелируют между собой

Давайте попробуем:

Давайте проверим производительность PhikSelector на наборе данных UCI болезней сердца:

Теперь мы применим линейную регрессию для следующих функций:

['age' 'sex' 'cp' 'trestbps' 'chol' 'fbs' 'restecg' 'thalach' 'exang' 'oldpeak' 'slope' 'ca' 'thal']

Мы получаем следующую среднюю абсолютную ошибку: 0,323376589727377.

После применения PhikSelector мы видим, что лучшими функциями в соответствии с ним являются:

['age', 'sex', 'cp', 'thalach', 'exang', 'oldpeak', 'ca', 'thal']

Итак, мы повторно используем линейную регрессию и получим следующую среднюю абсолютную ошибку: 0,2936848634351146.

Как видим, ошибка уменьшилась, чего мы и добивались.

Заключение

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

Сделано с помощью ❤ от Sigmoid.

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

Полезные ссылки :

Подпишитесь на нас: