Нормализация против стандартизации
Масштабирование функций - один из наиболее важных этапов предварительной обработки данных в машинном обучении. Алгоритмы, вычисляющие расстояние между элементами, смещаются в сторону более высоких численных значений, если данные не масштабируются.
Алгоритмы на основе дерева довольно нечувствительны к масштабу функций. Кроме того, масштабирование функций помогает машинному обучению, а алгоритмы глубокого обучения обучаются и сходятся быстрее.
Есть некоторые методы масштабирования функций, такие как нормализация и стандартизация, которые являются наиболее популярными и в то же время наиболее запутанными.
Давайте разрешим эту путаницу.
Нормализация или минимальное-максимальное масштабирование используется для преобразования функций в аналогичный масштаб. Новая точка рассчитывается как:
X_new = (X - X_min) / (X_max - X_min)
Это масштабирует диапазон до [0, 1] или иногда до [-1, 1]. С геометрической точки зрения преобразование сжимает n-мерные данные в n-мерный единичный гиперкуб. Нормализация полезна, когда нет выбросов, поскольку она не может с ними справиться. Обычно мы масштабируем возраст, а не доходы, потому что лишь немногие люди имеют высокие доходы, но возраст близок к одинаковому.
Стандартизация или Z-оценка Нормализация - это преобразование характеристик путем вычитания из среднего значения и деления на стандартное отклонение. Это часто называют Z-оценкой.
X_new = (X - среднее) / стандартное
Стандартизация может быть полезна в случаях, когда данные соответствуют гауссовскому распределению. Однако это не обязательно должно быть правдой. С геометрической точки зрения, он переводит данные в средний вектор исходных данных в начало координат и сжимает или расширяет точки, если стандартное значение равно 1, соответственно. Мы видим, что мы просто меняем среднее значение и стандартное отклонение на стандартное нормальное распределение, которое по-прежнему является нормальным, поэтому форма распределения не изменяется.
На стандартизацию не влияют выбросы, потому что нет предопределенного диапазона преобразованных функций.
Разница между нормализацией и стандартизацией
С.НО. | Нормализация | Стандартизация |
---|---|---|
1. | Для масштабирования используются минимальное и максимальное значение признаков. | Среднее и стандартное отклонение используются для масштабирования. |
2. | Он используется, когда признаки имеют разный масштаб. | Он используется, когда мы хотим гарантировать нулевое среднее значение и стандартное отклонение единицы. |
3. | Масштабирует значения между [0, 1] или [-1, 1]. | Он не ограничен определенным диапазоном. |
4. | На это действительно влияют выбросы. | На него гораздо меньше влияют выбросы. |
5. | Scikit-Learn предоставляет преобразователь под названием MinMaxScaler для нормализации. | Scikit-Learn предоставляет преобразователь под названием StandardScaler для стандартизации. |
6. | Это преобразование сжимает n-мерные данные в n-мерный единичный гиперкуб. | Он переводит данные в средний вектор исходных данных в начало координат и сжимает или расширяет. |
7. | Это полезно, когда мы не знаем о распределении | Это полезно, когда распределение признаков нормальное или гауссовское. |
8. | Это часто называют нормализацией масштабирования. | Это часто называют нормализацией Z-показателя. |