tensorflow / tensorflow/probability

Support for Future Exogenous Data in STS Forecasting

Open
#1,722 1 comment 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Jupyter Notebook
Stars
4.4k
Forks
1.1k
PR merge metrics
No merged PRs in 30d

Description

Hello TensorFlow Probability Team,

I'm using the Structural Time Series (STS) module for time series forecasting, specifically with a model that includes a LinearRegression component for exogenous variables.

Currently, when creating the LinearRegression component, the design_matrix argument requires the exogenous variables to be known both for the observed time series and the future period we want to forecast. This can cause problems in many practical applications, where future exogenous variables are not known at the time of model construction and fitting.

I understand from the documentation and the forecast function's current design that it assumes the structure of the time series (including the regression component) to be the same for the observed and forecast periods. However, this is not always a valid assumption in real-world forecasting tasks, and we might have different exogenous variables for the forecast period.

Therefore, I suggest that the STS forecast function be extended to allow the passing in of new exogenous data for the forecast period. This will provide flexibility to users who have models with exogenous variables and need to generate forecasts with new exogenous data.

Thank you for considering this feature request. I believe it would be a valuable addition to TensorFlow Probability's capabilities for time series forecasting.

Best regards,
Robert

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading the STS forecast function and the LinearRegression component documentation described in the issue. Determine how forecast-period exogenous data could be supplied separately from observed data, then define the API and validation needed. Done means STS forecasting accepts new future exogenous data and covers the behavior with appropriate tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
tensorflow
Domain
machine-learning
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.