Чем метод fit_data отличается от fit в пакете AutoTS?

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

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

model = AutoTS(
    forecast_length=forecast_length,
    frequency=frequency,
    prediction_interval=prediction_interval,
    ensemble=ensemble,
    model_list=model_list,
    transformer_list=transformer_list,
    transformer_max_depth=transformer_max_depth,
    max_generations=gens,
    metric_weighting=metric_weighting,
    initial_template=initial_template,
    aggfunc="first",
    models_to_validate=models_to_validate,
    model_interrupt=True,
    num_validations=num_validations,
    validation_method=validation_method,
    constraint=None,
    drop_most_recent=drop_most_recent,  # если последние данные неполные, также не забудьте увеличить forecast_length
    preclean=preclean,
    models_mode=models_mode,
    # no_negatives=True,
    # subset=100,
    # prefill_na=0,
    # remove_leading_zeroes=True,
    # current_model_file=f"current_model_{forecast_name}",
    generation_timeout=generation_timeout,
    n_jobs=n_jobs,
    verbose=1,

вы можете затем запустить либо:

(1): model.fit(data)

или (2): model.fit_data(data)

Чем (2) отличается от (1)? Правильно ли я понимаю, что (2) позволяет обновлять уже существующую модель, которая уже была обучена и валидация проведена, с помощью новых данных, без необходимости повторного обучения или валидации модели на новых данных?

Фактически, гарантирует ли (2), что данные, прогнозируемые с помощью model.predict, представляют прогнозы, начинающиеся на шаг вперед от последней временной точки в ‘data’, наборе данных в (2), а не на шаг вперед от исходных данных, на которых она была обучена?

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

В контексте использования пакета автоматического моделирования временных рядов AutoTS, основное различие между методами fit и fit_data может быть понято через их предназначение, функциональные возможности и применимость в различных бизнес- и аналитических сценариях.

Теория: Разница между fit и fit_data

Метод fit, как и в большинстве библиотек машинного обучения, предназначен для полноценной тренировки модели на предоставленных данных. Это включает в себя процесс обучения, валидации и оптимизации параметров модели на основе выбранного вами алгоритма и конфигурации. То есть, при вызове метода fit вы создаете и валидируете модель "с нуля", используя полный набор данных, который вы передадите.

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

Пример: Практическое применение fit и fit_data

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

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

Применение: Как использовать fit_data для бизнес-целей

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

Кроме того, fit_data может уменьшить вычислительные затраты, особенно если ваш набор данных весьма велик. Обновление модели с помощью новых данных и маленьких инкрементов может быть гораздо более экономичным с точки зрения ресурсов, чем полное "переобучение" модели.

Заключение

Таким образом, различие между fit и fit_data в AutoTS заключается в том, как они относятся к тренированию и обновлению моделей временных рядов. fit используется для создания и валидации модели "с нуля", в то время как fit_data фокусируется на добавлении новых данных к уже существующей модели. Это отличие предоставляет аналитикам и бизнес-пользователям гибкость и уверенность в способности быстро адаптироваться к новым данным без беспокойства о чрезмерных ресурсозатратах и временных издержках, связанных с полной переобработкой модели.

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

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