Як обробляти викиди під час підготовки даних?

Якщо ви хочете, щоб ваша модель машинного навчання працювала належним чином, вам потрібна хороша підготовка даних, а в цьому процесі обробка викидів (outliers) є ключовою.

Що таке викиди?

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

Чому необхідно обробляти викиди?

  1. Вплив на моделі машинного навчання:
  • Викиди можуть спотворити процес навчання моделі, що призведе до неточних прогнозів.
  • Моделі, чутливі до розподілу даних, як-от лінійна регресія, можуть стати викривленими.

2. Вплив на статистичні метрики:

  • Викиди можуть збільшити середнє значення та стандартне відхилення, що впливає на інтерпретацію даних.
  • Вони також можуть створювати оманливі візуалізації та висновки.

Що станеться, якщо не обробляти викиди?

  • Погана продуктивність моделі: Присутність викидів може знизити здатність моделі до узагальнення.
  • Невірні метрики: Статистичні підсумки, як середнє значення та стандартне відхилення, можуть не відображати справжній розподіл даних.
  • Помилкові висновки: Аналіз може стати упередженим, що призведе до неправильних бізнесових або дослідницьких рішень.

Boxplot: Інструмент для виявлення викидів

Boxplot (або діаграма «ящик з вусами») — це простий і ефективний графічний інструмент для візуалізації розподілу набору даних і виявлення викидів.

Як працює Boxplot?

  1. Візуальні компоненти:
  • Ящик: Означає міжквартильний діапазон (IQR), розподіл середніх 50% даних.
  • Медіана (Q2): Лінія всередині ящика позначає медіанне значення набору даних.
  • Вуса: Протягуються до найменших і найбільших значень в межах 1,5 рази від IQR від Q1 та Q3.
  • Викиди: Точки даних, що знаходяться за межами вусів, показані окремими крапками.

2. Виявлення викидів:

  • Нижня межа: Q1−1.5×IQR
  • Верхня межа: Q3+1.5×IQR
  • Будь-яка точка поза цими межами вважається викидом.

Візуалізація

pic

Як можна обробити викиди?

  1. Видалити викиди:
  • Це підходить, якщо викиди є помилками або не мають значення для аналізу.
  • Приклад:
df = df[(df['value'] >= lower_bound) & (df['value'] <= upper_bound)]

2. Обмежити або обмежити значення викидів:

  • Замінити викиди на найближче значення, яке не є викидом (наприклад, межі вусів).
df['value'] = df['value'].clip(lower=lower_bound, upper=upper_bound)

3. Залишити викиди:

  • Залишити викиди, якщо вони представляють рідкісні, але допустимі події, як-от аномалії при виявленні шахрайства.

4. Застосувати трансформації:

  • Використовувати логарифмічні або квадратні корені для зменшення впливу викидів.

5. Використовувати стійкі методи:

  • Перейти до алгоритмів, які менш чутливі до викидів, як-от дерева рішень.

Ефективно обробляючи викиди, ви можете забезпечити, щоб ваші дані були чистими, надійними та готовими до створення стійких моделей машинного навчання.

Перекладено з: How to Handle Outliers in Your Data Preparation?

Leave a Reply

Your email address will not be published. Required fields are marked *