Our paper has been officially accepted for publication in the IEEE Internet of Things Journal, and is now available online. You can access it via the following DOI link: DOI: 10.1109/JIOT.2024.3381002.
- The synthetic dataset is included in the
run/datasets/toy
folder. - To prepare the Pronto dataset, download the raw data from PRONTO heterogeneous benchmark dataset and put it in the
run/datasets/pronto/raw
folder. Then, run the executerun/datasets/pronto/train_test_split.ipynb
to prepare the dataset.
The code is organized in the following way:
.vscode/
contains the configuration files for debugging in visual studio codesrc/model/
contains the implementation of the modelssrc/utils/
contains the implementation of the utility functionssrc/train/
contains the implementation of the training functionsrun/data/
contains the datasets used in the experimentsrun/configs/
contains the configuration files used to run the experimentsrun/main.py
is the main file used to run the experimentsrun/evaluate.py
is the main file used to evaluate the models
This project relies on specific dependencies and packages, which are defined in the eff_env.yml file. You can set up the environment using Conda by running the following command:
conda env create -f env.yml
If you want to update the environment, you can run the following command:
conda env update --file env.yml --prune
To install PyTorch with CUDA support, use the following command:
conda install pytorch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1 cudatoolkit=10.2 -c pytorch
Depending on your CUDA version, you may need to change the cudatoolkit
version.
Detailed instructions can be found here.
Note pyTorch 1.12.* binaries do not support CUDA versio above (including) 11.7.
Follow PyG 2.2.0 INSTALLATION Guide for detailed .
To train the model, run the following command:
python run/main.py --cfg run/configs/toy/dyedgegat.yaml --repeat 5
For any questions or feedback, please open an issue in this repository or contact us directly via email.
The --cfg
argument specifies the path to the config file, and the --repeat
argument specifies the number of times to repeat the experiment.
For evaluation, run the following command:
python run/evaluate.py --cfg run/configs/toy/dyedgegat.yaml