Я имею дело с проблемой машинного обучения временных рядов. Предположим, у моего набора данных есть объективная функция под названием Sales . После некоторого анализа данных я заметил, что существует четкая связь между продажами сегодня и продажами 7 дней назад, поэтому я добавил новые функции, такие как Sales-n , где n означает дни до этогоэкземпляр. Например:
Sales Sales-1 Sales-2 Sales-3 Sales-4 Sales-5
0 5 NaN NaN NaN NaN NaN
1 5 5.0 NaN NaN NaN NaN
2 3 5.0 5.0 NaN NaN NaN
3 6 3.0 5.0 5.0 NaN NaN
4 7 6.0 3.0 5.0 5.0 NaN
5 8 7.0 6.0 3.0 5.0 5.0
6 9 8.0 7.0 6.0 3.0 5.0
Проблема, которая возникает, когда я использую такого рода функции, заключается в том, что при прогнозировании мне нужно идти один за другим, а когда прогноз завтра , Продажи-1 завтрашнего дня - это сегодня Прогноз . Это означает, что после каждого прогноза мне приходится вручную вводить все те переменные, которые в какой-то момент будут являться прогнозами.
После того, как у меня есть модель, обновить очень просто. все эти поля и продолжить прогнозирование. Однако, мне кажется невозможным получить лучшую модель с GridSearchCV из-за того, как она выполняет оценку в наборе данных проверки. Поэтому мой вопрос: есть ли способ применить ту же оценочную стратегию , которую я использую, когда прогнозирую, но на этапе перекрестной проверки?
Заранее большое спасибо.