stid
Code for our CIKM'22 paper Spatial-Temporal Identity: A Simple yet Effective Baseline for Multivariate Time Series Forecasting.
Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 1 DOI reference(s) in README -
✓Academic publication links
Links to: arxiv.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (14.8%) to scientific vocabulary
Keywords
Repository
Code for our CIKM'22 paper Spatial-Temporal Identity: A Simple yet Effective Baseline for Multivariate Time Series Forecasting.
Basic Info
Statistics
- Stars: 279
- Watchers: 6
- Forks: 28
- Open Issues: 12
- Releases: 0
Topics
Metadata Files
README.md
Spatial-Temporal Identity: A Simple yet Effective Baseline for Multivariate Time Series Forecasting
🔥 [New Results] We added the performance of STID on large scale MTS datasets.
Code for our CIKM'22 short paper: "Spatial-Temporal Identity: A Simple yet Effective Baseline for Multivariate Time Series Forecasting".
[!CAUTION]
STID is built on BasicTS, an open-source benchmark for time series forecasting. We highly recommend reproducing STID and other MTS forecasting models on any dataset using BasicTS. This repository will not be updated frequently; instead, updates will be made in BasicTS.

Multivariate Time Series (MTS) forecasting plays a vital role in a wide range of applications. Recently, Spatial-Temporal Graph Neural Networks (STGNNs) have become increasingly popular MTS forecasting methods due to their state-of-the-art performance. However, recent STGNN-based methods are becoming more sophisticated with limited performance improvements. This phenomenon motivates us to explore the critical factors of MTS forecasting and design a model that is as powerful as STGNNs, but more concise and efficient. In this paper, we identify the indistinguishability of samples in both spatial and temporal dimensions as a key bottleneck, and propose a simple yet effective baseline for MTS forecasting by attaching Spatial and Temporal IDentity information (STID). STID achieves the best performance and efficiency simultaneously based on simple multi-layer perceptrons (MLPs). These results suggest that by solving the indistinguishability of samples, we can design models more freely, without being limited to STGNNs.
📚 Table of Contents
```text basicts --> The BasicTS, which provides standard pipelines for training MTS forecasting models. Don't worry if you don't know it, because it doesn't prevent you from understanding STID's code.
datasets --> Raw datasets and preprocessed data
experiments --> Training scripts.
figures --> Some figures used in README.
scripts --> Data preprocessing scripts.
stid/arch --> The implementation of STID.
stid/${DATASET_NAME}.py --> Training configs. ```
Replace ${DATASET_NAME} with one of PEMS03, PEMS04, PEMS07, PEMS08, METR-LA, PEMS-BAY, or any other dataset you want to use.
💿Requirements
The code is built with BasicTS, you can easily install the requirements by (take Python 3.11 + PyTorch 2.3.1 + CUDA 12.1 as an example):
```bash
Install Python
conda create -n BasicTS python=3.11 conda activate BasicTS
Install PyTorch
pip install torch==2.3.1 torchvision==0.18.1 torchaudio==2.3.1 --index-url https://download.pytorch.org/whl/cu121
Install other dependencies
pip install -r requirements.txt ```
More details can be found in BasicTS.
📦 Data Preparation
Download Data
You can download the all_data.zip file from Google Drive or Baidu Netdisk. Unzip the files to the datasets/ directory:
bash
cd /path/to/STID # not STID/stid
unzip /path/to/all_data.zip -d datasets/
These datasets have been preprocessed and are ready for use.
🎯 Train STID
bash
python experiments/train.py --cfg stid/${DATASET_NAME}.py --gpus '0'
Replace ${DATASET_NAME} with one of PEMS03, PEMS04, PEMS07, PEMS08, METR-LA, PEMS-BAY, or any other dataset you want to use.
bash
python experiments/train.py --cfg stid/PEMS04.py --gpus '0'
📈 Experiment Results




