Addressing Spatial Indistinguishability in Spatiotemporal Prediction via Optimal Transport-Guided Masking
Organizations: Data Science and Artificial Intelligence, Dongbei University of Finance and Economics, Dalian, Liaoning, China · Institute of Systems, Molecular & Integrative Biology, University of Liverpool, Liverpool, United Kingdom
Abstract
Spatiotemporal prediction aims to learn discriminative representations from correlated temporal signals over spatial structures for accurate future inference. A central challenge is \emph{spatial indistinguishability}: different nodes may share similar historical patterns yet evolve toward divergent futures, severely degrading forecasting performance in real-world sensor networks. Existing embedding-based and graph neural network (GNN)-based approaches can partially detect such ambiguous nodes but rely on historical similarity, struggling to capture \emph{future behavioral divergence}. We propose \textbf{STOT} (\textbf{S}patio\textbf{T}emporal \textbf{O}ptimal \textbf{T}ransport), a self-supervised framework that resolves spatiotemporal ambiguity via structured masking guided by optimal transport. Our key idea treats indistinguishability as a \emph{disambiguation} problem: future states are inferred by exploiting concurrent spatial correlations and their time-varying similarity. We design a similarity-aware metric for dynamic inter-node relationships and an optimal transport-based masking strategy to emphasize ambiguous positions during pre-training. A batch consistency constraint preserves semantic coherence, while a random-walk masking mechanism promotes structured context exploration. Experiments on six real-world datasets show that STOT performs competitively with state-of-the-art baselines on the evaluated benchmarks and improved interpretability through transport-plan visualizations.
Figures & tables
| Datasets | #Sensors | #Edges | #Time Period | #Type | #Place |
|---|---|---|---|---|---|
| PeMS03 | 358 | 574 | 2018/09–2018/11 | Flow | North Central California, USA |
| PeMS04 | 307 | 340 | 2018/01–2018/02 | Flow | San Francisco Bay Area, USA |
| PeMS07 | 883 | 866 | 2017/05–2017/08 | Flow | Los Angeles area, USA |
| PeMS08 | 170 | 295 | 2016/07–2016/08 | Flow | San Bernardino area, USA |
| PeMS-BAY | 325 | 2369 | 2017/01–2017/06 | Speed | San Francisco Bay Area, USA |
| METR-LA | 207 | 1515 | 2012/03–2012/06 | Speed | Los Angeles area, USA |
| Setting | STOT | STD-MAE | STEP | ST-WA | STID | ST-Norm |
| Learning Rate | 0.001 | 0.001 | 0.001 | 0.001 | 0.002 | 0.002 |
| Hidden Dimension | 96 | 96 | 96 | 128 | 32 | – |
| Number of Heads | 4 | 4 | 4 | – | – | – |
| Similarity Thresholds | (0.9, 0.5) | – | – | – | – | – |
| Mask Ratio | 0.25 | 0.25 | 0.75 | – | – | – |
| Sinkhorn Temperature | 0.8 | – | – | – | – | – |
| Model | PeMS03 | PeMS04 | PeMS07 | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| MAE | RMSE | MAPE | MAE | RMSE | MAPE | MAE | RMSE | MAPE | |||
| ARIMA [ 41 ] | 35.31 | 47.59 | 33.78 | 33.73 | 48.80 | 24.18 | 38.17 | 59.27 | 19.46 | ||
| VAR [ 6 ] | 23.65 | 38.26 | 24.51 | 23.75 | 36.66 | 18.09 | 75.63 | 115.24 | 32.22 | ||
| DCRNN [ 26 ] | 18.18 | 30.31 | 18.91 | 24.70 | 38.12 | 17.12 | 25.30 | 38.58 | 11.66 | ||
| STGCN [ 44 ] | 17.49 | 30.12 | 17.15 | 22.70 | 35.55 | 14.59 | 25.38 | 38.78 | 11.08 | ||
| ASTGCN [ 16 ] | 17.69 | 29.66 | 19.40 | 22.93 | 35.22 | 16.56 | 28.05 | 42.57 | 13.92 | ||
| Model | PeMS08 | METR-LA | PeMS-BAY | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| MAE | RMSE | MAPE | MAE | RMSE | MAPE | MAE | RMSE | MAPE | |||
| ARIMA [ 41 ] | 31.09 | 44.32 | 22.73 | 5.15 | 10.45 | 12.70 | 2.33 | 4.76 | 5.40 | ||
| VAR [ 6 ] | 23.46 | 36.33 | 15.42 | 5.28 | 9.06 | 12.50 | 2.24 | 4.96 | 4.83 | ||
| DCRNN [ 26 ] | 17.86 | 27.83 | 11.45 | 3.59 | 7.61 | 10.44 | 1.96 | 4.59 | 4.68 | ||
| STGCN [ 44 ] | 18.02 | 27.83 | 11.40 | 3.60 | 7.50 | 10.56 | 1.99 | 4.51 | 4.66 | ||
| ASTGCN [ 16 ] | 18.61 | 28.16 | 13.08 | 3.57 | 7.19 | 10.32 | 1.86 | 4.07 | 4.27 | ||
| Datasets | #Sensors | #Edges | #Training | #Validation | #Testing |
|---|---|---|---|---|---|
| PeMS04 (IN) | 307 | 340 | [10173, 12, 307,1] | [3375, 12, 307,1] | [3375, 12, 307,1] |
| PeMS04 (OUT) | 307 | 340 | [10173, 12, 307,1] | [3375, 12, 307,1] | [3375, 12, 307,1] |
| PeMS04-s (IN) | 161 | 188 | [10173, 12, 161,1] | [3375, 12, 161,1] | [3375, 12, 161,1] |
| PeMS04-s (OUT) | 161 | 188 | [10173, 12, 161,1] | [3375, 12, 161,1] | [3375, 12, 161,1] |
| Model | Metrics | #1 step | #3 steps | #6 steps | #12 steps |
|---|---|---|---|---|---|
| STID | MAE | 16.88±0.03 | 18.12±0.02 | 19.12±0.00 | 21.10±0.25 |
| RMSE | 27.29±0.05 | 29.31±0.03 | 30.82±0.01 | 33.32±0.27 | |
| MAPE (%) | 11.19±0.25 | 12.07±0.23 | 12.54±0.11 | 13.76±0.05 | |
| ST-Norm | MAE | 16.26±0.02 | 18.23±0.03 | 19.58±0.07 | 21.66±0.14 |
| RMSE | 26.20±0.02 | 30.00±0.03 | 32.38±0.07 | 35.37±0.17 | |
| MAPE (%) | 7.18±0.21 | 8.01±0.23 | 8.41±0.27 | 9.55±0.32 |
| Dataset | Nodes | Mask generation | Sinkhorn |
|---|---|---|---|
| PeMS08 | 170 | ||
| METR-LA | 207 | ||
| PeMS04 | 307 | ||
| PeMS-BAY | 325 | ||
| PeMS03 | 358 | ||
| PeMS07 | 883 |