Z-score Z

Стандартизированное отклонение значения от среднего, выраженное в единицах стандартного отклонения. Показывает, на сколько сигм точка данных отличается от среднего.

English Z-score, standard score, z-value
Синонимы стандартный балл, z-оценка, стандартизированное значение, z-значение, стандартный скор

Z-score (стандартный балл) — это число, которое показывает, на сколько стандартных отклонений конкретное значение отличается от среднего арифметического набора данных. Если Z-score равен 2, это значит, что значение на две сигмы выше среднего; если −1.5 — на полторы сигмы ниже. Z-score переводит любые данные в единую безразмерную шкалу, где среднее всегда равно 0, а стандартное отклонение — 1.

Как это работает

Z-score вычисляется по формуле: из конкретного значения вычитается среднее по выборке, а результат делится на стандартное отклонение. После такого преобразования весь набор данных имеет среднее 0 и стандартное отклонение 1. Это позволяет сравнивать между собой величины с разными единицами измерения — например, рост в сантиметрах и вес в килограммах.

В нейросетях и машинном обучении Z-score-нормализация (её также называют стандартизацией) применяется к входным признакам перед подачей в модель. Алгоритмы градиентного спуска работают быстрее и стабильнее, когда все признаки находятся в сопоставимом масштабе. Без стандартизации признак с большим разбросом значений (например, доход в рублях) будет доминировать над признаком с малым разбросом (например, возраст), что искажает обучение.

В глубоком обучении Z-score используется не только для входных данных, но и внутри архитектуры — например, в batch normalization скрытые активации слоя стандартизируются по текущему батчу. Это ускоряет сходимость и снижает эффект исчезающих градиентов.

Зачем это нужно

В анализе данных Z-score решает три задачи. Первая — сравнение разнородных признаков: после стандартизации все переменные вносят равный вклад в расстояние между точками. Вторая — обнаружение аномалий: значения с модулем Z-score больше 3 встречаются крайне редко (менее 0.3% для нормального распределения) и считаются выбросами. Третья — подготовка данных для нейросетей: модели с градиентным обучением требуют, чтобы признаки были в одном масштабе.

В промт-инжиниринге Z-score применяется для нормализации оценок качества ответов модели. Когда несколько промтов оцениваются по разным метрикам (CLIP score, DreamSim и т.д.), Z-score приводит их к единой шкале, позволяя корректно сравнивать и ранжировать.

Примеры

  • Обнаружение мошенничества с картами. Транзакция на 450 000 рублей при среднем чеке 3 000 рублей и стандартном отклонении 1 200 рублей даёт Z-score ≈ 372. Такое значение с огромным запасом превышает порог 3 и помечается как аномалия для ручной проверки.

  • Нормализация признаков для предсказания цен на жильё. Датасет содержит признаки «площадь» (20–500 м²) и «количество комнат» (1–10). Без стандартизации модель будет опираться почти исключительно на площадь. После Z-score-нормализации оба признака получают сопоставимый вес.

  • Контроль качества в промышленности. Датчик вибрации на конвейере выдаёт показания, Z-score которых стабильно находится в диапазоне от −2 до +2. Резкий скачок до 4.7 сигнализирует о зарождающейся неисправности подшипника.

  • Сравнение промтов в генеративном AI. Два промта оцениваются по метрикам CLIP и DreamSim. Z-score-нормализация каждой метрики позволяет построить единый рейтинг и выбрать промт с наилучшим средним стандартизированным баллом.

Формула

Для одного значения x формула Z-score выглядит так:

Z = (x − μ) / σ

где:

  • x — исходное значение;

  • μ — среднее арифметическое по выборке;

  • σ — стандартное отклонение по выборке.

Для стандартизации всего набора данных каждое значение заменяется на свой Z-score. После этого среднее нового набора равно 0, а стандартное отклонение — 1.

Интерпретация значений:

  • |Z| < 1 — значение типичное, близко к среднему;

  • 1 ≤ |Z| < 2 — умеренное отклонение;

  • 2 ≤ |Z| < 3 — сильное отклонение, повод для внимания;

  • |Z| ≥ 3 — аномалия или выброс.

Типичные ошибки

  • Применение Z-score к данным с ненормальным распределением без проверки. Z-score предполагает, что данные хотя бы приблизительно соответствуют нормальному распределению. Для сильно скошенных распределений (например, доходы населения) Z-score даёт искажённую картину — используйте робастные методы на основе медианы и MAD (median absolute deviation).

  • Вычисление среднего и стандартного отклонения на тестовой выборке. Параметры нормализации (μ и σ) должны быть вычислены только на обучающей выборке, а затем применены к валидационной и тестовой. Иначе возникает утечка данных (data leakage) и завышенная оценка качества модели.

  • Использование Z-score для признаков, где ноль имеет физический смысл. Если признак — это количество покупок, Z-score может дать отрицательные значения, что нефизично. В таких случаях лучше подходит Min-Max-нормализация.

  • Игнорирование выбросов при вычислении μ и σ. Один экстремальный выброс может сильно сдвинуть среднее и раздуть стандартное отклонение, сделав Z-score остальных точек неинформативным.

Как улучшить

  • Проверяйте распределение перед стандартизацией. Постройте гистограмму или QQ-plot. Если распределение далеко от нормального, рассмотрите логарифмирование или робастный Z-score на основе MAD.

  • Разделяйте вычисление параметров и применение. Сохраняйте μ и σ, полученные на train-выборке, и используйте их для transform на val/test. В scikit-learn для этого есть StandardScaler.

  • Для потоковых данных используйте скользящее окно. Временные ряды нестационарны: среднее и стандартное отклонение меняются со временем. Rolling Z-score с окном (например, 168 точек для недельных данных) даёт более точные результаты, чем глобальная стандартизация.

  • Комбинируйте Z-score с другими методами обнаружения аномалий. Z-score хорошо ловит точечные выбросы, но пропускает контекстные аномалии. Ensemble из Z-score, изоляционного леса и IQR повышает полноту обнаружения.

  • Для признаков с выбросами применяйте робастную версию. Замените среднее на медиану, а стандартное отклонение — на MAD, умноженный на коэффициент 1.4826. Это делает Z-score устойчивым к экстремальным значениям.

Источники

Google Developers — Data Preparation and Feature Engineering: Z-Score Scaling (https://developers.google.com/machine-learning/data-prep/transform/normalization)

World Bank — Financial Stability: Bank Z-score (https://www.worldbank.org/en/publication/gfdr/gfdr-2016/background/financial-stability)

ScienceDirect — A systematic literature review and taxonomy of normalization techniques in training DNNs for time-series data (2026)

IEEE Xplore — Unsupervised Anomaly Detection for Network Intrusion Using Deep Autoencoders and Statistical Modeling (2025)