rampasek / GraphGPS

Recipe for a General, Powerful, Scalable Graph Transformer
MIT License
643 stars 114 forks source link

Run it on any graph dataset supported by PyG #3

Closed pedrohesch closed 2 years ago

pedrohesch commented 2 years ago

According to final conclusions published on tds , we can easly plug and "Run it on any graph dataset supported by PyG". I still did not find at documentation how to do it so. Or perhaps, I did not undertand it yet and I apologyze. Could you please elaborate more on that? I have my own graph-dataset and I would like to teste the GraphGPS on it. thanks!

rampasek commented 2 years ago

Hello Pedro,

Thank you for your interest in GraphGPS.

To use a new dataset, place your PyG dataset class into dataset folder, you can follow the MalNet-Tiny example there: https://github.com/rampasek/GraphGPS/tree/main/graphgps/loader/dataset

Then hook it up in the load_dataset_master function: https://github.com/rampasek/GraphGPS/blob/e38969bcca46f850fe08f2062991f9ecd5c9711e/graphgps/loader/master_loader.py#L78

Again, you can follow the example of MalNet-Tiny, make sure you set the train/valid/test dataset splits in dataset.split_idxs: https://github.com/rampasek/GraphGPS/blob/e38969bcca46f850fe08f2062991f9ecd5c9711e/graphgps/loader/master_loader.py#L251

After that, I think you’ll just need a new config file. The easiest would be to start from a config for a similar existing dataset and modify it as needed. You can find all the configs in this directory: https://github.com/rampasek/GraphGPS/blob/main/configs/GPS

I hope this helps! Ladislav

pedrohesch commented 2 years ago

Hello Ladislav,

Many thanks! I will try it asap. In case of any trouble I get in contact.