Skip to content

Codes for Paper: From Hypergraph Energy Functions to Hypergraph Neural Networks

Notifications You must be signed in to change notification settings

yxzwang/PhenomNN

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Introduction

Codes for Paper: From Hypergraph Energy Functions to Hypergraph Neural Networks. ICML 2023.

We show the following commands to reproduce all results in Table 1 and 2 in our paper. All hyperparameters can be found in the last of Appendix in our paper.

Environment

python 3.9
pytorch 1.12.1+cu113
dgl 1.0.1+cu113

Datasets

Dataset files should be put in the data folder. Dataset sources are from Hypergraph convolutional networks via equivalency between hypergraphs and undirected graphs and YOU ARE ALLSET: A MULTISET LEARNING FRAMEWORK FOR HYPERGRAPH NEURAL NETWORKS. .

For convenience, we provide a copy of datasets in this link.

Reproducing Table 1.

PhenomNN_simple

For cocitation and coauthorship datasets

The datasets are in ['coauthorship/dblp','coauthorship/cora','cocitation/cora','cocitation/pubmed','cocitation/citeseer']

python train_faster.py --type phenomnn_s --activate_dataset coauthorship/cora  --lr 0.01 --dropout 0.7 --hidden 64 --lam0 20 --lam1 80 --alp 0.1 --prop_step 16 --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0 --sigma -1
python train_faster.py --type phenomnn_s --activate_dataset coauthorship/dblp  --lr 0.005 --dropout 0.6 --hidden 64 --lam0 100 --lam1 100 --alp 0.1 --prop_step 16 --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0 --sigma -1
python train_faster.py --type phenomnn_s --activate_dataset cocitation/cora  --lr 0.005 --dropout 0.7 --hidden 64 --lam0 0 --lam1 20 --alp 1 --prop_step 16 --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0 --sigma -1
python train_faster.py --type phenomnn_s --activate_dataset cocitation/pubmed  --lr 0.02 --dropout 0.7 --hidden 64 --lam0 0 --lam1 20 --alp 0.1 --prop_step 16 --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0 --sigma -1
python train_faster.py --type phenomnn_s --activate_dataset cocitation/citeseer  --lr 0.005 --dropout 0.7 --hidden 64 --lam0 1 --lam1 20 --alp 1 --prop_step 16 --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0 --sigma -1

For NTU2012 and ModelNet40

python train_faster.py --on_dataset NTU2012  --type phenomnn_s --hidden 128 --alp 0.1  --lam0 1 --lam1 1 --prop_step 16 --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0 --lr 0.001  --dropout 0.2 --sigma -1 --gvcnn_feature_structure --mvcnn_feature_structure --use_gvcnn_feature --use_mvcnn_feature --is_probH
python train_faster.py --on_dataset ModelNet40  --type phenomnn_s --hidden 128 --alp 0.05  --lam0 1 --lam1 1 --prop_step 16 --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0 --lr 0.0005  --dropout 0.4 --sigma -1 --gvcnn_feature_structure --mvcnn_feature_structure --use_gvcnn_feature --use_mvcnn_feature --is_probH

PhenomNN

For cocitation and coauthorship datasets

The datasets are in ['coauthorship/dblp','coauthorship/cora','cocitation/cora','cocitation/pubmed','cocitation/citeseer']

python train_faster.py --type phenomnn --activate_dataset coauthorship/cora  --lr 0.001 --dropout 0.8 --hidden 64 --lam0 20 --lam1 100 --alp 0.1 --prop_step 16 --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0 --sigma -1
python train_faster.py --type phenomnn --activate_dataset coauthorship/dblp  --lr 0.001 --dropout 0.6 --hidden 64 --lam0 1 --lam1 1 --alp 1 --prop_step 16 --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0 --sigma -1
python train_faster.py --type phenomnn --activate_dataset cocitation/cora  --lr 0.01 --dropout 0.6 --hidden 64 --lam0 0 --lam1 20 --alp 1 --prop_step 16 --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0 --sigma -1
python train_faster.py --type phenomnn --activate_dataset cocitation/pubmed  --lr 0.01 --dropout 0.6 --hidden 64 --lam0 1 --lam1 1 --alp 1 --prop_step 16 --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0 --sigma -1
python train_faster.py --type phenomnn_s --activate_dataset cocitation/citeseer  --lr 0.001 --dropout 0.2 --hidden 64 --lam0 20 --lam1 80 --alp 0.05 --prop_step 16 --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0 --sigma -1

For NTU2012 and ModelNet40

python train_faster.py --on_dataset NTU2012  --type phenomnn_s --hidden 64 --alp 0.05  --lam0 20 --lam1 80 --prop_step 16 --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0 --lr 0.001  --dropout 0.2 --sigma -1 --gvcnn_feature_structure --mvcnn_feature_structure --use_gvcnn_feature --use_mvcnn_feature --is_probH
python train_faster.py --on_dataset ModelNet40  --type phenomnn_s --hidden 128 --alp 0.05  --lam0 0 --lam1 20 --prop_step 16 --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0 --lr 0.0005  --dropout 0.2 --sigma -1 --gvcnn_feature_structure --mvcnn_feature_structure --use_gvcnn_feature --use_mvcnn_feature --is_probH

