{"id":18932203,"url":"https://github.com/gravins/tg-ode","last_synced_at":"2025-09-07T20:48:03.770Z","repository":{"id":235462752,"uuid":"790654256","full_name":"gravins/TG-ODE","owner":"gravins","description":"Official reference implementation of our paper \"Temporal Graph ODEs for Irregularly-Sampled Time Series\" accepted at IJCAI 24","archived":false,"fork":false,"pushed_at":"2024-09-10T10:05:21.000Z","size":43399,"stargazers_count":19,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-28T23:43:27.379Z","etag":null,"topics":["dynamic-graphs","graph-neural-networks","graphneuralnetwork","ordinary-differential-equations","temporal-graphs"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gravins.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-04-23T09:26:02.000Z","updated_at":"2025-03-25T15:37:11.000Z","dependencies_parsed_at":null,"dependency_job_id":"9256cc67-903a-42c2-98cb-526a2fad9886","html_url":"https://github.com/gravins/TG-ODE","commit_stats":null,"previous_names":["gravins/tg-ode"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gravins%2FTG-ODE","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gravins%2FTG-ODE/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gravins%2FTG-ODE/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gravins%2FTG-ODE/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gravins","download_url":"https://codeload.github.com/gravins/TG-ODE/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249108495,"owners_count":21214003,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dynamic-graphs","graph-neural-networks","graphneuralnetwork","ordinary-differential-equations","temporal-graphs"],"created_at":"2024-11-08T11:48:26.820Z","updated_at":"2025-09-07T20:48:03.761Z","avatar_url":"https://github.com/gravins.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TG-ODE\nThis repository provides the official reference implementation of our paper [**_\"Temporal Graph ODEs for Irregularly-Sampled Time Series\"_**](https://www.ijcai.org/proceedings/2024/445) accepted at the International Joint Conference on Artificial  Intelligence (IJCAI) 2024.\n\nPlease consider citing us\n\n\t@inproceedings{gravina2024tgode,\n\t  title     = {Temporal Graph ODEs for Irregularly-Sampled Time Series},\n\t  author    = {Gravina, Alessio and Zambon, Daniele and Bacciu, Davide and Alippi, Cesare},\n\t  booktitle = {Proceedings of the Thirty-Third International Joint Conference on\n               Artificial Intelligence, {IJCAI-24}},\n\t  publisher = {International Joint Conferences on Artificial Intelligence Organization},\n\t  editor    = {Kate Larson},\n\t  pages     = {4025--4034},\n\t  year      = {2024},\n\t  month     = {8},\n\t  note      = {Main Track},\n\t  doi       = {10.24963/ijcai.2024/445},\n\t  url       = {https://doi.org/10.24963/ijcai.2024/445},\n\t}\n\n\n\n\n## Requirements\n_Note: we assume Miniconda/Anaconda is installed, otherwise see this [link](https://docs.conda.io/projects/conda/en/latest/user-guide/install/download.html) for correct installation. The proper Python version is installed during the first step of the following procedure._\n\n1. Install the required packages and create the environment\n    - ``` conda env create -f env.yml ```\n\n2. Activate the environment\n    - ``` conda activate tgode ```\n\n\n## How to reproduce our experiments\nFirst, extract the preprocessed data through the command: ```tar -xvf RESULTS.tar.xz```\n\n\nThen:\n\n```\nexport data=\"\" # choose one from ['metrla', 'pems03', 'pems04', 'pems07', 'pems08', 'montevideo', 'heat', 'pow_2_heat', 'pow_5_heat', 'tanh_heat', 'expand_heat', 'reduce_heat', 'gaussian_noise_heat']\nexport model=\"\" # choose one from ['DCRNN', 'GCRN_LSTM', 'GCRN_GRU', 'TGCN', 'A3TGCN', 'NODE', 'GDE', 'TGODE', 'LB_baseline'] #NOTE that for the LB_baseline you can set the num of epochs to be 1\nexport NUM_CPUS=90 # number of available cpus for the entire experiment\nexport PERC_GPUS=0.0 # percentage of gpus for one configuration\nexport CUDA_VISIBLE_DEVICES=\"\" # list of cuda visible devices\n```\n\n- Single-spike heat diffusion\n```\nexport batch=16\nexport dir=RESULTS/single_spike/$data/\nnohup python3 -u main.py --singlespike --data $data --model $model --batch $batch --savedir $dir --x_scaler StandardScaler \u003e$dir/out_$model_$data 2\u003e$dir/err_$model_$data\n```\n\n- Multi-spike heat diffusion\n```\nexport batch=16\nexport dir=RESULTS/multi_spike/$data/\nnohup python3 -u main.py --data $data --model $model --batch $batch --savedir $dir --x_scaler StandardScaler \u003e$dir/out_$model_$data 2\u003e$dir/err_$model_$data\n```\n\n- Traffic forecasting\n```\nexport batch=1\nexport dir=RESULTS/$data/\nnohup python3 -u main.py --data $data --model $model --batch $batch --savedir $dir --x_scaler StandardScaler \u003e$dir/out_$model_$data 2\u003e$dir/err_$model_$data\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgravins%2Ftg-ode","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgravins%2Ftg-ode","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgravins%2Ftg-ode/lists"}