Skip to content
/ EAC Public

[ICLR 2025] Official implementation of "Expand and Compress: Exploring Tuning Principles for Continual Spatio-Temporal Graph Forecasting"

Notifications You must be signed in to change notification settings

Onedean/EAC

Repository files navigation

(ICLR'25) — 🏞️ EAC

Expand and Compress: Exploring Tuning Principles
for Continual Spatio-Temporal Graph Forecasting

Maintenance PR's Welcome

⭐ EAC is a method for exploring the rapid adaptation of models in the face of open environment dynamic spatio-temporal graph changes during the Supervised Finetuning Phase.

[Paper Page] [Presentation Slide]

Updates/News:

🚩 News (Jun. 2025): We have fixed the problem of not being able to use direct inference with weights. 💉

🚩 News (Apr. 2025): We upload all processed complete datasets to the cloud disk, and you can download them directly to avoid the difficulty of reproducing the processing problems! 😊

🚩 News (Feb. 2025): EAC's code, data, weights, and training logs are fully open source! Try to improve on this! 😊

🚩 News (Jan. 2025): EAC has been accpeted by ICLR 2025! ✅

📖 Introduction

Spatio-temporal forecasting in streaming scenarios faces dual challenges: the inefficiency of retraining models over newly-arrived data and the detrimental effects of catastrophic forgetting over long-term history. To address these challenges, we propose a novel prompt tuning-based continuous forecasting method, EAC, following two fundamental tuning principles guided by empirical and theoretical analysis: expand and compress, which effectively resolve the aforementioned problems with lightweight tuning parameters.

📚 Training Data

[Important]: Now, the processed dataset can be directly accessed from the cloud disk!

Our datasets are available on Google Drive.

Please download all processed datasets and place them in the data folder.

🚀 Getting Started

Installation

  1. Please install the core dependencies, including:
python = 3.8.5
pytorch = 1.7.1
torch-geometric = 1.6.3
  1. Or you can directly create and import a ready-made environment:
conda env create -f environment.yaml
conda activate stg

Usages

  1. You can run a specific method on a specific dataset separately, for example, run the EAC method on the PEMS-Stream dataset:
python main.py --conf conf/PEMS/eac.json --gpuid 0 --seed 43
  1. Or you can run the script to batch execute all baseline methods on a specified dataset, for example, run all baseline methods on the PEMS-Stream dataset:
sh scripts/pems_run.sh

💴 Code repository summary

Summary of all model weights, logs, and configuration.

  • Config File: Please refer to the conf file for the configuration details of different methods in different datasets. Note that all parameters follow almost the same settings.

  • Log File: Please refer to the log file for the log details of different methods in different datasets. Note that the logs of different periods of a method in a data set are summarized in one file.

  • Weight File: Please refer to the log file for the weight details of different methods in different datasets. Note that due to the limitation of uploaded files and size, we currently only upload one random seed weight for each experiment of each method.

Summary of all results and observation.

  • Empirical Observation: The analysis code for the observations in Figures 3 and 4 of the paper is in empirical_observation.ipynb file.

  • Result Analysis: The analysis code for the observations in Tables 1, 3 and Figures 5, 6, 7 of the paper is in result_statistical.ipynb file.

Citation

🌟 If you find the EAC helpful in your research, please consider to star this repository and cite this paper:

@inproceedings{chen2025eac,
  title={Expand and Compress: Exploring Tuning Principles for Continual Spatio-Temporal Graph Forecasting},
  author={Wei Chen and Yuxuan Liang},
  booktitle={The Thirteenth International Conference on Learning Representations},
  year={2025}
}

Acknowledgement

We appreciate the following GitHub repos or Websites a lot for their valuable code, data and efforts.

License

This project is licensed under the Apache-2.0 License.

About

[ICLR 2025] Official implementation of "Expand and Compress: Exploring Tuning Principles for Continual Spatio-Temporal Graph Forecasting"

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published