graphstorm.model
A GraphStorm model may contain three components:
Input layer: a set of modules to convert input data for different use cases, e.g., embedding texture features.
Encoder: a set of Graph Neural Network modules
Decoder: a set of modules to convert results from encoders for different tasks, e.g., classification, regression, or link prediction.
Currently GraphStorm releases the first two set of components.
If users would like to implement their own model, the best practice is to extend the corresponding
***ModelBase, and implement the abstract methods.
Base models
The base class for node-prediction GNN |
|
The base class for edge-prediction GNN |
|
The base class for link-prediction GNN |
Input Layers
The input encoder layer for all nodes in a heterogeneous graph. |
|
The input encoder layer with language model for all nodes in a heterogeneous graph. |
|
The input embedding layer with language model only for all nodes in a heterogeneous graph. |
Encoders and GNN Layers
Relational graph conv encoder. |
|
Relational graph convolution layer from Modeling Relational Data with Graph Convolutional Networks. |
|
Relational graph attention encoder |
|
Relational graph attention layer from ` Relational Graph Attention Networks <https://arxiv.org/abs/1904.05811>`__. |
|
GraphSage Conv Encoder |
|
GraphSage Convolutional layerfrom Inductive Representation Learning on Large Graphs |
|
Heterogenous graph transformer (HGT) encoder |
|
Heterogenous graph transformer (HGT) layer from Heterogeneous Graph Transformer. |