Толковый словарь по нейросетям и искусственному интеллекту
Утечка данных
Категория термина
Data Leakage (утечка данных) — это ошибка в процессе подготовки данных или построения модели, при которой информация из будущего (из тестового набора, из меток, из целевой переменной или из нерелевантных источников) незаконно попадает в обучающую выборку, что приводит к искусственно завышенной точности модели во время обучения и валидации, но к её провалу на реальных данных.
❗ Почему это важно:
Data leakage приводит к тому, что модель обучается на информации, которую она не сможет иметь в реальности, и потому не может обобщать. Это создаёт ложное ощущение успешности модели, которое рассыпается при использовании на новых данных.
⚠️ Виды утечек:
- Утечка из будущего (Target leakage):
Модель имеет доступ к переменным, которые формируются уже после предсказания (например, переменная "оплатил ли клиент кредит", когда предсказывается "даст ли банк кредит"). - Утечка из теста в обучение (Train/Test leakage):
Перемешивание данных между обучающей и тестовой выборками, особенно при неправильном кросс-валидационном разбиении (например, нормализация по всей выборке перед разбиением). - Утечка через особенности (Feature leakage):
В признаки случайно включаются те, что напрямую связаны с целевой переменной (например, «сумма налога» при предсказании «дохода»).
🔍 Примеры:
| Пример | Почему это утечка? |
|---|---|
| Вы используете данные за 2025 год для предсказания на 2024 | Модель знает будущее |
| Нормализуете данные по всей таблице до разделения на train/test | Статистика из теста влияет на train |
| Признак "дата смерти" в задаче предсказания вероятности смерти | Он напрямую связан с целевым значением |
🧠 Как избежать:
- Всегда разделяйте данные до любой обработки (scaling, encoding).
- Убедитесь, что признаки логически доступны в момент предсказания.
- Проводите кросс-валидацию корректно — без «заглядывания» в будущее.
- Оценивайте модель только на отложенном тесте или новых данных.
- Будьте осторожны с агрегациями и временными сдвигами.
💡 Связанные понятия:
- Cross-validation — может привести к утечке, если сделана неправильно.
- Feature Engineering — может стать источником утечки при создании признаков.
- Overfitting — утечка может усиливать переобучение.
- Data Splitting — ключ к предотвращению утечки.
📦 Заключение:
Data Leakage — это одна из самых коварных ошибок в машинном обучении. Она незаметна на этапе обучения, но может полностью обесценить вашу модель в реальном применении. Грамотная организация пайплайна обработки данных и строгая проверка на логическую доступность информации во времени — залог надёжных результатов.