Paper:Heterogeneous Graph Representation Learning with Relation Awareness
Code from author:https://github.com/yule-BUAA/R-HGNN
Clone the Openhgnn-DGL
python main.py -m RHGNN -t node_classification -d imdb4GTN -g 0 --use_best_config
Candidate dataset: imdb4GTN/acm4GTN
If you do not have gpu, set -gpu -1.
imdb4GTN
NOTE: imdb4GTN is a small-scale dataset. We will add large-scale datasets (OGB-MAG, OAG-Venue and OAG-L1-Field) in our further work.
Node classification
accuracy | |
---|---|
imdb4GTN | 0.5883 |
-
- Contain two R_HGNN_layer、 relation_fusing and one classifier
-
-
first step: hetero_conv and residual connection
- HeteroGraphConv
- Use RelationGraphConv to create hetero_conv, each RelationGraphConv deals with a single type of relation
- A generic module for computing convolution on heterogeneous graphs
-
second step: relation_crossing_layer
- RelationCrossing
- Create relation_crossing_layer
- Establish connections of node representations to improve message passing across different relations and automatically distinguish the importance of relations
-
third step: relation_propagation_layer
R-HGNN layer is composed of these three components and stack L layers to receive information from multi-hop neighbors. Finally, the L layers could provide relation-aware node representations for target node.
-
-
- Aggregate the relation-aware node representations into a compact node representation
- Create relation_fusing
num_heads = 8
hidden_units = 64
relation_hidden_units = 8
n_layers = 2
learning_rate = 0.001
dropout = 0.5
residual = True
Best config can be found in best_config
Tianyu Zhao, Qi Zhang[GAMMA LAB]
Submit an issue or email to [email protected].