Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

statespace Roadmap: Enhancements and known bugs #230

Open
3 of 17 tasks
jessegrabowski opened this issue Aug 18, 2023 · 2 comments
Open
3 of 17 tasks

statespace Roadmap: Enhancements and known bugs #230

jessegrabowski opened this issue Aug 18, 2023 · 2 comments
Assignees
Labels
enhancements New feature or request help wanted Extra attention is needed

Comments

@jessegrabowski
Copy link
Member

jessegrabowski commented Aug 18, 2023

A to-do list of things that still need to be done on the statespace models, to organize future PRs. Anyone is free to add to (or subtract from!) the list.

  • High priority: Allow post-estimation stuff (IRF, forecasting) for models with exogenous variables
  • High priority: Add k_endog argument to structrual.Components to enable multivariate structural models
  • High priority: Flag on Components to allow users to pass full state covariance matrix if desired (important for the MV case, potentially interesting in univariate case too)
  • Bug, High priority: Forecasting models with no measurement error sometimes returns np.nan on the observed states, because the covariance matrix for the observation errors is the zero matrix. Need better logic to handle this (common!) case.
  • Add build_as_prior following GP.prior
  • Generate IRFs for observable variables in addition to the hidden states
  • Add Additive Holt-Winters Exponential Smoothing models, see here
  • Add dampening parameters to trend/seasonal components?
  • Better/more consistent names for the parameters of each Component?
  • Allow component-wise initialization for Components -- P0 can be initialized in blocks, with stationary components directly computed via SolveDiscreteLyapunov
  • On that note, is asking users to give priors on P0 and x0 too much? Could at least have the option to be handled semi-automatically?
  • Improve how dims/coords are generated/handled?
  • Improve/standardize Component tests
  • Performance: Explore Chandrasekhar recursions for univariate models (see here
  • Performance: Inside the Kalman Filter scan, it possible to detect convergence and use the steady-state covariance matrix (and it's inverse)? Huge compute savings for large statespace/long time-series if so.
  • Performance: JAX implementations of SolveDiscreteARE and SolveDiscreteLyapunov
  • Feature request: Helpers for stationary VARMA/SARIMA priors. See here and here for how statsmodels handles this via bijective transforms, or here for a pure Bayesian treatment using priors over partial autocovariance matrices.
@jessegrabowski jessegrabowski added enhancements New feature or request help wanted Extra attention is needed labels Aug 18, 2023
@jessegrabowski jessegrabowski self-assigned this Aug 18, 2023
@ferrine
Copy link
Member

ferrine commented Sep 1, 2023

is it possible to create a prior distribution that follows the state space model as it is done with GPs?

@jessegrabowski
Copy link
Member Author

Yes, I think it should be. I added this functionality as a to-do item.

@ricardoV94 ricardoV94 pinned this issue Oct 5, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancements New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

2 participants