A beginner’s guide to Spatio-Temporal graph neural networks

In the recent scenario, we can witness the success of graph neural networks in a wide range of applications. Nowadays, graph neural networks are being applied to a variety of fields like NLP, time series forecasting, clustering, etc. When we apply a graph neural network to the time series data, we call it the Spatio-temporal graph neural network.

In this article, we will discuss the Spatio-temporal graph neural network in detail with its applications. The major points to be discussed in this article are listed below.

Table of contents 

  1. What is graph data?
  2. About Spatio-temporal graph
  3. What are Spatio-temporal graph neural networks?
  4. Applications of Spatio-temporal graph neural networks

Let’s begin with understanding what the graph data is.


Sign up for your weekly dose of what's up in emerging technology.

What is graph data?

In one of our articles, we discussed a neural network that can deal with graph data that can be considered as a graph neural network. We also discussed that graph data consists of structured relations between the data points in the form of nodes and links in a better way than ordinary datasets. It becomes easy for neural networks to learn about these structured relations of the data. 

When we talk about the relationship, it can be of any kind according to different kinds of information. For example, any graph consisting of information about NLP data can have a representation of the contextual relationship among the words. While talking about the components of graph data, there are two main components:

Download our Mobile App

  • Vertices 
  • Edges 

Using these components, we can consider a graph as the function of vertices and edges.

G = ( V, E )

In more general terms, a graph can also be considered as a function of static structure and static features as,

G = (V, E, Xv, Xe)


  • G = Graph
  • V = Vertices 
  • E = Edges 
  • X = Features   

The type of edges in the graph depends on the directional dependencies between the vertices. The edges can be of two types: directed or undirected.

About Spatio-temporal graph

What is Spatio-temporal Graph?

Spatio-temporal is a combination of two words where the Spatio stands for space and temporal stands for time. So if any system that consists of structural relationship information of space and time can be considered a Spatio-temporal graph, in a simpler way, we can say that these graphs can make a neural network to deal with static structures and time-varying features. We can say Spatio-temporal graphs are functions of static structure and time-varying features, as following 
G = (V, E, Xv(t), Xe(t))  

To understand it more, we can take an example of Google maps with traffic notations. Where we can say that individual segments of the road networks are nodes of a graph and the connection between the nodes are the edges. 

As in the above image, there can be two changes that can happen over time are:

  • Road segment (slow)
  • Traffic on the road (fast)

This example consists of static structures and time-varying features in it. Such examples need to deal mainly with the time-varying features of the graph. So we can say that using these graphs we are required to perform time series analysis and forecasting through a Spatio-temporal graph neural network. Let’s understand Spatio-temporal graph neural networks.

What are Spatio-temporal graph neural networks?

In the above section, we have discussed that Spatio-temporal graphs are made of static structures and time-varying features, and such information in a graph requires a neural network that can deal with time-varying features of the graph. Neural networks which are developed to deal with time-varying features of the graph can be considered as Spatio-temporal graph neural networks. 

These neural networks are developed to perform time series analysis using the time-varying features of the graph. In the time series analysis zone of machine learning, we can find that the time series datasets are different from the spatial data because they consist of causality which means data from the past is highly correlated with the data in the present and future.   

Talking about the traditional time series analysis, we are required to perform various analyses on the data like plotting correlation and autocorrelation plots, time vs frequency domain analysis, state estimation over time, etc. Also, we have various models that can be used for forecasting. These models can be categorized as follows:

I. Basic models:

  1. ARMA model  
  2. VAR model

These models use multi-linear regression over time and these models are good for the small-scale dataset. These models require stationary data and to make a time series stationary we are required to perform operations manually. 

II. Neural network-based models:

  1. RNN
  2. Temporal convolutions 
  3. Temporal attentions

These models are the most important and useful models for forecasting. They have developed over time to improve the performance of the models for example an LSTM model computes from the input sequence using one element at a time where temporal convolutions use the parallel learning procedure to compute the sequence of the data using a one-dimensional window and temporal attentions uses an advanced parallel system which can also learn the weights of the elements on the future prediction. 

III. Graph neural networks

In recent scenarios, we can witness the success of graph data also in the field of time series analysis where graph data with the time-varying features can be used with Spatio-temporal graph neural networks. Time series data can be considered as discrete data that means to extend this to the graph domain we are required to learn using the sequence of the graphs. We can have a graph at one time and another graph at a different time. The static graph structure allows us to use simple GNN in combination with temporal blocks. 

To work on the Spatio-temporal graphs, we are required to process a sequence of graph data to produce a Spatio-temporal embedding to be used for regression, classification, clustering, etc. the spatial block of the network can be any standard GNN and temporal block can be any method for learning over sequences of data like temporal convolution or temporal attention. 

As an input, these models take a matrix of node and edge features and an adjacency sparse matrix that defines a graph structure in forwarding processing.  The following are the main applications of the Spatio-temporal graph neural network.

Applications of Spatio-temporal graph neural networks

The popular applications of Spatio-temporal graph neural networks are listed below:-

  • Since these networks are capable of capturing spatial and temporal patterns of the graph they can be used in various applications in intelligent transportation systems (ITS), such as route planning, navigation, and traffic control and management.
  • Because of the capability of dealing with large information, Spatio-temporal graph neural networks can be used in forecasting conflict prediction and pandemic forecasting.
  • In reinforcement learning, we can use these neural networks for predicting the future states of agents by considering the social influence of other agents.
  • These networks can also be used in successful inventory planning and optimization of logistics costs for online marketplaces.

Final words

In this article, we have discussed the structure of graph data, Spatio-temporal graph data, and how a Spatio-temporal graph neural network works. Along with this, we have seen some of the interesting applications of Spatio-temporal graph data. 

Support independent technology journalism

Get exclusive, premium content, ads-free experience & more

Rs. 299/month

Subscribe now for a 7-day free trial

More Great AIM Stories

Yugesh Verma
Yugesh is a graduate in automobile engineering and worked as a data analyst intern. He completed several Data Science projects. He has a strong interest in Deep Learning and writing blogs on data science and machine learning.

AIM Upcoming Events

Early Bird Passes expire on 3rd Feb

Conference, in-person (Bangalore)
Rising 2023 | Women in Tech Conference
16-17th Mar, 2023

Conference, in-person (Bangalore)
Data Engineering Summit (DES) 2023
27-28th Apr, 2023

3 Ways to Join our Community

Telegram group

Discover special offers, top stories, upcoming events, and more.

Discord Server

Stay Connected with a larger ecosystem of data science and ML Professionals

Subscribe to our Daily newsletter

Get our daily awesome stories & videos in your inbox

All you need to know about Graph Embeddings

Embeddings can be the subgroups of a group, similarly, in graph theory embedding of a graph can be considered as a representation of a graph on a surface, where points of that surface are made up of vertices and arcs are made up of edges