The time series forecasting trainer trains a number of models in parallel or sequentially to help it determine the best performing model. This trainer may also take advantage of ensembling if it determines that a weighted ensemble of models performs better than any single model. This trainer is built using AutoGluon's ↗ TimeSeriesPredictor
class.
The time series forecasting trainer relies on accurate historical time series data to predict future data across a number of pre-defined lookahead steps. The structure of the model ensemble can be viewed on the output model's experiment page under Plots.
Internally, multiple models will be trained, unless disabled by excluding the model or with the use of hyperparameters.
The following types of models are available for training:
t
equal to the observed value at t-1
.DirectTabular
, but predicts values one by one.t
equal to the observed value at t-1
from the same season.The time series trainer requires more advanced configuration for input datasets than the regression or classification trainers. The regression and classification trainers only require a training dataset, while the time series forecasting trainer requires a training dataset and a corresponding static dataset.
The training dataset should be a time series dataset with at minium a timestamp column and a target value column. The target value column is what the model will predict.
Additionally, the training dataset accepts column mappings for the following options:
The static dataset contains metadata that are time-independent.
This may include data such as:
The static dataset must be formatted in such a way that each item ID as mapped in the training dataset corresponds to a single row in the static dataset.
If you have a training dataset that looks like the following:
date | item_id | sales |
---|---|---|
2025-09-01 | STORE_1 | 14 |
2025-09-01 | STORE_2 | 7 |
2025-09-02 | STORE_1 | 16 |
2025-09-02 | STORE_2 | 9 |
2025-09-03 | STORE_1 | 13 |
The static dataset may look like the following, containing some useful metadata about the values in item_id
:
item_id | zip_code | store_class |
---|---|---|
STORE_1 | 10016 | LARGE |
STORE_2 | 90210 | POP_UP |
Static data will then be associated with the training dataset and optional testing dataset, joined by the item_id
column.
best_quality
: Uses a mix of statistical, deep-learning, and classical machine learning models with a longer validation step and multiple backtests. This preset will produce the most accurate model, but it may take a while to train.high_quality
: Uses a mix of statistical, deep-learning, and classical machine learning models. This preset will produce more accurate models than the medium_quality
preset, but it will be slower to train.medium_quality
: Uses a mix of statistical and classical machine learning models, as well as TemporalFusionTransformer
. This preset produces a decently performing model with a faster training time.fast_training
: Uses only simple statistical and tree-base models. This preset offers fast training that may not be accurate and is only recommended for prototyping.0.1
means that the actual value is predicted to appear at less than the 0.1
value 10% of the time.B
means that the timestamp is per business day, W
is weekly, and so on. These values are based on pandas ↗ offset aliases. This will be used to influence any resampling to change timestamps to fit a common frequency.The optional hyperparameter field allows for deeper customization and control over each trained model, with one caveat. When this field is defined, any model not supplied in the hyperparameter field will be ignored. This field will override the default hyperparameters chosen by AutoGluon, and can produce poor results. For this reason, we recommend avoiding this field if you have not consulted the AutoGluon documentation ↗. In the majority of cases, the default hyperparameters provide strong enough results.
In general, the arguments passed here will be sent directly to the underlying model implementation.
Take the example below:
Copied!1 2 3 4 5 6 7
{ "DeepAR": {}, "Theta": [ {"decomposition_type": "additive"}, {"seasonal_period": 1}, ], }
These hyperparameters will enforce that the following models are trained:
decomposition_type
set to additive
.seasonal_period
set to 1
.With the provided hyperparameters, these are the only models that will be trained before any ensembling operations are applied.
The time series forecasting trainer will output a Foundry model that contains the best model as determined by the validation steps. Details about the model can be accessed by navigating to the experiment, which will contain parameters, metrics, and plots that provide insight into the model's performance.