Почему мне следует стандартизировать или нормализовать?
Такие термины, как масштабирование функций, нормализация и стандартизация, очень распространены в мире науки о данных и машинного обучения. Эти термины могут сбивать с толку вначале, когда кто-то впервые пытается ориентироваться в водах машинного обучения. Цель этой статьи - развить понимание этих терминов.
Что, когда и зачем использовать масштабирование функций?
Масштабирование функций - это метод преобразования данных, который мы используем для того, чтобы шкалы различных функций не соответствовали важности, присвоенной этой функции. Когда мы работаем с наборами данных, где масштабы объектов различаются, мы используем масштабирование объектов.
Когда пространственные объекты имеют множество масштабов, таких как килограмм, грамм, миллиграмм, литр, куб метр и т. Д., И масштабирование признаков не выполняется, модель может быть смещена в сторону одной или нескольких функций. В случае градиентного спуска масштаб данных может влиять на частные производные параметров модели.
Масштабирование функций очень важно для некоторых алгоритмов машинного обучения, в то время как на некоторые алгоритмы масштабирование функций вообще не влияет. Это происходит потому, что разные алгоритмы используют разные методы обучения.
Например, алгоритмы, основанные на расстоянии, и те, которые используют градиентный спуск, могут значительно выиграть от масштабирования функций. С другой стороны, для деревьев решений масштабирование функций несущественно.
Мин. Макс. Нормализация:
Метод нормализации масштабирования функции основан на использовании минимального и максимального значений в функции. Допустим, мы хотим нормализовать функцию, как мне это сделать. Новое нормализованное значение для каждого элемента в функции дается следующей формулой:
- где x ’- нормализованное значение, а x - исходное значение.
- Все значения x находятся в диапазоне от 0 до 1.
Рассмотрим этот простой пример, в котором мы хотим нормализовать характеристику, содержащую потребление электроэнергии каждым домом в городе. Расход составляет от 60 до 360 единиц. Чтобы изменить масштаб этих данных, мы вычитаем 60 (минимальное значение) из показаний электроэнергии в каждом доме и делим их на 300 (максимальное значение минус минимальное значение).
Нормализация min max гарантирует, что все функции будут иметь одинаковый масштаб, но она не очень хорошо обрабатывает выбросы. Выбросы также переносятся в диапазон [0,1], таким образом подавляя остальные данные.
Стандартизация (нормализация Z-балла):
Стандартизация - это способ масштабирования функций, позволяющий избежать проблем с выбросами (выбросы не удаляются, поскольку существуют другие методы, такие как отсечение). Стандартизация осуществляется по следующей формуле:
- x ’- стандартизованное значение, а s - исходное нестандартное значение.
- x bar - среднее значение, а сигма - стандартное отклонение исходной характеристики.
- Среднее значение новой стандартизированной функции равно нулю, а стандартное отклонение равно 1.
- Значения не ограничены конкретным диапазоном.
Нормализация против стандартизации:
Нет конкретного правила, определяющего, когда и какой метод использовать.
Когда данные распределены по Гауссу, люди предпочитают стандартизацию.
Нормализация предпочтительна, когда распределение данных неизвестно. На нормализацию сильно влияют выбросы.