Почему мне следует стандартизировать или нормализовать?

Такие термины, как масштабирование функций, нормализация и стандартизация, очень распространены в мире науки о данных и машинного обучения. Эти термины могут сбивать с толку вначале, когда кто-то впервые пытается ориентироваться в водах машинного обучения. Цель этой статьи - развить понимание этих терминов.

Что, когда и зачем использовать масштабирование функций?

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

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

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

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

Мин. Макс. Нормализация:

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

  • где x ’- нормализованное значение, а x - исходное значение.
  • Все значения x находятся в диапазоне от 0 до 1.

Рассмотрим этот простой пример, в котором мы хотим нормализовать характеристику, содержащую потребление электроэнергии каждым домом в городе. Расход составляет от 60 до 360 единиц. Чтобы изменить масштаб этих данных, мы вычитаем 60 (минимальное значение) из показаний электроэнергии в каждом доме и делим их на 300 (максимальное значение минус минимальное значение).

Нормализация min max гарантирует, что все функции будут иметь одинаковый масштаб, но она не очень хорошо обрабатывает выбросы. Выбросы также переносятся в диапазон [0,1], таким образом подавляя остальные данные.

Стандартизация (нормализация Z-балла):

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

  • x ’- стандартизованное значение, а s - исходное нестандартное значение.
  • x bar - среднее значение, а сигма - стандартное отклонение исходной характеристики.
  • Среднее значение новой стандартизированной функции равно нулю, а стандартное отклонение равно 1.
  • Значения не ограничены конкретным диапазоном.

Нормализация против стандартизации:

Нет конкретного правила, определяющего, когда и какой метод использовать.

Когда данные распределены по Гауссу, люди предпочитают стандартизацию.

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