Данные

Normalization & Standardization

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

актуальноТекущий рабочий стандарт

Направления: Машинное обучение · Классический ML

Приведение к сопоставимым масштабам, без которого расстояния, и работают некорректно.

Что означает каждый компонент
  • центрирование: вычитаем среднее, признак становится «отклонением от типичного значения»
  • масштабирование на стандартное отклонение. Обе статистики берутся только по train — иначе утечка

Ключевые тезисы

  • : вычитаем среднее, делим на стандартное отклонение; : сжимаем в [0, 1].
  • Критично для , , и всех методов на основе расстояний; не нужно деревьям.
  • Статистики считаются на train — иначе тест «протекает» в обучение.

Какую задачу решает

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

Масштабирование выравнивает вклад. приводит к нулевому среднему и единичной , min-max — к отрезку , робастное — использует медиану и межквартильный размах и потому не боится . Деревьям и бустингу всё это безразлично: они сравнивают значения с порогом, а не измеряют расстояния.

Что выбрать, если есть выбросы

«сумма заказа»: 95% значений от 500 до 5000, но есть несколько корпоративных заказов на миллион. Min-max сожмёт всю основную массу в диапазон 0–0.005, и различия внутри неё исчезнут. пострадает меньше, но всё равно раздута . RobustScaler использует медиану и IQR — миллионные заказы на них почти не влияют, и основная масса данных распределится по разумному диапазону. Ещё лучше в этом конкретном случае — сначала логарифм, а потом .

Подробный разбор

2 подтемы — объяснения, формулы, примеры и интерактивные графики.

Возраст меняется в диапазоне 20–70, доход — 20 000–500 000. Евклидово расстояние между клиентами будет определяться почти только доходом: разница в возрасте на его фоне незаметна.

МетодНужно ли масштабирование
, , , обязательно — работают с расстояниями
обязательно — влияет на сходимость
Линейные модели с /L2да — иначе штраф несправедлив к признакам разного масштаба
Деревья, , не нужно — сравнения с порогом инвариантны к масштабу
возрастдоход
возраст23.00 … 61.00
доход45000.00 … 210000.00
Преобразование
Два признака до и после разных преобразований — обратите внимание, что делает выброс со StandardScaler

Обозначения
  • стандартное отклонение — разброс величины
  • среднее значение
  • объект: вектор признаков
Robust опирается на квантили и почти не реагирует на
  • Standard — дефолт для большинства задач; не ограничивает диапазон.
  • MinMax — когда нужен строгий отрезок : изображения, входы некоторых сетей.
  • Robust — при тяжёлых хвостах и выбросах.
  • QuantileTransformer / PowerTransformer — когда нужно приблизить распределение к нормальному.
На практике

Классическая ошибка: scaler.fit(X) до разбиения на train/test. Статистики тогда «видят» тест — это утечка, и офлайн-оценка становится оптимистичной.

Где применяется

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

Плюсы, минусы и альтернативы

Плюсы

  • Обязательное условие корректной работы целого класса моделей.
  • Ускоряет сходимость методов иногда в разы.
  • Делает осмысленной и коэффициенты сопоставимыми.
  • Дёшево: одна строка в пайплайне.

Минусы

  • Для деревьев бесполезно — лишний шаг без эффекта.
  • Min-max ломается от единственного выброса.
  • После масштабирования теряют исходные единицы, и интерпретация усложняется.
  • Параметры нужно сохранять и применять в проде в точности теми же.

Брать, если

  • Модель основана на расстояниях или обучается спуском.
  • Используется .
  • различаются по масштабу на порядки.

Не брать, если

  • Модель — дерево, или : эффекта не будет.
  • Нужна прямая интерпретация коэффициентов в исходных единицах.

Чем заменяют

Видеолекции

Записи университетских курсов, где эта тема звучит. Ссылка открывает запись с той секунды, где о ней говорят, — искать по трёхчасовой лекции не нужно.

Связанные темы

Подготовка данных · Метрические и ядровые методы · Утечки и честная валидация

Data leakage85%

Утечка данных · Данные

Ситуация, когда в обучении присутствует информация, недоступная в момент реального предсказания. Главная причина «слишком хороших» метрик.

Train / Validation / Test split85%

Разбиение выборки · Данные

Train учит, validation настраивает гиперпараметры, test даёт единственную честную оценку — и используется один раз.

Data leakage85%

Утечка данных · Практика ML

Самая дорогая ошибка в ML: модель отлично работает офлайн и разваливается в проде.

Cross-validation85%

Кросс-валидация · Оценка моделей

Многократное разбиение выборки, дающее оценку качества вместе с её разбросом.

K-Fold85%

K-Fold · Оценка моделей

Данные делятся на K частей; каждая по очереди становится валидационной.

Stratified K-Fold85%

Стратифицированный K-Fold · Оценка моделей

K-Fold с сохранением пропорции классов в каждом фолде.

Leave-One-Out85%

Leave-One-Out · Оценка моделей

Предельный случай: валидация состоит ровно из одного объекта, и так N раз.

Bootstrap85%

Бутстрэп · Оценка моделей

Многократная выборка с возвращением: даёт распределение метрики и доверительные интервалы без предположений о нормальности.

Data preprocessing75%

Предобработка данных · Данные

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

Missing values75%

Пропущенные значения · Данные

Пропуски бывают случайными и неслучайными — от механизма зависит, можно ли их просто заполнить.

Outliers75%

Выбросы · Данные

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

Encoding75%

Кодирование категорий · Данные

Перевод категориальных признаков в числа: one-hot, ordinal, target encoding, хеширование, эмбеддинги.

Feature engineering75%

Конструирование признаков · Данные

Создание признаков, в которых закономерность становится линейно отделимой или просто более заметной для модели.

ML Pipelines75%

ML-пайплайны · MLOps

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

k-NN65%

Метод k ближайших соседей · Классическое машинное обучение

Ленивый алгоритм: предсказание — это голосование k ближайших объектов обучающей выборки.

SVM65%

Метод опорных векторов · Классическое машинное обучение

Ищет гиперплоскость с максимальным зазором между классами; ядровой трюк добавляет нелинейность без явного перехода в новое пространство.

k-Means65%

k-средних · Классическое машинное обучение

Разбивает объекты на k кластеров, минимизируя суммарное расстояние до центроидов.

Distance65%

Расстояние · Математический справочник

Мера непохожести объектов — основа кластеризации, k-NN и поиска.

Norm65%

Норма · Математический справочник

Мера длины вектора; выбор нормы определяет геометрию задачи.

Metric spaces65%

Метрические пространства · Топологический анализ данных

Множество с функцией расстояния. Любой TDA-пайплайн начинается с выбора метрики.

Проверить себя

Тема встречается в тесте по направлениям — ошибки приведут обратно на эту страницу.

Следующий шагПроверить себя: Классический MLТема встречается в этом тесте 2 раза. Ошибка приведёт обратно на эту страницу — с объяснением, что именно не сошлось.Перейти →

Глава «Данные» последний раз правилась . Нашли ошибку — напишите.