В пакете AutoTs есть ли способ обновить модель новыми данными без повторного обучения модели на этих данных?

Вопрос или проблема

Пакет autoTS автоматически подберет лучшую модель для конкретного временного ряда. Однако я отмечаю, что метод .predict не имеет опции обновления данных обучения с помощью другого набора данных перед тем, как сделать предсказание.

Что я имею в виду: предположим, у вас есть двадцать точек данных. Вы обучаете и валидируете модель на первых 15 точках данных, но хотите протестировать модель на оставшихся 5 точках данных (с однократными прогнозами) по одной за раз. Это требует вычисления первоначального однократного прогноза, обновления данных обучения первыми 16 точками данных, вычисления однократного прогноза, обновления набора данных первыми 17 точками данных, вычисления однократного прогноза и так далее.

Похоже, что это можно сделать в AutoTS только путем обучения модели на расширенном наборе данных, таким образом получая новые веса перед каждым однократным прогнозом. Я хочу узнать, есть ли способ сделать это без повторного обучения?

Ответ или решение

Автоматизация прогнозирования временных рядов с использованием инструментария, такого как AutoTS, представляет собой мощное решение для многих задач анализа данных. Однако в его использовании возникает отдельный вопрос: как обновить модель новыми данными без полной повторной тренировки? Давайте рассмотрим данную проблему более подробно.

Теория

AutoTS стремится автоматически подбирать модель, которая наилучшим образом соответствует определённому временному ряду. В основе его работы лежит процесс оценки множества возможных моделей и выбор оптимальной на основании заданных критериев. Однако, как вы уже заметили, метод .predict в AutoTS не предоставляет возможности обновления обучающего набора данных новой выборкой перед выполнением прогноза. В традиционных стационарных методах машинного обучения обновление модели с имеющимися весами без повторного обучения модели практикуется редко, так как это может привести к уменьшению точности и несоответствию модели.

Пример

Рассмотрим ситуацию. У нас есть временной ряд из двадцати точек данных. Мы обучили и валидировали модель на первых 15 точках. После этого хотим протестировать модель на оставшихся 5 точках с шаговым прогнозом. Это означает, что необходимо выполнить начальный шаговый прогноз, обновить обучающие данные, включая первые 16 точек, снова выполнить шаговый прогноз, снова обновить данных, включая первые 17 точек, и так далее.

В AutoTS для этих целей предусмотрено повторное обучение модели на расширенном наборе данных, что ведёт к пересчёту параметров модели. Хотя это обеспечивает точность и соответствие модели новым данным, иногда такой подход недостаточно эффективен с точки зрения времени и ресурсов, особенно в ситуациях, требующих оперативные решения.

Применение

Обновление модели без её полной переобучения возможно реализовать в некоторых других инструментах и методах временных рядов, таких как модели на основе фильтров Калмана или модели ARIMA, если они позволяют гибкое обновление состояния. Однако для AutoTS текущая архитектура не предусматривает подобного функционала. В теории, модификация базового кода AutoTS для увеличения числа данных в скользящем окне клиринга могла бы решить эту проблему, хотя на практике это может требовать обширной модификации кода и глубокого понимания его внутренней логики.

Для решения вашей задачи следует изыскать баланс между точностью модели и временем её обновления, что может заключаться в подборе модели, устойчивой к небольшим изменениям в данных, либо в переходе на другой инструмент анализа временных рядов, поддерживающий подобный методологи.

Короче говоря, следует выделить задачу и обработать её при помощи инструментов, подходящих для сочетания данных и прогноза: возможно рассмотреть использование кастомизированных решений на основе Python-библиотек, которые позволят сохранять промежуточные состояния модели и обновлять их без полного ретренинга.

В итоге, могло бы быть целесообразно исследовать возможность кастомных решений, позволяющих сохранять и вовлекать более современный подход к машинному обучению, чтобы ваши модели временных рядов отражали изменения без необходимости излишней траты временных ресурсов.

В долгосрочной перспективе, вероятно, потребуется или настичь консультанта, который имеет опыт в изысканиях машинного обучения, для оценки и дальнейшего внедрения этих концепций в вашем рабочем процессе.

Оцените материал
Добавить комментарий

Капча загружается...