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

Table of Contents:
· What is Standardization?
  Effect on the distribution of data:Effect of Standardization on different Machine Learning algorithms:Effect on Outliers: 
· What is Normalization?Effect on Distribution of the data:Effect of Normalization on different Machine Learning algorithms:Effect on outliers:
· Observations:

Приведенные выше вопросы также часто задают в интервью. Я постараюсь ответить на них в этом блоге, приведя подходящие примеры. Мы будем использовать StandardScaler и MinMaxScaler sklearn.

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

Взгляните на первые 5 строк наших данных.



Что такое стандартизация?

Стандартизацияили нормализация Z-показателя — это один из методов масштабирования признаков, здесь преобразование признаков осуществляется путем вычитания из среднего значения и деления на стандартное отклонение. Это часто называют нормализацией Z-оценки. Полученные данные будут иметь среднее значение, равное 0, и стандартное отклонение, равное 1.

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

Во-первых, мы разделим наши данные на обучающие и тестовые наборы и применим стандартный масштабатор.

Описание набора данных:

Обратите внимание, что описанный метод, примененный к данным X_train_scaled, показывает, что среднее значение равно 0, а стандартное отклонение равно 1 после применения стандартного масштабатора.



Влияние на распространение данных:

Из приведенных выше точечных диаграмм и диаграмм KDE можно отметить, что распределение данных остается прежним даже после применения стандартного Scaler, меняется только масштаб.

Влияние стандартизации на различные алгоритмы машинного обучения:

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

Влияние на выбросы:

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

Что такое нормализация?

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

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

Описание набора данных:

Обратите внимание, что минимальное значение входных параметров Возраст и Расчетная зарплата стало 0, а максимальное значение стало 1. strong> после применения масштабирования MinMax.

Влияние на распространение данных:

Из приведенных выше диаграмм рассеяния и диаграмм KDE мы можем заметить, что распределение данных остается прежним даже после применения мин-макс масштабатора, меняется только масштаб.

Влияние нормализации на различные алгоритмы машинного обучения:

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

Влияние на выбросы:

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

Наблюдения:

  • Результирующие данные после стандартизации будут иметь среднее значение 0 и стандартное отклонение 1, тогда как результирующие данные после мин.-макс. масштабирование будет иметь минимальное значение 0 и максимальное значение 1 (здесь среднее значение и стандартное отклонение могут быть любыми).
  • Диаграммы рассеяния и диаграммы KDE выше показывают, что в распределении данных не будет изменений до и после применения стандартного масштабатора или мин-макс масштабатора, изменяется только масштаб.
  • Шаг масштабирования признаков должен выполняться при применении алгоритмов, в которых вычисляется расстояние (например, KNN, KMEANS) и используется градиентный спуск (например, линейная и логистическая регрессии, нейронные сети). ).
  • Не будет никакого эффекта масштабирования, когда мы используем древовидные алгоритмы, такие как деревья решений или случайные леса.
  • В приведенных выше примерах точность логистической регрессии и KNN значительно возросла после масштабирования. Но при использовании дерева решений или случайного леса на точность не оказывалось никакого влияния.
  • Выбросы в наборе данных все равно останутся выбросами даже после применения методов масштабирования признаков, поскольку мы, специалисты по данным, обязаны обрабатывать выбросы.
  • Нет жесткого правила, чтобы определить, какую технику использовать, но нам нужно проверить как стандартизацию, так и нормализацию, и на основе результата решить, какую из них использовать.

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

Свяжитесь со мной в LinkedIn.