TGViewer
Data Science | Machinelearning [ru] Data Science | Machinelearning [ru] @devsp · 19.8K subscribers
Post #5576 3.22K
Ошибки при train/test split

Train/test split — кажется самой простой частью ML.
Но именно здесь чаще всего ломают всю модель.

И самое опасное — ты можешь даже не заметить

Data Leakage — тихий убийца моделей

Ты случайно «подсматриваешь» в тест.

Примеры:

👉 нормализация на всём датасете до split
👉 target encoding на всех данных
👉 feature, напрямую связанная с таргетом

Модель показывает космический скор,
а в проде — провал.


Случайный split там, где нельзя

Ты делаешь random split…
но данные зависимы.

Примеры:

👉 временные ряды
👉 пользователи (один и тот же user в train и test)
👉 сессии

Модель узнаёт данные, а не обобщает.


Игнорирование времени

В задачах с временем:

👉 ❌ случайный split
👉 ✅ train = прошлое, test = будущее

Иначе ты:

👉 обучаешься на будущем
👉 предсказываешь прошлое

Это не ML. Это читерство.


4️⃣ Дисбаланс классов в split

Ты сделал split и получил:

👉 train: 5% positive
👉 test: 1% positive

Метрики начинают врать.
Решение:

👉 stratified split


Слишком маленький test

Test = 50 объектов
Accuracy = 90%

Звучит круто.
Но это статистический шум.

Маленький test = ненадёжная оценка.


Тест используется как валидация

Классическая ошибка:

👉 обучился
👉 посмотрел на test
👉 подкрутил модель
👉 снова посмотрел

Это уже не test. Это validation 2.0.


Дубликаты в train и test

Если один и тот же объект попал в обе выборки:

Модель просто запоминает.
Особенно критично:

👉 CV
👉 e-commerce
👉 табличные данные с ID


Неправильный split в CV

Cross-validation тоже можно сломать:

👉 leakage между фолдами
👉 группы не учитываются
👉 time-series перемешаны

Используй:

👉 GroupKFold
👉 TimeSeriesSplit


Главный инсайт

Train/test split — это не про «разделить данные».

Это про симуляцию реального мира.
Если split не отражает прод —
все метрики бесполезны.

В одном предложении

Плохой split может сделать плохую модель «идеальной» —
до момента, когда она выйдет в прод.
  • 👍 12
  • 👎 2
More from @devsp
  1. Sep 27, 2026Нейронка живёт у тебя дома — а дотянуться до неё можно откуда угодно Поднимаешь личный LLM…
  2. Sep 27, 2026Нейрочип НТЦ «Модуль»: единственный серийный в стране Разбор единственного серийного нейро…
  3. Sep 27, 2026[Перевод] Промпт-инжиниринг: как лучше общаться с ИИ Что тебе ответит генеративная модель…
  4. Sep 26, 2026Тем, кто только лезет в ML Начинаешь щупать машинное обучение и хочешь нормально въехать в…
  5. Sep 26, 2026NVIDIA тоже подтянулась к тренду: LeetCode-собесы — на выход И весь замес — вокруг трёх те…
  6. Sep 26, 2026От готовых реплик до памяти о контексте: как AI-чаты дошли до нынешнего уровня В первой ча…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →