Giter Site home page Giter Site logo

szymonrucinski / graph-convolutional-networks Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 1.08 MB

Train your own GCN model using the latest pytorch-geometric ๐Ÿ“‰ to solve image classification problem ๐Ÿง 

Jupyter Notebook 98.72% Python 1.28%
graph-convolutional-networks network pytorch-geometric pytrorch

graph-convolutional-networks's Introduction

Spline graph networks

All experiments performed on a computer with the following configuration.

CPU GPU RAM
AMD Ryzen 5 2600 GTX 1660 Super OC 6Gb 32 Gb DDR4

Category 1 experiment

The task is to prepare a program and conduct an experiment to test the effectiveness of a selected graph neural network model in an inductive approach using the graph equivalent of the MNIST set.

Experiment 1.1

Network architecture

Net(

(conv1): SplineConv(1, 32, dim=2)

(conv2): SplineConv(32, 64, dim=2)

(fc1): Linear(in_features=64, out_features=128, bias=True)

(fc2): Linear(in_features=128, out_features=10, bias=True)

)

Optimizer
Adam

Graph 1.1 - Visualization of the analyzed graph and image from the MNIST set.

Figure 1.2 - Percentage effectiveness for the training set

Graph 1.3 - Graph showing changes in error (objective function) during learning

The final accuracy achieved for the test set is 94.2%.

Experiment 1.2

Network architecture

GCN2(

(conv1): SplineConv(1, 64, dim=2)

(conv2): SplineConv(64, 128, dim=2)

(fc1): Linear(in_features=128, out_features=256, bias=True)

(fc2): Linear(in_features=256, out_features=10, bias=True)

)

Optimizer
Adam

Figure 1.4 - Percentage effectiveness for the training set

Graph 1.5 - Graph showing changes in error (objective function) during learning

The final accuracy achieved for the test set is 94.6%.

Reference results of obtained % classification error for a given set published in the literature for other network architectures:

GCGP PNCNN Dynamic Reduction Network
4.2 1.24 0.95

Category 2 experiment

The task is to prepare a program and conduct an experiment to test the effectiveness of the selected graph neural network model in the transduction case approach using an example from one of the elements in the Planetoid set.

Experiment 2.1

Network architecture

GCN(

(conv1): GCNConv(1433, 32)

(conv2): GCNConv(32, 7)

)

Optimizer
Adam

graphic 2.1 - Visualization of elements in a set

Graph 2.2 - Percentage performance for the training set

Graph 2.3 - Graph showing changes in error (objective function) during learning

The final accuracy achieved is 78.9%.

Experiment 2.2

Network architecture

GCN(

(conv1): GCNConv(1433, 512)

(conv2): GCNConv(512, 7)

)

Optimizer
Adam

Figure 2.4 - Percentage effectiveness for the training set

Graph 2.5 - Graph showing changes in error (objective function) during learning

The final accuracy achieved is 79.6%.

Reference % accuracy results obtained for a given set published in the literature for other network architectures:

GAT SPLINECNN SSP
83,00 % 89,48 % 90,160%

graph-convolutional-networks's People

Contributors

szymonrucinski avatar

Stargazers

Kevin Hu avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.