Я работаю над предварительной обработкой данных и хочу на практике сравнить преимущества стандартизации данных, нормализации и надежного масштабирования.
Теоретически это следующие рекомендации:
Преимущества:
- Стандартизация: масштабирует функции таким образом, чтобы распределение центрировалось вокруг 0 со стандартным отклонением 1.
- Нормализация: сжимает диапазон, так что теперь диапазон составляет от 0 до 1 (или от -1 до 1, если есть отрицательные значения).
- Робастный масштабатор: похож на нормализацию, но вместо этого использует межквартильный диапазон, поэтому он устойчив к выбросам.
Недостатки:
- Стандартизация: не годится, если данные не распределены нормально (т. е. нет распределения по Гауссу).
- Нормализация: сильно подвержены влиянию выбросов (т. е. экстремальных значений).
- Надежный масштабатор: не учитывает медианное значение и фокусируется только на тех частях, где находятся объемные данные.
Я создал 20 случайных числовых входов и попробовал вышеупомянутые методы (числа красного цвета представляют выбросы):
Я заметил, что - действительно - выбросы отрицательно повлияли на нормализацию, и шкала изменений между новыми значениями стала крошечной (все значения почти идентичны -6 цифр после десятичной точки- _1 _ em>) даже есть заметные отличия между исходными входами!
Мои вопросы:
- Правильно ли я говорю, что на стандартизацию также негативно влияют крайние значения? Если нет, то почему в соответствии с предоставленным результатом?
- Я действительно не вижу, как Robust Scaler улучшил данные, потому что у меня все еще есть экстремальные значения в полученных набор данных? Любая простая полная интерпретация?