Skip to content

Fast and Scalable Dynamic Quantile Models

Antonio Aguirre edited this page Apr 7, 2025 · 16 revisions

Background

Time series modeling is at the heart of many forecasting applications, including climate, economics, and hydrology. However, traditional methods often focus on mean-based inference, which is limited in capturing dynamic behavior at the tails of the distribution. Quantile regression provides a more robust alternative, allowing users to model any part of a response distribution. Bayesian quantile regression is gaining traction across fields such as climate science, finance, and hydrology for its ability to model conditional distributions beyond the mean response. Despite its growing importance, there is limited software for efficient, fully Bayesian, and scalable dynamic quantile regression for time series data.

The exDQLM package—based on the Extended Asymmetric Laplace (exAL) distribution and Dynamic Linear Models (DLMs)—addresses this gap by offering a Bayesian framework for time-varying quantile modeling. This project aims to expand and optimize the package by incorporating improvements on its Variational Bayes (VB) inference, C++ acceleration, and multivariate support, making exDQLM a robust tool for both researchers and practitioners.


Related Work

Package Approach Features Limitations
quantreg Frequentist Robust quantile regression Lacks dynamic Bayesian methods
bayesQR Bayesian Bayesian quantile regression for cross-sectional data Limited support for time dynamics
dynquant Frequentist Time-dependent quantile estimation Limited modelling features and scalability issues

None of the existing packages fully address dynamic, Bayesian, and multivariate quantile regression in a scalable and modular fashion.


Details of the Coding Project

This project will extend exDQLM into a comprehensive framework for Bayesian dynamic quantile regression by:

Area of Improvement Description
Variational Bayes (VB) Inference Implement VB inference using Laplace/Delta approximations for non-conjugate priors to enable fast, scalable posterior updates.
C++ Acceleration Use Rcpp and RcppParallel to implement core routines (e.g., Kalman filtering and smoothing) in C++ for enhanced performance.
Modular Design Decompose the model into distinct components (trend, seasonality, regression) with individual evolution and observation matrices, then combine them into a complete state-space model.
Posterior Predictive Quantile Synthesis (PPQS) Synthesize multiple quantile estimates into a coherent posterior predictive distribution, ensuring non-crossing quantiles.
Multivariate Extensions Extend the framework to handle multivariate time series for joint quantile estimation.
Documentation and Testing Provide comprehensive documentation, unit tests, and vignettes for reproducibility and ease of use.

Expected Impact

The improvements on the exDQLM package will serve as a robust tool for:

  • Environmental Modeling: Forecasting extreme weather and hydrological events.
  • Finance: Estimating tail risks and Value-at-Risk measures.
  • Health Economics: Modeling extremes in treatment outcomes and cost distributions.

Mentors

Contributors, please get in touch with the mentors below after completing at least one test:

Mentor Role Email Institution
Raquel Barata Evaluating Mentor [[email protected]](mailto:[email protected]) Monterey Peninsula College, USA
Rebecca Killick Co-Mentor [email protected] Lancaster University, UK

Tests

Contributors, please complete one or more of the following tests before reaching out to the mentors:

  • Easy Test:
    Implement a Kalman filter and smoother in C++ for a univariate DLM using RcppArmadillo, and compare the results with those from the dlm package in R.

  • Medium Test:
    Implement and validate the exAL distribution functions (dexal, pexal, qexal, rexal) in R/C++ using the formulation from Yan & Kottas (2017).

  • Hard Test:
    Develop a Bayesian dynamic quantile regression model using Variational Bayes (VB) with Laplace/Delta approximations for non-conjugate parameters. Validate your implementation against models from dynquant, bayesQR, or qrjoint.

Please post links to your GitHub test results for review.


Test Solutions


Additional Information

Resource Link
CRAN Package: exDQLM exDQLM on CRAN
Technical Report: UCSC-SOE-21-10 UCSC-SOE-21-10 (PDF)

Final Comments

We invite motivated contributors to join us in refining and expanding the exDQLM package. If you are passionate about Bayesian statistics, time series analysis, and high-performance computing, this project is an excellent opportunity to contribute to a state-of-the-art tool.

If you have any questions or want to express interest, please contact the mentors directly.


Feel free to edit this page as needed. We look forward to collaborating with you!

Clone this wiki locally