🔗 More Related Works
D2STGNN: Decoupled Dynamic Spatial-Temporal Graph Neural Network for Traffic Forecasting. VLDB'22.
BasicTS: A Fair and Scalable Time Series Forecasting Benchmark and Toolkit.
Citing
bibtex
@inproceedings{10.1145/3511808.3557702,
author = {Shao, Zezhi and Zhang, Zhao and Wang, Fei and Wei, Wei and Xu, Yongjun},
title = {Spatial-Temporal Identity: A Simple yet Effective Baseline for Multivariate Time Series Forecasting},
year = {2022},
booktitle = {Proceedings of the 31st ACM International Conference on Information & Knowledge Management},
pages = {4454–4458},
location = {Atlanta, GA, USA}
}
Owner
- Name: GestaltCogTeam
- Login: GestaltCogTeam
- Kind: organization
- Repositories: 1
- Profile: https://github.com/GestaltCogTeam
Citation (CITATION.cff)
cff-version: 1.2.0
message: If you use this software, please cite both the article from preferred-citation and the software itself.
authors:
- family-names: Shao
given-names: Zezhi
- family-names: Zhang
given-names: Zhao
- family-names: Wang
given-names: Fei
- family-names: Wei
given-names: Wei
- family-names: Xu
given-names: Yongjun
title: 'Spatial-temporal identity: A simple yet effective baseline for multivariate time series forecasting'
version: 1.0.0
date-released: '2022-09-10'
preferred-citation:
authors:
- family-names: Shao
given-names: Zezhi
- family-names: Zhang
given-names: Zhao
- family-names: Wang
given-names: Fei
- family-names: Wei
given-names: Wei
- family-names: Xu
given-names: Yongjun
title: 'Spatial-temporal identity: A simple yet effective baseline for multivariate time series forecasting'
type: conference-paper
pages: 4454--4458
year: '2022'
collection-title: Proceedings of the 31st ACM International Conference on Information \& Knowledge Management
conference: {}
publisher: {}
GitHub Events
Total
- Issues event: 5
- Watch event: 117
- Issue comment event: 7
- Push event: 1
- Fork event: 5
Last Year
- Issues event: 5
- Watch event: 117
- Issue comment event: 7
- Push event: 1
- Fork event: 5
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 3
- Total pull requests: 0
- Average time to close issues: about 1 month
- Average time to close pull requests: N/A
- Total issue authors: 3
- Total pull request authors: 0
- Average comments per issue: 0.33
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 3
- Pull requests: 0
- Average time to close issues: about 1 month
- Average time to close pull requests: N/A
- Issue authors: 3
- Pull request authors: 0
- Average comments per issue: 0.33
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- Chenyonglian (1)
- Miller-Xu (1)
- zhao1840 (1)
- shuqincao (1)
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- Markdown ==3.3.7
- Pillow ==9.1.0
- Werkzeug ==2.1.2
- absl-py ==1.0.0
- cachetools ==5.0.0
- certifi ==2021.10.8
- charset-normalizer ==2.0.12
- easy-torch ==1.2.2
- easydict ==1.9
- google-auth ==2.6.6
- google-auth-oauthlib ==0.4.6
- grpcio ==1.46.1
- idna ==3.3
- importlib-metadata ==4.11.3
- numpy ==1.22.3
- oauthlib ==3.2.0
- protobuf ==3.20.1
- pyasn1 ==0.4.8
- pyasn1-modules ==0.2.8
- requests ==2.27.1
- requests-oauthlib ==1.3.1
- rsa ==4.8
- scipy ==1.8.0
- setproctitle ==1.2.3
- six ==1.16.0
- tensorboard ==2.9.0
- tensorboard-data-server ==0.6.1
- tensorboard-plugin-wit ==1.8.1
- torch ==1.10.0
- torchaudio ==0.10.0
- torchvision ==0.11.1
- tqdm ==4.64.0
- typing_extensions ==4.2.0
- urllib3 ==1.26.9
- zipp ==3.8.0