https://github.com/yueliu1999/KAN4Graph
Kolmogorov Arnold Networks (KANs) for Graph Neural Networks (GNNs) and Tasks on Graphs
https://github.com/yueliu1999/KAN4Graph
Last synced: 17 days ago
JSON representation
Kolmogorov Arnold Networks (KANs) for Graph Neural Networks (GNNs) and Tasks on Graphs
- Host: GitHub
- URL: https://github.com/yueliu1999/KAN4Graph
- Owner: yueliu1999
- License: mit
- Created: 2024-05-10T14:59:14.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2024-10-14T12:12:21.000Z (7 months ago)
- Last Synced: 2024-11-10T02:33:57.261Z (6 months ago)
- Language: Python
- Homepage:
- Size: 3.73 MB
- Stars: 56
- Watchers: 2
- Forks: 6
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-kan - KAN4Graph - An application of KAN for Graph Neural Networks (GNNs) and graph-based machine learning tasks. (Library)
- Awesome-Deep-Graph-Clustering - link
README
# KAN4Graph
Implementation of Kolmogorov-Arnold Network (KAN) for Graphs. Any communications, collaborations, issues, PRs are welcomed. The contributors will be listed [here](https://github.com/yueliu1999/KAN4Graph?tab=readme-ov-file#Contributors). Please contact [email protected]. If you find this repository useful to your research or work, it is really appreciate to star this repository. :heart:
[](https://github.com/yueliu1999/KAN4Graph/stars)
[](https://github.com/yueliu1999/KAN4Graph/forks)
[](https://github.com/yueliu1999/KAN4Graph/issues)
[](https://github.com/yueliu1999/KAN4Graph)Table of Contents
## Usage
### Requirements
KAN4Graph is implemented with Python3.8.16 and 1 NVIDIA Tesla V100 SXM2 16 GB
Python package information is summarized in **requirements.txt**:
- torch==1.7.1
- tqdm==4.59.0
- numpy==1.19.2
- munkres==1.1.4
- scikit_learn==1.2.0### Datasets
| Dataset | Type | # Nodes | # Feature Dimensions | # Edges | # Classes |
| ------- | --------------- | :-----: | :-----: | :------------------: | :-------: |
| BAT | Attribute Graph | 131 | 81 | 1038 | 4 |
| UAT | Attribute Graph | 1,190 | 239 | 13,599 | 4 |
| EAT | Attribute Graph | 399 | 203 | 5,994 | 4 |still updating...
### Quick Start
clone this repository and change directory to KAN4Graph
```
git clone https://github.com/yueliu1999/KAN4Graph.git
cd ./KAN4Graph
```run codes
```
python train.py
```### Results
| Dataset | Metric | Score |
| ------- | ------ | ----- |
| BAT | ACC | 77.86 |
| | NMI | 54.48 |
| | ARI | 52.33 |
| | F1 | 77.34 |
| UAT | ACC | 57.05 |
| | NMI | 25.49 |
| | ARI | 24.97 |
| | F1 | 55.80 |
| EAT | ACC | 57.87 |
| | NMI | 34.16 |
| | ARI | 27.52 |
| | F1 | 58.09 |still updating...
## Acknowledgements
Our code are partly based on the following GitHub repository. Thanks for their awesome works.
- [pykan](https://github.com/KindXiaoming/pykan): the official implement of KAN.
- [fast-kan](https://github.com/ZiyaoLi/fast-kan): the implement of KAN (fast version).
- [Awesome Deep Graph Clustering](https://github.com/yueliu1999/Awesome-Deep-Graph-Clustering): a collection of deep graph clustering (papers, codes, and datasets).
- [SCGC](https://github.com/yueliu1999/SCGC): the official implement of Simple Contrastive Graph Clustering (SCGC) model.## Contributors
If you find this repository helpful, please cite our paper.
```
@article{liuyue_SCGC,
title={Simple contrastive graph clustering},
author={Liu, Yue and Yang, Xihong and Zhou, Sihang and Liu, Xinwang},
journal={IEEE Transactions on Neural Networks and Learning Systems},
year={2023},
publisher={IEEE}
}@misc{KAN4Graph,
author = {Yue Liu},
title = {KAN4Graph},
year = {2024},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/yueliu1999/KAN4Graph}},
}
```