reshalfahsi / node-classification

Graph Neural Network for Node Classification

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Graph Neural Network for Node Classification

colab

A graph neural network (GNN) is a type of neural network leveraged to handle graph data. One kind of graph data is a single graph that is large enough to contain a myriad of nodes. Later, we can attribute each node to well-qualified features and discriminate them accordingly. Then, by means of GNN, we can perform node classification on this large graph. The CORA dataset, the publicly available dataset for node classification on a large graph, is used in this tutorial. The graph feature extractor utilized in this tutorial consists of a sequence of ResGatedGraphConv, SAGEConv, and TransformerConv, which are implemented by PyTorch Geometric. The final classifier comprises MLP.

Experiment

To run the code for this project, please click here.

Result

Quantitative Result

The table below exhibits the quantitative performance of the model on the test data.

Metrics Score
Accuracy 0.743
Loss 2.695

Accuracy and Loss Curve

accuracy_curve
GNN's training and validation accuracy curve.

loss_curve
GNN's training and validation loss curve.

Qualitative Result

The qualitative result is provided as follows:

qualitative_result
The visualization of the embedding space of the nodes in the large graph in the course of the training process.

Credit

About

Graph Neural Network for Node Classification


Languages

Language:Jupyter Notebook 100.0%