Inception_Block_V1
TimesBlock
*TimesNet The TimesNet univariate model tackles the challenge of modeling multiple intraperiod and interperiod temporal variations. Parameters
h
: int, Forecast horizon.input_size
: int,
Length of input window (lags).stat_exog_list
: list of str,
optional (default=None), Static exogenous columns.hist_exog_list
: list of str, optional (default=None), Historic exogenous columns.futr_exog_list
: list of str, optional (default=None), Future
exogenous columns.exclude_insample_y
: bool (default=False), The
model skips the autoregressive features y[t-input_size:t] if True.hidden_size
: int (default=64), Size of embedding for embedding and
encoders.dropout
: float between [0, 1) (default=0.1), Dropout
for embeddings.conv_hidden_size
: int (default=64), Channels of
the Inception block.top_k
: int (default=5), Number of
periods.num_kernels
: int (default=6), Number of kernels for the
Inception block.encoder_layers
: int, (default=2), Number of
encoder layers.loss
: PyTorch module (default=MAE()), Instantiated
train loss class from losses
collection.
valid_loss
: PyTorch module (default=None, uses loss), Instantiated
validation loss class from losses
collection.max_steps
: int (default=1000), Maximum number of training steps.learning_rate
: float (default=1e-4), Learning rate.num_lr_decays
: int (default=-1), Number of learning rate decays,
evenly distributed across max_steps. If -1, no learning rate decay is
performed.early_stop_patience_steps
: int (default=-1), Number of
validation iterations before early stopping. If -1, no early stopping is
performed.val_check_steps
: int (default=100), Number of training
steps between every validation loss check.batch_size
: int
(default=32), Number of different series in each batch.valid_batch_size
: int (default=None), Number of different series in
each validation and test batch, if None uses batch_size.windows_batch_size
: int (default=64), Number of windows to sample in
each training batch.inference_windows_batch_size
: int
(default=256), Number of windows to sample in each inference batch.start_padding_enabled
: bool (default=False), If True, the model will
pad the time series with zeros at the beginning by input size.step_size
: int (default=1), Step size between each window of temporal
data.scaler_type
: str (default=‘standard’), Type of scaler for
temporal inputs normalization see temporal
scalers.random_seed
: int (default=1), Random_seed for pytorch initializer and
numpy generators.drop_last_loader
: bool (default=False), If True
TimeSeriesDataLoader
drops last non-full batch.alias
: str,
optional (default=None), Custom name of the model.optimizer
:
Subclass of ‘torch.optim.Optimizer’, optional (default=None), User
specified optimizer instead of the default choice (Adam).optimizer_kwargs
: dict, optional (defualt=None), List of parameters
used by the user specified optimizer
.lr_scheduler
: Subclass of
‘torch.optim.lr_scheduler.LRScheduler’, optional, user specified
lr_scheduler instead of the default choice (StepLR).lr_scheduler_kwargs
: dict, optional, list of parameters used by the
user specified lr_scheduler
.dataloader_kwargs
: dict, optional (default=None), List of parameters
passed into the PyTorch Lightning dataloader by the
TimeSeriesDataLoader
. **trainer_kwargs
: Keyword trainer
arguments inherited from PyTorch Lighning’s
trainer*
*Fit. The
fit
method, optimizes the neural network’s weights using the
initialization parameters (learning_rate
, windows_batch_size
, …) and
the loss
function as defined during the initialization. Within fit
we use a PyTorch Lightning Trainer
that inherits the initialization’s
self.trainer_kwargs
, to customize its inputs, see PL’s trainer
arguments.
The method is designed to be compatible with SKLearn-like classes and in
particular to be compatible with the StatsForecast library.
By default the model
is not saving training checkpoints to protect
disk memory, to get them change enable_checkpointing=True
in
__init__
.
Parameters:dataset
: NeuralForecast’s
TimeSeriesDataset
,
see
documentation.val_size
: int, validation size for temporal cross-validation.random_seed
: int=None, random_seed for pytorch initializer and numpy
generators, overwrites model.__init__’s.test_size
: int, test
size for temporal cross-validation.*Predict. Neural network prediction with PL’s
Trainer
execution of
predict_step
.
Parameters:dataset
: NeuralForecast’s
TimeSeriesDataset
,
see
documentation.test_size
: int=None, test size for temporal cross-validation.step_size
: int=1, Step size between each window.random_seed
:
int=None, random_seed for pytorch initializer and numpy generators,
overwrites model.__init__’s.quantiles
: list of floats,
optional (default=None), target quantiles to predict. **data_module_kwargs
: PL’s TimeSeriesDataModule args, see
documentation.*