In recent years, spatio-temporal (ST) deep models have become increasingly powerful. We build larger models, learn richer representations, and achieve strong performance across many tasks. At the same time, as these models are expected to be more interpretable and more reliable for supporting real-world decision-making, causal perspectives have been increasingly introduced into deep ST modeling. However, bringing causal ideas into ST systems is far from straightforward. Many challenges that are manageable in static or i.i.d. settings become harder once space and time are involved.
Here, I try to summarize these challenges and organize them into a small number of recurring themes from different angles: data, structure, mechanisms, inference, and scale. For each challenge, I also summarize a set of representative solution directions in the table. In addition to the papers mentioned in the table, I have also collected many other ST causal AI papers in a GitHub repo (here), which you may find useful if you are exploring this space.
Before We Start
A few clarifications are helpful before we continue:
- This post is primarily centered around DL–based approaches to ST causal modeling.
- The discussion span multiple tasks, including forecasting, representation learning, counterfactual analysis, causal discovery, effect estimation, and explanation/attribution.
- It also includes selected works from multivariate time series, which share a highly similar underlying data structure with spatio-temporal series.
- This is a personal synthesis based on my own understanding. If you notice important omissions, inaccuracies, or alternative perspectives, I would be very happy to hear your thoughts.
Key Challengs
I now summarize the key challenges and organize them into a small number of common themes from different angles: data, structure, mechanisms, inference, and scale.
Data-Level Challenge: Ignoring Hidden Contexts and Latent Confounding
At the data-level, the difficulty starts from the gap between the real world and what is actually observed/measured. ST systems are driven by many interacting processes and involving lots of variables, but only a subset of them appear in the data. The rest remain latent due to limited measurement, coarse resolution, or missing context, and crucially, these latent factors influence multiple observed variables at the same time, giving rise to confounding effects.
This gives rise to the first challenge: Latent ST Confounding. Unobserved contextual factors vary across space and time and simultaneously affect multiple observed variables, inducing spurious spatial correlations and time-varying shifts. Here, latent refers to data availability rather than physical unobservability.
Typical cases include:
- Spatial confounding: Observations are influenced by shared spatial contexts (e.g., land use, terrain, infrastructure, climate, polutation) that are missing or poorly measured in the data.
- Temporal confounding: Observations depend on time-varying factors (e.g., weather, demand cycles, policy shifts) that are missing or imperfectly observed, confounding outcomes over time.
Structure-Level Challenge: Mistaking ST Dependence for Causation
Even if hidden contexts and latent confounding were addressed, it still exhibit another fundamental difficulty: Complex ST Dependencies. The relationships of ST data are complicated. Spatial interactions, temporal persistence, and long-term co-evolution are deeply intertwined, giving rise to rich and often highly structured ST dependencies. Moreover, such dependencies do not necessarily reflect causal relations. In ST systems, proximity, correlation, and co-movement are common, but they often arise from shared context, inertia, or coordinated evolution rather than direct causal influence.
In practice, this leads to a common structural mistake: treating correlation patterns induced by proximity or temporal regularity as causation. Typical examples include:
- Spatial proximity ≠ causation: Distance-based graphs introduce non-causal edges driven by adjacency and shared environment and may reflect spillover/interference rather than direct causal influence (e.g., downstream → upstream in hydrology; spatial shortcuts in sensor networks).
- Temporal autocorrelation ≠ causation: Temporal autocorrelation and lagged correlations arise naturally from persistence, inertia, seasonality, or smooth trends in time series, but such statistical dependence is not a sufficient condition for a causal link.
- ST co-dependence ≠ causation: Similar ST patterns can emerge from co-evolution or shared external drivers, producing delayed or multi-hop associations that obscure the underlying causal mechanisms.
Mechanism-Level Challenge: Causality That Changes Over Time
A further difficulty can be: causal mechanisms in real-world systems are rarely stable. The relationships governing how variables influence one another often evolve over time or across environments, reflecting changes in regimes, operating conditions, or underlying dynamics. This challenge is referred here to as Non-Stationary Causality. In ST systems, causal relationships may shift abruptly between regimes, leading to piecewise-stationary mechanisms, or drift gradually over time, resulting in smoothly evolving causal effects.
Typical examples are common across domains:
- Traffic systems: causal relations differ between peak and off-peak hours, as congestion, control strategies, and human behavior change.
- Air quality systems: causal mechanisms can shift due to policy interventions or seasonal transitions (e.g., heating seasons), changing the dominant sources and transport pathways that drive measured concentrations.
- Hydrological systems: causal dependencies among variables shift during extreme events such as floods or droughts.
Inference-Level Challenge: Unobserved Causal Processes and Identifiability
Next, a further challenge arises at the inference level: the causal processes driving ST systems are often not directly observed. Instead, observed signals are typically nonlinear, delayed, and spatially aggregated mixtures of multiple latent causal processes.
This leads to a Latent Causal Identifiability challenge. When causal variables and mechanisms operate in the latent space, the underlying causal structure and the latent processes themselves are generally non-identifiable from observations alone, unless additional assumptions, constraints, or inductive biases are introduced.
Such situations are ubiquitous in practice:
- Climate and environmental systems: climate fields or air quality measurements reflect latent atmospheric and chemical processes that are not directly observable.
- Traffic and mobility systems: observed traffic flow emerges from latent travel demand, control strategies, and network dynamics, mixed across space and time.
Note. This challenge is distinct from the first latent ST confounding challenge. Here, the issue is not that unobserved variables bias, but that the causal variables and mechanisms themselves operate in a latent space and are not identifiable from observed mixtures.
Scaling-Level Challenge: When Causal Search Explodes
A final challenge remains at the scaling level: ST causal learning often becomes computationally intractable as data size grows. This challenge concerns Scalability in ST Causal Learning. The search space of possible causal structures grows combinatorially with the number of spatial locations, variables, and temporal lags. As a result, both causal discovery and causal inference quickly exceed practical computational limits in large-scale ST systems.
The difficulty appears in two closely related forms:
- Causal discovery: For a system with N spatial nodes and a maximum temporal lag T, the candidate causal graph can involve up to O(N^2 x T) potential directed edges. Exhaustive or even moderately greedy search over spatio-temporal DAGs or dynamic graphs becomes infeasible as N or T increases, especially with large spatial scale.
- Causal inference: Estimating causal effects or counterfactual outcomes faces prohibitive complexity due to high-dimensional confounding, continuous treatments, and large numbers of spatial units, even when the causal structure is partially known.
Representative Solutions
Given these challenges, the obvious next question is: how did existing work attempt to address them? Here, I summarize some representative solutions that have been explored in the existing works in below table. The references of these methods can be found by the end of this post.
| Challenges | Representative Solutions |
|---|---|
| Data-Level: Latent ST Confounding |
Adjustment-based approaches - Front-door adjustment - Intermediate representations (e.g. Casper, CaST) - Back-door adjustment - Environment disentanglement and modelling (e.g. CaST, TrajCL, MCST) - Representation-level intervention (e.g., STCInterLLM, CaPulse) - Invariant learning (e.g., NuwaDynamic, CauSTG) Causal modeling in latent space - Joint learning of latent representations and causal graphs (e.g., CDSD, CCHMM) - Semantic causal priors via knowledge graphs (e.g., TimeMKG) |
| Strcuture-Level: Complex ST Dependencies |
Spatial complexity - Causal attention (e.g. Casper, CityCAN) - Physics- or topology-constrained graph learning (e.g., CSF) - Data-driven discovery and encoding (e.g., CASTMGC) Temporal complexity - Language-or reasoning-based abstraction/alignment (e.g., Augur, TimeMKG) - Multi-lag temporal causal modeling (e.g., CDSD) ST coupling complexity - SCM-based disentanglement (e.g., DyGNN, CCHMM) - Variable-level causal decoupling and diffusion modeling (e.g., AirCade) |
| Mechanism-Level: Non-stationary Causality |
Regime-shift causality - Regime/environment/domain-conditioned learning (e.g., TrajCL, CaST, GCIM, CoST, TimeMKG) - Joint discovery of latent regimes and causal mechanisms (e.g., SPACETIME) Continuous-drift causality - Time-varying causal edges modeling (e.g., STCInterLLM, MCST) - Stochastic generative modelling (e.g., DVGNN) |
| Inference-Level: Latent Causal Identifiablity |
Constraint-based identifiability - Latent causal representations identification (e.g., Casper, NuwaDynamic, SPACY, CDSD) - Independence-constrained causal representation learning (e.g., CaPulse) Objective-constrained identifiability - Reasoning-based identification (e.g., Augur, TimeMKG) - Score-based identification (e.g., SPACETIME) Generative identifiability - Generative inference of latent causal processes(e.g., DyGNN, DVGNN, GCIM) - Generative SCM-based identification of latent causal factors (e.g., MCST) |
| Scaling-Level: Scalability of ST Causal Learning |
Constraint-guided causal search - Sequential decision formulations (e.g., STREAMS) - Continuous optimization–based causal discovery (e.g., CASTMGC, CDSD) - Knowledge- and LLM-guided causal graph construction (e.g., TimeMKG) Representation compression - Factorized representations (e.g., STCINet, MCST) - Dimension reduction with spatial priors (e.g., SPACY) - Hierarchical modeling and station clustering (e.g., CSF) |
Closing Thoughts
From this perspective, the central question in ST causal learning is not whether causality can be incorporated, but how it should be incorporated given the constraints of data, structures, mechanisms, identifiability, and scale. Different applications may warrant different trade-offs, and no single framework can dominate across all settings.
References
Below is an alphabetical index of references by method name, including papers mentioned in the above table of representative solustions . Full collection of ST causal AI papers can be found in this GitHub repo.
- [AirCade] Spatiotemporal Causal Decoupling Model for Air Quality Forecasting [link]
- [Augur] Augur: Modeling Covariate Causal Associations in Time Series via Large Language Models [link]
- [CaPulse] CaPulse: Detecting Anomalies by Tuning in to the Causal Rhythms of Time Series [link]
- [Casper] Causality-Aware Spatiotemporal Graph Neural Networks for Spatiotemporal Time Series Imputation [link]
- [CaST] Deciphering Spatio-Temporal Graph Forecasting: A Causal Lens and Treatment [link]
- [CASTMGC] Causally-Aware Spatio-Temporal Multi-Graph Convolution Network for Accurate and Reliable Traffic Prediction [link]
- [CauSTG] Maintaining the Status Quo: Capturing Invariant Relations for OOD Spatiotemporal Learning [link]
- [CCHMM] Causal conditional hidden Markov model for multimodal traffic prediction [link]
- [CDSD] Towards Causal Representations of Climate Model Data [link]
- [CityCAN] CityCAN: Causal Attention Network for Citywide Spatio-Temporal Forecasting [link]
- [CoST] CoST: Contrastive Learning of Disentangled Seasonal-Trend Representations for Time Series Forecasting [link]
- [CSF] Spatio-temporal Causal Learning for Streamflow Forecasting [link]
- [DVGNN] Dynamic Causal Explanation Based Diffusion-Variational Graph Neural Network for Spatio-temporal Forecasting [link]
- [DyGNN] Causality-Inspired Spatial-Temporal Explanations for Dynamic Graph Neural Networks [link]
- [GCIM] Generative Causal Interpretation Model for Spatio-Temporal Representation Learning [link]
- [MCST] Enhancing Multivariate Spatio-Temporal Forecasting via Complete Dynamic Causal Modeling [link]
- [NuwaDynamic] NuwaDynamics: Discovering and Updating in Causal Spatio-Temporal Modeling [link]
- [SpaceTime] SpaceTime: Causal Discovery from Non-Stationary Time Series [link]
- [SPACY] Discovering latent causal graphs from spatiotemporal data [link]
- [STCINet] Estimating Direct and Indirect Causal Effects of Spatiotemporal Interventions in Presence of Spatial Interference [link]
- [STCInterLLM] Causal Intervention Is What Large Language Models Need for Spatio-Temporal Forecasting [link]
- [STREAMS] STREAMS: Towards Spatio-Temporal Causal Discovery with Reinforcement Learning for Streamflow Rate Prediction [link]
- [TimeMKG] Timemkg: Knowledge-infused causal reasoning for multivariate time series modeling [link]
- [TrajCL] Towards Robust Trajectory Representations: Isolating Environmental Confounders with Causal Learning [link]