This repository includes the code for the paper Parallelizable Complex Neural Dynamics Models for Temperature Estimation with Hardware Acceleration.
Since PyTorch does not support parallel scanning and JAX does not support Windows x64_86, this repo is built by TensorFlow-gpu, and the parallel prefix sum scanning algorithm is implemented by the tfp.math.scan_associative
. The parallel prefix sum algorithm accelerates the training process by at least 1.6 times and the inference process by at least 1.8 times. The parallel algorithm reduces the time complexity from O(N) to O(logN) for serial calculations. As the estimation length increases, the acceleration effect becomes more obvious.
Download the dataset from Kaggle and put it into the Data folder.
pip install -r requirements.txt
details:
tensorflow-gpu==2.10.0
tensorflow-probability==0.16.0
pandas==1.4.2
numpy==1.21.0
h5py==3.6.0
Run the training program from the command line.
python trainer.py --scan True --estimation_length 128 --phase 0.314 --hidden_size 32
@article{liao5033161parallelizable,
title={Parallelizable Complex Neural Dynamics Models for Temperature Estimation with Hardware Acceleration},
author={Liao, Xinyuan and Chen, Shaowei and Zhao, Shuai},
journal={Available at SSRN 5033161},
year={2024}
}