Reproducing Table 2.

activate_dataset is the dataset name in ['dhg/20newsW100', 'dhg/ModelNet40','dhg/NTU2012', 'dhg/yelp', 'dhg/walmart-trips-100', 'dhg/house-committees-100'] and feature_noise is only useful for 'dhg/walmart-trips-100' and 'dhg/house-committees-100'.

PhenomNN_simple

python train_faster.py  --type phenomnn_s --lr 0.01 --dropout 0.2 --hidden 256  --lam0 50 --lam1 20 --alp 0.05 --prop_step 16 --activate_dataset dhg/NTU2012 --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0  --sigma -1
python train_faster.py  --type phenomnn_s --lr 0.01 --dropout 0 --hidden 512  --lam0 50 --lam1 1 --alp 0.05 --prop_step 16 --activate_dataset dhg/ModelNet40 --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0  --sigma -1
python train_faster.py  --type phenomnn_s --lr 0.01 --dropout 0.1 --hidden 64  --lam0 1 --lam1 100 --alp 0.1 --prop_step 4 --activate_dataset dhg/yelp --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0  --sigma -1
python train_faster.py --feature_noise 1 --type phenomnn_s --activate_dataset dhg/house-committees-100 --lr 0.1 --dropout 0 --hidden 512  --lam0 50 --lam1 20 --alp 0 --prop_step 16  --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0  --sigma -1
python train_faster.py --feature_noise 0.6 --type phenomnn_s --activate_dataset dhg/house-committees-100 --lr 0.1 --dropout 0 --hidden 512  --lam0 1 --lam1 1 --alp 0.05 --prop_step 16  --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0  --sigma -1
python train_faster.py --feature_noise 1 --type phenomnn_s --activate_dataset dhg/walmart-trips-100 --lr 0.01 --dropout 0 --hidden 256  --lam0 0 --lam1 50 --alp 1 --prop_step 16  --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0  --sigma -1
python train_faster.py --feature_noise 0.6 --type phenomnn_s --activate_dataset dhg/walmart-trips-100 --lr 0.1 --dropout 0 --hidden 256  --lam0 1 --lam1 20 --alp 1 --prop_step 16  --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0  --sigma -1
python train_faster.py  --type phenomnn_s --activate_dataset dhg/20newsW100 --lr 0.01 --dropout 0.2 --hidden 64  --lam0 0.1 --lam1 0 --alp 1 --prop_step 7  --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0  --sigma -1

PhenomNN

python train_faster.py  --type phenomnn_s --lr 0.01 --dropout 0.2 --hidden 256  --lam0 100 --lam1 20 --alp 0.05 --prop_step 16 --activate_dataset dhg/NTU2012 --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0  --sigma -1
python train_faster.py  --type phenomnn_s --lr 0.001 --dropout 0.2 --hidden 512  --lam0 0 --lam1 20 --alp 0.05 --prop_step 16 --activate_dataset dhg/ModelNet40 --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0  --sigma -1
python train_faster.py  --type phenomnn_s --lr 0.01 --dropout 0.2 --hidden 64  --lam0 0 --lam1 1 --alp 0.01 --prop_step 4 --activate_dataset dhg/yelp --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0  --sigma -1
python train_faster.py --feature_noise 1 --type phenomnn_s --activate_dataset dhg/house-committees-100 --lr 0.01 --dropout 0.2 --hidden 64  --lam0 50 --lam1 100 --alp 0.05 --prop_step 16  --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0  --sigma -1
python train_faster.py --feature_noise 0.6 --type phenomnn_s --activate_dataset dhg/house-committees-100 --lr 0.01 --dropout 0.2 --hidden 512  --lam0 0 --lam1 1 --alp 0.05 --prop_step 16  --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0  --sigma -1
python train_faster.py --feature_noise 1 --type phenomnn_s --activate_dataset dhg/walmart-trips-100 --lr 0.001 --dropout 0 --hidden 256  --lam0 0 --lam1 50 --alp 1 --prop_step 16  --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0  --sigma -1
python train_faster.py --feature_noise 0.6 --type phenomnn_s --activate_dataset dhg/walmart-trips-100 --lr 0.01 --dropout 0 --hidden 256  --lam0 0 --lam1 50 --alp 1 --prop_step 16  --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0  --sigma -1
python train_faster.py  --type phenomnn_s --activate_dataset dhg/20newsW100 --lr 0.01 --dropout 0 --hidden 64  --lam0 0.1 --lam1 0.1 --alp 1 --prop_step 8  --data_path ./data --save_dir ./ --print_freq 100 --epochs 1000 --gpu 0  --sigma -1

About

Codes for Paper: From Hypergraph Energy Functions to Hypergraph Neural Networks

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages