This directory contains the diffusion/flow-based time series experiments used in the project. The notes below only describe how to set up the environment and run training / sampling.
- Python 3.8+
- One CUDA‑capable GPU is recommended.
Create a new environment and install dependencies:
conda create -n timeflow python=3.8
conda activate timeflow
pip install -r requirements.txtPlace all datasets under:
Data/dataset/
The exact file names and splits are controlled by the YAML config files in Config/.
All experiments are launched with main.py.
The most important arguments are:
--name: experiment name (used to create a subdirectory underOUTPUT/).--config_file: path to a YAML config inConfig/.--train: enable training mode.
python main.py \
--name {dataset} \
--config_file Config/{dataset}.yaml \
--trainDuring training, checkpoints and logs are saved to:
OUTPUT/{name}/
After training, use main.py with --sample to generate sequences from a trained checkpoint.
regular sampling
python main.py \
--name {dataset} \
--config_file Config/dataset.yaml \
--sample 0 \
--milestone {checkpoint_number}irregular sampling
python main.py \
--name {dataset} \
--config_file Config/energy_impute.yaml \
--gpu 0 \
--sample 1 \
--mode infill \
--missing_ratio {missing ratio} \
--milestone {checkpoint_number}
Generated samples are saved as `.npy` files under `OUTPUT/{name}/` and can be directly used for evaluation and visualization.