PatchNet  by Sunefei

Graph representation learning for feature heterogeneity

Created 3 years ago
498 stars

Top 61.8% on SourcePulse

GitHubView on GitHub
Project Summary

Summary

PatchNet addresses feature heterogeneity in graph data by introducing learnable graph patches, a novel approach accepted by KDD'25. This implementation targets researchers and practitioners in graph representation learning, offering a method to better handle complex and diverse feature sets within graph structures, potentially improving downstream task performance.

How It Works

The core of PatchNet lies in its "Patching Process," which extracts learnable patches from graph structures to capture local feature patterns. This method is designed to effectively manage feature heterogeneity, a common challenge in graph-based machine learning. The implementation relies on Mole-BERT, suggesting an integration with advanced graph neural network architectures for robust representation learning.

Quick Start & Requirements

  • Installation: Requires Python 3.7.12. Environment setup via conda env create --file F4G.yml.
  • Prerequisites: Mole-BERT (refer to its documentation for setup).
  • Pre-training: Run Mole-BERT's tokenizer training, followed by python vqvae.py for self-supervised pre-training.
  • Training: Multi-GPU: CUDA_VISIBLE_DEVICES=0,1,2,3 python -m torch.distributed.launch --nproc_per_node=4 main_multi.py --batch_size=256 --output_model_dir=saves/. Single-GPU: python main_single.py --batch_size=256 --output_model_dir=saves/ --pretrain_dataset zinc.
  • Fine-tuning: python molecule_finetune.py --dataset=$dataset --input_model_file=saves/Multi_model.pth --epochs=100.
  • Reproducibility: Use random seeds 0-9 with scaffold splitting.
  • Status: This repository is for review purposes only; the full version will be released upon acceptance.

Highlighted Details

  • Accepted for publication at KDD'25.
  • Introduces "Learnable Graph Patches" to handle feature heterogeneity.
  • Requires integration with Mole-BERT.
  • Supports multi-GPU distributed training.

Maintenance & Community

No specific details on contributors, sponsorships, or community channels (Discord/Slack) are provided in the README snippet. The repository is marked for review purposes only, indicating limited immediate community engagement.

Licensing & Compatibility

No license information is specified in the provided README. Compatibility for commercial use or closed-source linking cannot be determined without a license.

Limitations & Caveats

The current repository is designated for review purposes only, with the full version pending acceptance. It requires an older Python version (3.7.12) and a dependency on Mole-BERT, which necessitates separate setup.

Health Check
Last Commit

3 weeks ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
577 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.