Данные

Data leakage

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

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

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

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

  • Типичные источники: масштабирование до сплита, признаки из будущего, дубликаты между train и test.
  • В временных рядах любое перемешивание — почти гарантированная утечка.
  • Симптом: офлайн-метрика заметно лучше, чем всё, что вы видите в проде.
Тема также относится к главам:Оценка моделейСхемы валидации · Диагностика

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

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

1

Откуда берётся утечка

Пять типовых сценариев, покрывающих большинство реальных случаев.

  1. Предобработка до разбиения: StandardScaler, отбор признаков или SMOTE, применённые ко всей выборке.
  2. Признаки из будущего: «дата закрытия договора» в задаче предсказания оттока.
  3. Прокси целевой переменной: сумма_страховой_выплаты при предсказании факта страхового случая.
  4. Дубликаты между train и test: один и тот же клиент или почти одинаковые изображения.
  5. Групповая утечка: несколько записей одного пациента разъехались по разным частям выборки.
Как это выглядит

ROC-AUC на кросс-валидации 0.98, в проде — 0.62. Разбор показывает: признак последний_платёж_дата заполняется только после того, как клиент ушёл.

2

Как проверять себя

Дисциплина, которая ловит утечку до релиза.

  • Для каждого признака ответьте: был бы он известен в момент предсказания?
  • Подозрительно высокая метрика — повод искать ошибку, а не радоваться.
  • Посмотрите на важности: один признак с важностью 0.9 почти всегда означает утечку.
  • Проверяйте пересечение групп между train и test явным кодом, а не на глаз.
  • Валидация по времени: обучаемся на прошлом, проверяемся на будущем — так же, как будет в проде.
фолд 1
фолд 2
фолд 3
фолд 4
фолд 5
обучение валидация
обучений модели5
доля валидации20%
схемаK-Fold
Схема разбиения
Переключите схему на временную: валидация всегда идёт после обучающего периода, будущее не используется

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

Надёжность данных · Утечки и честная валидация

Data leakage98%

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

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

Data Quality85%

Качество данных · Инженерия данных

Автоматические проверки, которые ловят поломку источника раньше, чем она попадёт в модель.

Data Contracts85%

Контракты данных · Инженерия данных

Явная договорённость между источником и потребителем: какие поля, каких типов и с какими гарантиями.

Idempotency & Exactly-once85%

Идемпотентность и гарантии доставки · Инженерия данных

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

Change Data Capture85%

Захват изменений (CDC) · Инженерия данных

Чтение журнала изменений базы вместо периодических полных выгрузок.

Feature Stores85%

Хранилища признаков · MLOps

Централизованное хранилище признаков, единое для обучения и онлайн-инференса.

Data preprocessing85%

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

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

Train / Validation / Test split85%

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

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

Cross-validation85%

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

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

K-Fold85%

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

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

Stratified K-Fold85%

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

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

Leave-One-Out85%

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

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

Bootstrap85%

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

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

Normalization & Standardization85%

Нормализация и стандартизация · Данные

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