|
1 | 1 | <div align="center">
|
2 | 2 |
|
3 |
| -# GraphAny: A Foundation Model for Node Classification on Any Graph # |
| 3 | +# GraphAny: Fully-inductive Node Classification on Arbitrary Graphs # |
4 | 4 |
|
5 | 5 | [](https://pytorch.org/get-started/locally/)
|
6 | 6 | [](https://pytorchlightning.ai/)
|
|
13 | 13 |
|
14 | 14 | Original PyTorch implementation of [GraphAny].
|
15 | 15 |
|
16 |
| -Authored by [Jianan Zhao], [Hesham Mostafa], [Mikhail Galkin], [Michael Bronstein], |
17 |
| -[Zhaocheng Zhu], and [Jian Tang]. |
| 16 | +Authored by [Jianan Zhao], [Zhaocheng Zhu], [Mikhail Galkin], [Hesham Mostafa], [Michael Bronstein], |
| 17 | +and [Jian Tang]. |
18 | 18 |
|
19 | 19 | [Jianan Zhao]: https://andyjzhao.github.io/
|
20 |
| -[Hesham Mostafa]: https://www.linkedin.com/in/hesham-mostafa-79ba93237 |
21 | 20 | [Zhaocheng Zhu]: https://kiddozhu.github.io
|
22 | 21 | [Mikhail Galkin]: https://migalkin.github.io/
|
| 22 | +[Hesham Mostafa]: https://www.linkedin.com/in/hesham-mostafa-79ba93237 |
23 | 23 | [Michael Bronstein]: https://www.cs.ox.ac.uk/people/michael.bronstein/
|
24 | 24 | [Jian Tang]: https://jian-tang.com/
|
25 |
| -[GraphAny]: http://arxiv.org/abs/2405.20445 |
| 25 | +[GraphAny]: https://openreview.net/pdf?id=1Qpt43cqhg |
26 | 26 |
|
27 | 27 | ## Overview ##
|
28 | 28 |
|
29 |
| - |
| 29 | + |
30 | 30 |
|
31 |
| -GraphAny is a foundation model for node classification. A single pre-trained GraphAny |
| 31 | +GraphAny is a fully-inductive model for node classification. A single trained GraphAny |
32 | 32 | model performs node classification tasks on any graph with any feature and label
|
33 |
| -spaces. Performance-wise, averaged on 30+ graphs, a single pre-trained GraphAny model |
34 |
| -is better **_in inference mode_** than many supervised models (e.g., MLP, GCN, GAT) |
| 33 | +spaces. Performance-wise, averaged on 30+ graphs, a single trained GraphAny model **_in inference mode_** |
| 34 | +is better than many transductive (supervised) models (e.g., MLP, GCN, and GAT) |
35 | 35 | trained specifically for each graph. Following the pretrain-inference paradigm of
|
36 | 36 | foundation models, you can perform training from scratch and inference on 30 datasets
|
37 |
| -as shown in [Training from scratch](#training-foundation-models-from-scratch). |
| 37 | +as shown in [Training from scratch](#training-from-scratch). |
38 | 38 |
|
39 | 39 | This repository is based on PyTorch 2.1, Pytorch-Lightning 2.2, PyG 2.4, DGL 2.1, and Hydra 1.3.
|
40 | 40 |
|
@@ -74,7 +74,7 @@ conda env create -f environment_cpu.yaml
|
74 | 74 |
|
75 | 75 | ## Reproduce Our Results ##
|
76 | 76 |
|
77 |
| -### Training Foundation Models from Scratch ### |
| 77 | +### Training GraphAny from Scratch ### |
78 | 78 |
|
79 | 79 | This section would detail how users can train GraphAny on one dataset (Cora,
|
80 | 80 | Wisconsin, Arxiv, or Product) and evaluate on all 31 datasets. You can reproduce
|
@@ -111,12 +111,12 @@ _dataset_lookup:
|
111 | 111 | eval: [ Cora, Citeseer ]
|
112 | 112 | ```
|
113 | 113 |
|
114 |
| -**Step 2** _(optional)_: Define your dataset processing logic in graph_any/data.py. Please go through the [Bring Your Own Dataset](#bring-your-own-dataset) section. |
| 114 | +**Step 2** _(optional)_: Define your dataset processing logic in graph_any/data.py. |
115 | 115 | This step is necessary only if you are not using our pre-processed data. If you
|
116 | 116 | choose to use our provided datasets, you can skip this step and proceed directly to
|
117 | 117 | Step 3.
|
118 | 118 |
|
119 |
| -**Step 3**: Run inference with pre-trained model using command: |
| 119 | +**Step 3**: Inference using pre-trained model using command: |
120 | 120 |
|
121 | 121 | ```bash
|
122 | 122 | python graphany/run.py prev_ckpt=checkpoints/graph_any_arxiv.pt total_steps=0 dataset=CoraCiteInference
|
@@ -378,12 +378,10 @@ This setup will allow you to track and visualize metrics dynamically.
|
378 | 378 | If you find this codebase useful in your research, please cite the paper.
|
379 | 379 |
|
380 | 380 | ```bibtex
|
381 |
| -@article{zhao2024graphany, |
382 |
| - title={GraphAny: A Foundation Model for Node Classification on Any Graph}, |
383 |
| - author={Jianan Zhao and Hesham Mostafa and Mikhail Galkin and Michael Bronstein and Zhaocheng Zhu and Jian Tang}, |
384 |
| - year={2024}, |
385 |
| - eprint={2405.20445}, |
386 |
| - archivePrefix={arXiv}, |
387 |
| - primaryClass={cs.LG} |
| 381 | +@article{zhao2025graphany, |
| 382 | + title = {Fully-inductive Node Classification on Arbitrary Graphs}, |
| 383 | + author = {Jianan Zhao and Zhaocheng Zhu and Mikhail Galkin and Hesham Mostafa and Michael Bronstein and Jian Tang}, |
| 384 | + journal = {International Conference on Learning Representations}, |
| 385 | + year = {2025} |
388 | 386 | }
|
389 | 387 | ```
|
0 commit comments