Beyond Static Uncertainty: Modeling Temporal Uncertainty Dynamics for Probabilistic Time Series Forecasting
Organizations: Department of Computer Science, Southeast University, Nanjing, China · Francisk Skorina Gomel State University, Belarus
Abstract
Real-world time series exhibit temporally structured uncertainty: volatility clusters in turbulent regimes, dissipates in stable periods, and shifts abruptly around structural breaks. Yet many probabilistic forecasting methods estimate predictive uncertainty as an independent per-step quantity, leaving the evolution and persistence of volatility regimes under-modeled. We formalize this missing dimension as temporal uncertainty dynamics and instantiate it in the Volatility Dynamics Variational Autoencoder (VolDy-VAE), a non-autoregressive generative forecaster with a location-scale decoder. VolDy-VAE combines a location path for mean prediction with a recurrent scale path that transfers and evolves a volatility hidden state from the look-back window to the forecasting horizon, enabling temporally coherent predictive variances. This design yields an adaptive attenuation mechanism: high-variance observations receive lower influence on the location estimate while their uncertainty is preserved through explicit scale predictions. We further provide a simplified regime-switching analysis showing that, when variances are known or consistently estimated, the volatility-aware objective reduces to inverse-variance weighting, whereas MSE-based estimators remain unbiased but statistically inefficient. Experiments on nine benchmarks show that VolDy-VAE improves forecasting accuracy and uncertainty calibration over competitive probabilistic and point-forecasting baselines while maintaining low inference latency; plug-in studies further indicate that the VolDy principle can benefit GAN, Koopman VAE, and Transformer backbones. The source code is publicly available at https://github.com/wangyijunlyy/VolDy-VAE.
Figures & tables
| Approach | Forecasting | Explicit Vol. | Direct | Plug-in |
|---|---|---|---|---|
| Task | State | Generation | Evidence | |
| Kendall & Gal [ 29 ] | Regression | ✗ | – | ✗ |
| HeTVAE [ 44 ] | Imputation | ✗ | ✓ | ✗ |
| DeepAR/DeepState [ 31 , 33 ] | Forecasting | ✗ | ✗ | |
| Diffusion PTSF [ 22 , 4 , 23 ] | Forecasting | ✗ | ✗ | |
| VAE [ 28 ] | Forecasting | ✗ | ✓ | ✗ |
| Dataset | Features ( ) | Timesteps | Frequency | Domain |
|---|---|---|---|---|
| ETTh1 | 7 | 17,420 | 1 Hour | Energy |
| ETTh2 | 7 | 17,420 | 1 Hour | Energy |
| ETTm1 | 7 | 69,680 | 15 Min | Energy |
| ETTm2 | 7 | 69,680 | 15 Min | Energy |
| Electricity | 321 | 26,304 | 1 Hour | Energy |
| Traffic | 862 | 17,544 | 1 Hour | Transport |
| Model | Metric | ETTm1 | ETTm2 | ETTh1 | ETTh2 | Electricity | Traffic | Weather | Exchange | ILI |
|---|---|---|---|---|---|---|---|---|---|---|
| FITS | CRPS | |||||||||
| NMAE | ||||||||||
| PatchTST | CRPS | |||||||||
| NMAE | ||||||||||
| iTransformer | CRPS | |||||||||
| NMAE |
| Dataset | Horizon | CRPS | NMAE | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Van. | w/o P | w/o R | Ours | Van. | w/o P | w/o R | Ours | ||
| ETTh1 | 96 | 0.287 | 0.374 | 0.277 | 0.252 | 0.364 | 0.464 | 0.354 | 0.328 |
| 192 | 0.323 | 0.378 | 0.282 | 0.277 | 0.388 | 0.470 | 0.370 | 0.365 | |
| 336 | 0.352 | 0.386 | 0.305 | 0.300 | 0.409 | 0.486 | 0.395 | 0.384 | |
| 720 | 0.355 | 0.393 | 0.318 | 0.310 | 0.416 | 0.504 | 0.398 | 0.389 | |
| Electricity | 96 | 0.363 | 0.259 | 0.082 | 0.069 | 0.362 | 0.363 | 0.107 | 0.089 |
| Dataset | CRPS | NMAE | |||
|---|---|---|---|---|---|
| w/o RevIN | Ours | w/o RevIN | Ours | ||
| ETTh1 | 96 | 0.480 | 0.252 | 0.618 | 0.328 |
| 192 | 0.476 | 0.277 | 0.615 | 0.365 | |
| 336 | 0.470 | 0.300 | 0.603 | 0.384 | |
| 720 | 0.567 | 0.310 | 0.690 | 0.389 | |
| Weather | 96 | 0.084 | 0.070 | 0.106 | 0.077 |
| Dataset | CRPS | NMAE | |||||
|---|---|---|---|---|---|---|---|
| MLP | LSTM | GRU | MLP | LSTM | GRU | ||
| ETTh1 | 96 | 0.271 | 0.255 | 0.252 | 0.350 | 0.331 | 0.328 |
| 192 | 0.296 | 0.280 | 0.277 | 0.381 | 0.368 | 0.365 | |
| 336 | 0.320 | 0.304 | 0.300 | 0.401 | 0.388 | 0.384 | |
| 720 | 0.328 | 0.314 | 0.310 | 0.406 | 0.393 | 0.389 | |
| ETTh2 | 96 | 0.162 | 0.151 | 0.148 | 0.206 | 0.186 | 0.183 |
| Dataset | Head | Cov.95 | Sharp. | QICE | ||
|---|---|---|---|---|---|---|
| ETTh1 | 96 | MLP | 91.2 0.8 | 1.84 0.05 | 2.91 0.18 | 0.61 0.03 |
| LSTM | 93.6 0.6 | 1.62 0.04 | 1.94 0.14 | 0.78 0.02 | ||
| GRU | 94.4 0.5 | 1.53 0.03 | 1.58 0.11 | 0.84 0.02 | ||
| 192 | MLP | 90.5 0.9 | 1.91 0.06 | 3.24 0.22 | 0.58 0.04 | |
| LSTM | 93.1 0.7 | 1.70 0.05 | 2.18 0.16 | 0.76 0.03 | ||
| GRU | 94.1 0.6 | 1.60 0.04 | 1.71 0.12 | 0.83 0.02 |
| Likelihood | Extra parameters | ETTh1, | Weather, | ||
|---|---|---|---|---|---|
| CRPS | NMAE | CRPS | NMAE | ||
| Gaussian (default) | 0.277 | 0.365 | 0.067 | 0.080 | |
| Student- | 0.286 | 0.372 | 0.071 | 0.084 | |
| Gaussian mixture | 0.291 | 0.377 | 0.074 | 0.087 | |
| Gaussian + flow | 0.284 | 0.370 | 0.070 | 0.083 | |
| Framework | Dataset | Base CRPS | VolDy CRPS | Base NMAE | VolDy NMAE | |
|---|---|---|---|---|---|---|
| TimeGAN | ETTh1 | 96 | 0.277 0.011 | 0.262 0.009 † | 0.347 0.012 | 0.339 0.010 † |
| Weather | 96 | 0.106 0.006 | 0.068 0.004 † | 0.117 0.007 | 0.081 0.005 † | |
| Exchange | 96 | 0.056 0.004 | 0.047 0.003 † | 0.071 0.005 | 0.062 0.004 † | |
| VAE | ETTh1 | 96 | 0.264 0.020 | 0.251 0.017 † | 0.336 0.041 | 0.332 0.012 |
| Weather | 96 | 0.080 0.007 | 0.065 0.004 † | 0.086 0.011 | 0.076 0.004 † | |
| Exchange | 96 | 0.031 0.002 | 0.029 0.002 † | 0.032 0.002 | 0.029 0.002 † |
Appendix figures & tables9 assets
Supplementary material from the paper’s appendix.
Appendix
| Backbone | Controlled setting | VolDy modification |
|---|---|---|
| TimeGAN | Same split, horizon, seeds, optimizer family, and early stopping as its base run. | Extend generator output to location/scale and add Gaussian NLL supervision. |
| VAE | Same backbone and forecasting protocol as the base VAE run. | Replace deterministic objective with Location-Scale NLL. |
| PatchTST | Same split, horizon, seeds, optimizer family, and early stopping as its base run. | Replace the point head with a dual-head location-scale decoder trained by Gaussian NLL. |
| Framework | Dataset | Base CRPS | VolDy CRPS | Base NMAE | VolDy NMAE | |
|---|---|---|---|---|---|---|
| TimeGAN | ETTh1 | 96 | 0.277 0.011 | 0.262 0.009 † | 0.347 0.012 | 0.339 0.010 † |
| ETTh1 | 192 | 0.306 0.014 | 0.286 0.011 † | 0.382 0.015 | 0.368 0.012 † | |
| ETTh1 | 336 | 0.334 0.017 | 0.309 0.014 † | 0.421 0.019 | 0.397 0.016 † | |
| ETTh1 | 720 | 0.381 0.021 | 0.348 0.018 † | 0.469 0.024 | 0.436 0.021 † | |
| Weather | 96 | 0.106 0.006 | 0.068 0.004 † | 0.117 0.007 | 0.081 0.005 † | |
| Weather | 192 | 0.118 0.007 | 0.076 0.005 † | 0.129 0.008 | 0.089 0.006 † |
| Model | CRPS | NMAE | Speed | Memory |
|---|---|---|---|---|
| TSDiff | ||||
| GRU NVP | {\color[rgb]{0,0.4297,0.7344}\underline{26}} | |||
| GRU MAF | ||||
| Trans MAF | ||||
| CSDI | ||||
| VAE | {\color[rgb]{0,0.4297,0.7344}\underline{0.280}_{\pm.014}} | {\color[rgb]{0,0.4297,0.7344}\underline{0.278}_{\pm.020}} | {\color[rgb]{0,0.4297,0.7344}\underline{0.72}} |
| Dataset | Horizon | Koopa | iTransformer | FITS | PatchTST | GRU MAF | Trans MAF | TSDiff | CSDI | NsDiff | TimeGrad | GRU NVP | VAE | VolDy-VAE |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ETTm1 | 96 | {\color[rgb]{0,0.4297,0.7344}\underline{0.232\scriptstyle\pm 0.010}} | {\color[rgb]{0.7578,0.1523,0.1758}0.208\scriptstyle\pm 0.009} | |||||||||||
| 192 | {\color[rgb]{0,0.4297,0.7344}\underline{0.259\scriptstyle\pm 0.013}} | {\color[rgb]{0.7578,0.1523,0.1758}0.240\scriptstyle\pm 0.010} | ||||||||||||
| 336 | {\color[rgb]{0,0.4297,0.7344}\underline{0.262\scriptstyle\pm 0.030}} | {\color[rgb]{0.7578,0.1523,0.1758}0.251\scriptstyle\pm 0.022} | ||||||||||||
| 720 | {\color[rgb]{0,0.4297,0.7344}\underline{0.294\scriptstyle\pm 0.026}} | {\color[rgb]{0.7578,0.1523,0.1758}0.279\scriptstyle\pm 0.020} | ||||||||||||
| ETTm2 | 96 | {\color[rgb]{0,0.4297,0.7344}\underline{0.115\scriptstyle\pm 0.009}} | {\color[rgb]{0.7578,0.1523,0.1758}0.107\scriptstyle\pm 0.005} | |||||||||||
| 192 | {\color[rgb]{0,0.4297,0.7344}\underline{0.147}\scriptstyle\pm 0.008} | {\color[rgb]{0.7578,0.1523,0.1758}0.129\scriptstyle\pm 0.007} |
| Dataset | Horizon | Koopa | iTransformer | FITS | PatchTST | GRU MAF | Trans MAF | TSDiff | CSDI | NsDiff | TimeGrad | GRU NVP | VAE | VolDy-VAE |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ETTm1 | 96 | {\color[rgb]{0,0.4297,0.7344}\underline{0.284\scriptstyle\pm 0.011}} | {\color[rgb]{0.7578,0.1523,0.1758}0.268\scriptstyle\pm 0.009} | |||||||||||
| 192 | {\color[rgb]{0,0.4297,0.7344}\underline{0.323\scriptstyle\pm 0.020}} | {\color[rgb]{0.7578,0.1523,0.1758}0.309\scriptstyle\pm 0.012} | ||||||||||||
| 336 | {\color[rgb]{0,0.4297,0.7344}\underline{0.330\scriptstyle\pm 0.014}} | {\color[rgb]{0.7578,0.1523,0.1758}0.327\scriptstyle\pm 0.010} | ||||||||||||
| 720 | {\color[rgb]{0,0.4297,0.7344}\underline{0.373\scriptstyle\pm 0.032}} | {\color[rgb]{0.7578,0.1523,0.1758}0.367\scriptstyle\pm 0.023} | ||||||||||||
| ETTm2 | 96 | {\color[rgb]{0,0.4297,0.7344}\underline{0.144\scriptstyle\pm 0.011}} | {\color[rgb]{0.7578,0.1523,0.1758}0.134\scriptstyle\pm 0.010} | |||||||||||
| 192 | {\color[rgb]{0,0.4297,0.7344}\underline{0.170\scriptstyle\pm 0.009}} | {\color[rgb]{0.7578,0.1523,0.1758}0.160\scriptstyle\pm 0.010} |
| Dataset | Head | Cov.95 | Sharp. | QICE | ||
|---|---|---|---|---|---|---|
| ETTh1 | 96 | MLP | 91.2 0.8 | 1.84 0.05 | 2.91 0.18 | 0.61 0.03 |
| LSTM | 93.6 0.6 | 1.62 0.04 | 1.94 0.14 | 0.78 0.02 | ||
| GRU | 94.4 0.5 | 1.53 0.03 | 1.58 0.11 | 0.84 0.02 | ||
| 192 | MLP | 90.5 0.9 | 1.91 0.06 | 3.24 0.22 | 0.58 0.04 | |
| LSTM | 93.1 0.7 | 1.70 0.05 | 2.18 0.16 | 0.76 0.03 | ||
| GRU | 94.1 0.6 | 1.60 0.04 | 1.71 0.12 | 0.83 0.02 |
| Parameter | Patch Length ( ) | Hidden Dim ( ) | MLP Layers ( ) | ||||
|---|---|---|---|---|---|---|---|
| Dataset | Value | CRPS | Value | CRPS | Value | CRPS | |
| ETTh1 | 16 | 0.278 | 64 | 0.280 | 1 | 0.279 | |
| 24 | 0.277 | 128 | 0.279 | 2 | 0.278 | ||
| 32 | 0.278 | 256 | 0.277 | 3 | 0.277 | ||
| 48 | 0.294 | 512 | 0.278 | 4 | 0.274 | ||
| Weather | 16 | 0.069 | 64 | 0.084 | 1 | 0.074 | |
Probabilistic Time Series Forecasting
Probabilistic time series forecasting estimates distributions of future values or trajectories to quantify uncertainty and support risk-aware decisions.
See all 162 papers