Note: Benchmarks in their original form can be found at the original github repo.
Instructions to run
Docker
All of the below commands should be run in a Docker container built using the Dockerfile in the repo, with the data and repo being exposed as volumes in the container.
To build:
docker build -t benchmarks_img .
To run an interactive shell:
docker run -it --shm-size=2G --gpus all -v /path/to/neurips2023-benchmarks:/neurips2023-benchmarks -v /path/to/datasets/:/data benchmarks_img
Forecasting
Ensure that when running the following commands, the appropriate path to WP/
is specified in the hyperparameters.py
files in ConvLSTM/
and ResNet/
in the variable data_dir
.
To train and run the pipeline, two models must be trained:
First, the convolutional LSTM.
Then, using the trained convLSTM, the ResNET.
ConvLSTM
Instructions to train the convLSTM are as follows:
Enter the directory
forecasting
Run
python3 train_convLSTM.py
- Logs and checkpoints will be saved to
ConvLSTM_logs/lightning_logs/version_[i]
. This is where validation indices are also saved invalidation_indices.txt
Pressure Regression ResNet
Instructions to train the ResNet are as follows:
Enter the directory
forecasting
Two paths must be set in the
train_resnet.py
file. On line 32, the path to the convLSTM saved model must be specified. Similarly, on line 168, the path to the file specifying what indices are validation indices must be specified.Run
python3 train_resnet.py
- Logs and checkpoints will be saved to
ResNet_logs/lightning_logs/version_[i]
.
Evaluation
Instructions to evaluate the pipeline and produce RMSE, difference statistics as well as plots are as follows:
Enter the directory
forecasting
Three paths must be set in
evaluate_forecasting_pipeline.py
. On line 150, set the path to the dataset indices used as validation indices during the convLSTM training. on Line 153, set the path to the convLSTM model weights. On line 156, set the path to the ResNet model weights.Run
python3 evaluate_forecasting_pipeline.py
- When the execution ends, it will print out statistics for absolute difference, percentage difference, and RMSE. Plots showing the expected and forecasted pressure will be saved into the directory
Pipeline_logs/forecast_plots/
.