Forecaster
SCINetForecaster
SCINet Forecaster.
Quickstart
python
from sktime.forecasting.scinet import SCINetForecaster
estimator = SCINetForecaster(seq_len, pred_len=None, *, num_epochs=16, batch_size=8, criterion=None, criterion_kwargs=None, optimizer=None, optimizer_kwargs=None, lr=0.001, custom_dataset_train=None, custom_dataset_pred=None, hid_size=1, num_stacks=1, num_levels=3, num_decoder_layer=1, concat_len=0, groups=1, kernel=5, dropout=0.5, single_step_output_One=0, positionalE=False, modified=True, RIN=False)Parameters(23)
- seq_lenint
- Length of the input sequence. Ensure seq_len is divisible by 2^num_levels.
- pred_lenint, optional
- Length of prediction (forecast horizon). Required for pretraining if fh is not passed to pretrain(). If None, will be determined from fh during fit() or pretrain().
- num_epochsint, default=16
- Number of epochs to train the model.
- batch_sizeint, default=8
- Number of training examples in each batch.
- criteriontorch.nn Loss Function, default=None
- Loss function to be used for training. If not provided, a default such as torch.nn.MSELoss is often used.
- criterion_kwargsdict, default=None
- Keyword arguments to pass to the criterion (loss function).
- optimizertorch.optim.Optimizer, default=None
- Optimizer to be used for training. If not provided, a default such as torch.optim.Adam is commonly used.
- optimizer_kwargsdict, default=None
- Keyword arguments to pass to the optimizer.
- lrfloat, default=0.001
- Learning rate for the optimizer.
- custom_dataset_trainDataset, default=None
- A custom dataset to be used for training. If not provided, the default dataset structure is used.
- custom_dataset_predDataset, default=None
- A custom dataset to be used for prediction.
- hid_sizeint, default=1
- Size of the hidden layers in the model.
- num_stacksint, default=1
- Number of SCINet stacks to use in the model.
- num_levelsint, default=3
- Number of levels (depth) in each stack.
- num_decoder_layerint, default=1
- Number of layers in the decoder portion of the model.
- concat_lenint, default=0
- Length of input to be concatenated in the skip connection.
- groupsint, default=1
- Number of groups in convolution layers for grouped convolutions.
- kernelint, default=5
- Kernel size for convolution layers.
- dropoutfloat, default=0.5
- Dropout rate to apply in the network.
- single_step_output_Oneint, default=0
- Determines whether to output a single step (1) or multiple steps (0).
- positionalEbool, default=False
- Enables or disables the use of positional encoding.
- modifiedbool, default=True
- Indicates whether to use the modified version of the SCINet model.
- RINbool, default=False
- Flag to enable or disable the use of RevIN (Reversible Instance Normalization).
Examples
>>> from sktime.forecasting.scinet import SCINetForecaster
>>> from sktime.datasets import load_airline
>>> model = SCINetForecaster (seq_len = 8)
>>> y = load_airline ()
>>> model. fit (y, fh = [1, 2, 3 ]) SCINetForecaster(seq_len=8)
>>> y_pred = model. predict ()
>>> y_pred 1961-01 759.448425 1961-02 291.098541 1961-03 566.977295 Freq: M, Name: Number of airline passengers, dtype: float32References
- [1 ] Minhao Liu*, Ailing Zeng, Muxi Chen, Zhijian Xu, Qiuxia Lai, Lingna Ma, Qiang Xu* SCINet: Time Series Modeling and Forecasting with Sample Convolution and Interaction [2 ] https://github.com/cure-lab/SCINet