/HyperGCN

NeurIPS 2019: HyperGCN: A New Method of Training Graph Convolutional Networks on Hypergraphs

Primary LanguagePythonApache License 2.0Apache-2.0

HyperGCN: A New Method of Training Graph Convolutional Networks on Hypergraphs

Conference Paper

Source code for NeurIPS 2019 paper: HyperGCN: A New Method of Training Graph Convolutional Networks on Hypergraphs

Overview of HyperGCN: *Given a hypergraph and node features, HyperGCN approximates the hypergraph by a graph in which each hyperedge is approximated by a subgraph consisting of an edge between maximally disparate nodes and edges between each of these and every other node (mediator) of the hyperedge. A graph convolutional network (GCN) is then run on the resulting graph approximation. *

Dependencies

  • Compatible with PyTorch 1.0 and Python 3.x.
  • For data (and/or splits) not used in the paper, please consider tuning hyperparameters such as hidden size, learning rate, seed, etc. on validation data.

Training model (Node classifiction):

  • To start training run:

    python hypergcn.py --mediators True --split 1 --data coauthorship --dataset dblp
    • --mediators denotes whether to use mediators (True) or not (False)
    • --split is the train-test split number

Citation:

@incollection{hypergcn_neurips19,
title = {HyperGCN: A New Method For Training Graph Convolutional Networks on Hypergraphs},
author = {Yadati, Naganand and Nimishakavi, Madhav and Yadav, Prateek and Nitin, Vikram and Louis, Anand and Talukdar, Partha},
booktitle = {Advances in Neural Information Processing Systems (NeurIPS) 32},
pages = {1509--1520},
year = {2019},
publisher = {Curran Associates, Inc.}
}