STeP-TS: Shared Temporal Filters with Pruning for Time Series
Organizations: Department of Computer Science Albert-Ludwigs-Universität Freiburg · Department of Computer Science and BrainLinks-BrainTools Albert-Ludwigs-Universität Freiburg
Abstract
Multivariate time series forecasting requires capturing temporal dependencies across multiple scales while accounting for both shared and variable-specific dynamics. Compact forecasting models have emerged as an attractive alternative to increasingly large architectures, but preserving strong predictive performance within tight computational and memory budgets remains challenging. We propose a compact one-layer convolutional framework that learns a shared bank of multi-scale temporal filters of each variable. Lightweight variable-specific scalar weights determine the contribution of each temporal component, enabling the model to capture shared temporal structure while adapting to variable-specific dynamics. The learned weights and filter-output energy further provide a natural signal for structured pruning of convolutional filters, reducing computational complexity with minimal degradation in forecasting performance. We additionally introduce an amplitude-adaptive normalization mechanism that preserves variable-dependent temporal amplitudes. Experiments on multiple datasets demonstrate forecasting performance competitive with state-of-the-art methods while requiring substantially fewer parameters and inference FLOPs and achieving low per-sample latency.
Figures & tables
| Model Type | Convolutional | RNN | MLP | SSM | Transformer | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Models | STeP-TS (ours) | ModTCN 2024 | xLSTMix. 2025 | xLSTMTime 2024 | TimeMix 2024 | DLinear 2023 | TiDE 2024 | S-Mamba 2025 | PatchTST 2022 | Timer-XL 2025 | ||||||||||
| Dataset | MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE |
| Weather | 0.216 | 0.246 | 0.224 | 0.264 | 0.219 | 0.250 | 0.222 | 0.255 | 0.222 | 0.262 | 0.246 | 0.300 | 0.236 | 0.282 | 0.251 | 0.276 | 0.241 | 0.264 | 0.256 | 0.294 |
| ETTh1 | 0.407 | 0.420 | 0.404 | 0.420 | 0.397 | 0.420 | 0.408 | 0.428 | 0.411 | 0.423 | 0.423 | 0.437 | 0.419 | 0.430 | 0.455 | 0.450 | 0.458 | 0.450 | 0.404 | 0.417 |
| ETTm1 | 0.353 | 0.369 | 0.351 | 0.381 | 0.339 | 0.366 | 0.347 | 0.372 | 0.348 | 0.376 | 0.357 | 0.379 | 0.355 | 0.378 | 0.398 | 0.405 | 0.353 | 0.382 | 0.373 | 0.392 |
| ETTm2 | 0.249 | 0.306 | 0.253 | 0.314 | 0.248 | 0.307 | 0.254 | 0.310 | 0.256 | 0.316 | 0.267 | 0.332 | 0.249 | 0.312 | 0.288 | 0.332 | 0.256 | 0.317 | 0.273 | 0.336 |
| Weather | 96 | 192 | 336 | 720 | Avg | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| -adRevIN | +adRevIN | -adRevIN | +adRevIN | -adRevIN | +adRevIN | -adRevIN | +adRevIN | -adRevIN | +adRevIN | |||||||||||
| MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | |
| With Ensemble | 0.142 | 0.181 | 0.142 | 0.181 | 0.184 | 0.223 | 0.183 | 0.223 | 0.235 | 0.265 | 0.235 | 0.264 | 0.309 | 0.320 | 0.310 | 0.320 | 0.218 | 0.247 | 0.218 | 0.247 |
| W/o Ensemble | 0.145 | 0.187 | 0.145 | 0.189 | 0.188 | 0.229 | 0.188 | 0.229 | 0.238 | 0.268 | 0.240 | 0.271 | 0.312 | 0.323 | 0.314 | 0.324 | 0.221 | 0.252 | 0.222 | 0.253 |
| ETTm1 | 96 | 192 | 336 | 720 | Avg | |||||||||||||||
| -adRevIN | +adRevIN | -adRevIN | +adRevIN | -adRevIN | +adRevIN | -adRevIN | +adRevIN | -adRevIN | +adRevIN | |||||||||||
Appendix figures & tables8 assets
Supplementary material from the paper’s appendix.
Appendix
| Dataset | Source | Domain | Horizons | Sampling | Variates |
|---|---|---|---|---|---|
| Weather | [ Zhou et al., 2021 ] | Weather | 96–720 | 10 min | 21 |
| Electricity | [ Zhou et al., 2021 ] | Power Usage | 96–720 | 1 hour | 321 |
| Traffic | [ Wu et al., 2021 ] | Traffic Load | 96–720 | 1 hour | 862 |
| ETT | [ Zhou et al., 2021 ] | Power Production | 96–720 | 15& 60 min | 7 |
| Hyperparameter | Default search space | Dataset-specific space |
| Learning rate ( ) | — | |
| Forecasting heads | — | |
| Amplitude scale ( ) | — | |
| Sequence length | — | |
| Fixed parameters | ||
| Batch size | — | |
| Dataset | Horizon | STeP-TS | ModTCN | xLSTM- | xLSTMTime | TimeMix | TSMixer | CycleNet | DLinear | TiDE | S-Mamba | PatchTST | TimesNet | Timer-XL | MoiraiBase | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | MSE | MAE | ||
| Weather | 96 | 0.142 | 0.181 | 0.149 | 0.200 | 0.143 | 0.184 | 0.144 | 0.187 | 0.147 | 0.197 | 0.145 | 0.198 | 0.148 | 0.200 | 0.176 | 0.237 | 0.166 | 0.222 | 0.165 | 0.210 | 0.149 | 0.198 | 0.172 | 0.220 | 0.171 | 0.225 | 0.220 | 0.217 |
| 192 | 0.183 | 0.222 | 0.196 | 0.245 | 0.186 | 0.226 | 0.192 | 0.236 | 0.189 | 0.239 | 0.191 | 0.242 | 0.190 | 0.240 | 0.220 | 0.282 | 0.209 | 0.263 | 0.214 | 0.252 | 0.194 | 0.241 | 0.219 | 0.261 | 0.221 | 0.271 | 0.271 | 0.259 | |
| 336 | 0.232 | 0.264 | 0.238 | 0.277 | 0.236 | 0.266 | 0.237 | 0.272 | 0.241 | 0.280 | 0.242 | 0.280 | 0.242 | 0.283 | 0.265 | 0.319 | 0.254 | 0.301 | 0.274 | 0.297 | 0.306 | 0.282 | 0.280 | 0.306 | 0.274 | 0.311 | 0.286 | 0.297 | |
| 720 | 0.306 | 0.319 | 0.314 | 0.334 | 0.310 | 0.323 | 0.313 | 0.326 | 0.310 | 0.330 | 0.320 | 0.336 | 0.312 | 0.333 | 0.323 | 0.362 | 0.313 | 0.340 | 0.350 | 0.345 | 0.314 | 0.334 | 0.365 | 0.359 | 0.356 | 0.370 | 0.373 | 0.354 | |
| Avg | 0.216 | 0.247 | 0.224 | 0.264 | 0.219 | 0.250 | 0.222 | 0.255 | 0.222 | 0.262 | 0.225 | 0.264 | 0.223 | 0.264 | 0.246 | 0.300 | 0.236 | 0.282 | 0.251 | 0.276 | 0.241 | 0.264 | 0.259 | 0.287 | 0.256 | 0.294 | 0.288 | 0.282 | |
| Model | MSE best | MSE 2nd | MAE best | MAE 2nd | Best (total) | 2nd (total) |
|---|---|---|---|---|---|---|
| xLSTMix. | 15 | 9 | 15 | 10 | 30 | 19 |
| STeP-TS | 6 | 3 | 10 | 12 | 16 | 15 |
| ModTCN | 4 | 4 | 4 | 1 | 8 | 5 |
| TiDE | 6 | 1 | 1 | 1 | 7 | 2 |
| TimeMix | 3 | 7 | 2 | 2 | 5 | 9 |
| Timer-XL | 0 | 1 | 2 | 1 | 2 | 2 |
| Criterion | Avg. Active Channels | FLOPs | Latency | Speedup | MSE% | MAE% |
|---|---|---|---|---|---|---|
| (of 8) | (rel.) | [ s/sample] | ||||
| Dense | 8.00 | 1.00 | 49.0 | 1.00 | — | — |
| with | 5.00 | 0.63 | 42.1 | 1.20 | +0.03 | -0.01 |
| w/o | 5.97 | 0.75 | 45.4 | 1.08 | 0.00 | 0.00 |
| Pruned during training | Retrained from scratch | |||||||
|---|---|---|---|---|---|---|---|---|
| Removed | Cells | Combos | Random | Random | Random | Random | ||
| 0 | 4 | 4 | ||||||
| 1 | 5 | 4 | ||||||
| 2 | 15 | 11 | ||||||
| 3 | 13 | 11 | ||||||
| 4 | 12 | 10 | ||||||
| Dense | with | w/o | ||||||||||||||
| Dataset | MSE | MAE | Lat. | Chan. | FLOPs | Lat. | Spd. | MSE% | MAE% | Chan. | FLOPs | Lat. | Spd. | MSE% | MAE% | |
| [ s] | (of 8) | (rel.) | [ s] | (of 8) | (rel.) | [ s] | ||||||||||
| ETTh1 | 96 | 0.367 | 0.390 | 49.3 | 7.00 | 0.87 | 49.2 | 1.00 | +0.07 | -0.09 | 7.33 | 0.91 | 49.8 | 0.97 | +0.10 | -0.01 |
| 192 | 0.394 | 0.408 | 48.3 | 6.67 | 0.83 | 46.5 | 1.04 | +0.24 | +0.03 | 7.33 | 0.93 | 47.1 | 1.01 | +0.53 | +0.24 | |
| 336 | 0.427 | 0.427 | 48.5 | 7.00 | 0.85 | 48.2 | 1.01 | +0.06 | +0.09 | 6.67 | 0.82 | 47.0 | 1.03 | +0.26 | +0.13 | |
| 720 | 0.437 | 0.457 | 48.1 | 7.33 | 0.90 | 49.6 | 0.98 | -0.09 | -0.03 | 6.67 | 0.80 | 45.2 | 1.03 | 0.00 | +0.06 | |
| Model | Params | FLOPs | Latency | Throughput | Train step | Mem | Mem | |
|---|---|---|---|---|---|---|---|---|
| [K] | [M] | [ s/sample] | [samples/s] | [ms] | [MB] | [B] | ||
| 336 | STeP-TS, 8 ch, linear head | 128.9 | 9.1 | 61.5 | 16,260 | 8.5 | 9.7 | 51.4 |
| STeP-TS, 8 ch, 1 head | 128.9 | 9.1 | 71.9 | 13,916 | 8.5 | 17.9 | 51.4 | |
| STeP-TS, 8 ch, 2 heads | 242.2 | 13.9 | 73.1 | 13,685 | 8.6 | 18.3 | 53.1 | |
| STeP-TS, 8 ch, 3 heads † | 355.4 | 18.6 | 73.5 | 13,608 | 8.8 | 18.8 | 54.9 | |
| STeP-TS, 5 ch, 3 heads (pruned) | 355.1 | 17.0 | 55.0 | 18,193 | 6.3 | 18.8 | 43.2 |
Multivariate Time Series Forecasting
Multivariate time series forecasting predicts future values across related variables by learning their temporal and cross-variable dependencies.
See all 302 papers