Ситуация, когда в обучении присутствует информация, недоступная в момент реального предсказания. Главная причина «слишком хороших» метрик.
Ключевые тезисы
- Типичные источники: масштабирование до сплита, признаки из будущего, дубликаты между train и test.
- В временных рядах любое перемешивание — почти гарантированная утечка.
- Симптом: офлайн-метрика заметно лучше, чем всё, что вы видите в проде.
Подробный разбор
2 подтем — раскройте любую, чтобы увидеть объяснение, формулы, примеры и интерактивные графики.
1Откуда берётся утечка
Пять типовых сценариев, покрывающих большинство реальных случаев.
- Предобработка до разбиения:
StandardScaler, отбор признаков или SMOTE, применённые ко всей выборке. - Признаки из будущего: «дата закрытия договора» в задаче предсказания оттока.
- Прокси целевой переменной:
сумма_страховой_выплатыпри предсказании факта страхового случая. - Дубликаты между train и test: один и тот же клиент или почти одинаковые изображения.
- Групповая утечка: несколько записей одного пациента разъехались по разным частям выборки.
ROC-AUC на кросс-валидации 0.98, в проде — 0.62. Разбор показывает: признак последний_платёж_дата заполняется только после того, как клиент ушёл.
2Как проверять себя
Дисциплина, которая ловит утечку до релиза.
- Для каждого признака ответьте: был бы он известен в момент предсказания?
- Подозрительно высокая метрика — повод искать ошибку, а не радоваться.
- Посмотрите на важности: один признак с важностью 0.9 почти всегда означает утечку.
- Проверяйте пересечение групп между train и test явным кодом, а не на глаз.
- Валидация по времени: обучаемся на прошлом, проверяемся на будущем — так же, как будет в проде.
Связанные темы
Надёжность данных · Утечки и честная валидация
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%
Нормализация и стандартизация · ДанныеПриведение признаков к сопоставимым масштабам, без которого расстояния, градиенты и регуляризация работают некорректно.