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

Сегодня мы рассмотрим, что такое выбросы, их причины и последствия, различные способы их выявления и, наконец, различные методы борьбы с ними с помощью примеров кода.

Пример кода и набор данных для этой статьи доступны здесь.

Что такое выброс?

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

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

Причины и последствия

Выбросы могут быть вызваны неопределенностью измерения или экспериментальной ошибкой.

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

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

Как обнаружить выбросы

Выбросы в данных можно наблюдать с помощью ряда методов. В этой статье мы рассмотрим самый популярный метод - визуализацию.

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

Как измерить выбросы

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

I) Если данные распространяются нормально

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

Нижняя граница = Среднее - 3 * (стандартное отклонение)

Верхняя граница = Среднее + 3 * (стандартное отклонение)

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

II) Если данные либо смещены вправо, либо влево

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

Межквартильный размах (IQR) = Q3 (75-й процентиль) -Q1 (25-й процентиль)

Формулу для границы выброса можно рассчитать как:

Нижняя граница = первый квартиль (Q1 / 25-й процентиль) - (1,5 * IQR)

Верхняя граница = третий квартиль (Q3 / 75-й процентиль) + (1,5 * IQR)

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

Нижняя граница = первый квартиль (Q1 / 25-й процентиль) - (3 * IQR)

Верхняя граница = Третий квартиль (Q3 / 75-й процентиль) + (3 * IQR)

Давайте посмотрим на приведенный ниже код, чтобы найти границы выбросов для столбца тарифов:

Следующие подходы можно использовать для работы с выбросами после того, как мы определили для них границы:

  1. Удалить наблюдения
  2. Вменение

1. Удалите наблюдения

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

2. Вменение

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

Ссылки

· Https://towardsdatascience.com/understanding-boxplots-5e2df7bcbd51

· Https://youtu.be/yoLpcelanpl

· Https://medium.com/analytics-vidhya/how-to-remove-outliers-for-machine-learning-24620c4657e8

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

Спасибо, что нашли время прочитать этот пост. Если вам понравилось это чтение, нажмите кнопку 👏 и поделитесь им с другими. Вы также можете проверить другие интересные статьи в моем профиле Medium. Если есть вопросы, оставляйте их в комментариях, и я постараюсь на них ответить.

Вы можете связаться со мной в LinkedIn, Facebook и Instagram.

До следующего раза, Адиос Амиго !!!!