Skip to main content

tft

Performs Temporal Fusion Transformer forecasting

Source Code: [link]

openbb.forecast.tft(data: Union[pd.Series, pd.DataFrame], target_column: str = "close", n_predict: int = 5, past_covariates: Optional[str] = None, train_split: float = 0.85, forecast_horizon: int = 5, input_chunk_length: int = 14, output_chunk_length: int = 5, hidden_size: int = 16, lstm_layers: int = 1, num_attention_heads: int = 4, full_attention: bool = False, dropout: float = 0.1, hidden_continuous_size: int = 8, n_epochs: int = 200, batch_size: int = 32, model_save_name: str = "tft_model", force_reset: bool = True, save_checkpoints: bool = True, metric: str = "mape")

Parameters

NameTypeDescriptionDefaultOptional
data (Union[pd.Series, pd.DataFrame])Input DataNoneTrue
target_columnOptional[str]Target column to forecast. Defaults to "close".closeTrue
n_predict(int, optional)Days to predict. Defaults to 5.5True
train_split(float, optional)Train/val split. Defaults to 0.85.0.85True
past_covariates(str, optional)Multiple secondary columns to factor in when forecasting. Defaults to None.NoneTrue
forecast_horizon(int, optional)Forecast horizon when performing historical forecasting. Defaults to 5.5True
input_chunk_length(int, optional)Number of past time steps that are fed to the forecasting module at prediction time.
Defaults to 14.
14True
output_chunk_length(int, optional)The length of the forecast of the model. Defaults to 5.5True
hidden_size(int, optional)Hidden state size of the TFT. Defaults to 16.16True
lstm_layers(int, optional)Number of layers for the Long Short Term Memory Encoder and Decoder. Defaults to 16.1True
num_attention_headers(int, optional)Number of attention heads. Defaults to 4.NoneTrue
full_attention(bool, optional)Whether to apply a multi-head attention query. Defaults to False>FalseTrue
dropout(float, optional)Fraction of neurons affected by dropout. Defaults to 0.1.0.1True
hidden_continuous_size(int, optional)Default hidden size for processing continuous variables. Defaults to 8.8True
n_epochs(int, optional)Number of epochs to run during training. Defaults to 200.200True
batch_size(int, optional)Number of samples to pass through network during a single epoch. Defaults to 32.32True
model_save_name(str, optional)The name for the model. Defaults to tft_modeltft_modelTrue
force_reset(bool, optional)If set to True, any previously-existing model with the same name will be reset
(all checkpoints will be discarded). Defaults to True.
TrueTrue
save_checkpoints(bool, optional)Whether or not to automatically save the untrained model and checkpoints from training.
Defaults to True.
TrueTrue
metric(str, optional)Metric to use for model selection. Defaults to "mape".mapeTrue

Returns

TypeDescription
Adjusted Data series,
List of historical fcast values,
List of predicted fcast values,
Optional[float] - precision,
Fit Prob. TFT model object.