глоссарий

Temporal split

Temporal split

«Временное разбиение» (temporal split) — это способ проверки моделей машинного обучения на данных, упорядоченных во времени. Вместо случайного перемешивания примеров, как в обычных задачах, данные делятся на две части: более ранние используются для обучения, более поздние — для теста. Такой подход отражает реальную ситуацию, где модель должна предсказывать будущее на основе прошлого, а не подглядывать в него.

Важность этого термина связана с главной ловушкой прогнозирования: утечкой информации из будущего. Если модель во время тестирования увидит примеры, которые в реальности произошли позже, её показатели будут обманчиво высокими. Temporal split гарантирует, что оценка честная: модель никогда не встречалась с событиями, которые ещё не наступили. Иначе компания, построившая прогноз спроса, обнаружила бы, что в реальности система ошибается — просто потому, что на тестах она «списывала» у будущего.

Интуитивно это работает как экзамен по истории: вы учите материал до определённой даты, а на экзамене получаете вопросы только о событиях после неё. В случайном же разбиении ученику могли бы попасться вопросы по темам, которые он видел в билетах, — это, конечно, проще, но никак не проверяет умение рассуждать о неизвестном. Temporal split выстраивает барьер по времени: всё, что случилось раньше, — учебник, всё, что позже, — экзамен.

Представьте сервис доставки еды, который прогнозирует время приезда курьера. Обучают модель на данных за январь–июнь, а проверяют на июле. Если бы июльские заказы участвовали в обучении, модель бы знала «ответ» на тестовые дни и казалась точной. Но в реальности июль — неизвестность. Temporal split позволяет увидеть настоящую ошибку и исправить модель до запуска.

Кратко: временное разбиение — это элементарное правило честной проверки прогнозов, которое защищает от самообмана и делает оценку модели соответствующей её будущей работе. Без него любая система предсказаний рискует остаться лабораторным чудом, бесполезным в реальном времени.