Skip to content

sidneyarcidiacono/graph-convolutional-networks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 

Repository files navigation

፨ Graph Convolutional Networks

Sid Arcidiacono

SUP 2.1 Make School, Term 4 2021

The connections within our data are as important as the data itself.

It was a fascination with innovation that drove me to study Data Science, and it is this same fascination that continues to push me forward as I delve into new subjects.

My interest in and desire to learn more about Graph Convolutional Networks began completely innocuously - with an assignment to write a technical article about some data structure in computer science. I wanted to choose one that related to machine learning or data science, but became entranced in Kipf & Welling's implementation of Graph Convolutional Networks in the process.

This entrancement wasn't necessarily due to this being the best, most recent, or easiest implementation. Rather, it was simply, in my opinion, the most well documented. As a relative beginner in this field, finding posts and articles on the topic that I could understand well enough to explain to others was a determining factor in my drive to learn more. Accessibility is so important - and while it isn't always a priority, or possible, it does make a difference, and we should keep this in mind as we strive to get more minds into this field.

As I've researched Graph Convolutional Networks, and specifically the Kipf & Welling implementation, I've found myself learning a vast amount about Convolutional Neural Networks, deep learning in general, mathematics, and graph theory. It's been a quite exciting term project, to say the least.

This research of mine has culminated in two (and technically one more which is not yet released publicly on this repository) notebooks implementing GCNs - one toy experiment and two different methods of classifying the benchmark PROTEINS dataset.

Additionally, I have written three articles so far:

  1. Why Graph Theory is Cooler Than You Thought

Walking through what graph theory is, and a few examples of applications for data science. In other words, why we, as data scientists, should care about graph theory or graph structured data.

  1. Graph Convolutional Networks - Explained

This article was an attempt to solidify my own knowledge in the early stages of my research, as well as seek to break down the terminology behind this topic. Simplifying the conceptual intuitions behind GCNs, this article seeks to "bring beginners into the conversation" through definition.

  1. What Makes Graph Convolutional Networks Work?

Finally, a mathematical breakdown of Kipf & Welling's GCN. This was my most well researched write-up of the term, and I was quite proud when an editor from Towards Data Science asked me to submit this to their publication.

Lastly, the notebooks. Both relied heavily on resources cited below - and I want to extend my thanks to their authors. I feel extremely grateful for this community.

Citations:

  1. K. M. Borgwardt, C. S. Ong, S. Schoenauer, S. V. N. Vishwanathan, A. J. Smola, and H. P. Kriegel. Protein function prediction via graph kernels. Bioinformatics, 21(Suppl 1):i47–i56, Jun 2005.

  2. Mayachita, Inneke. "Understanding Graph Convolutional Networks for Node Classification." Towards Data Science, 10 June 2020.

  3. Fey, Matthias. "Graph Classification." .

  4. Kipf, Thomas. "Graph Convolutional Networks." 30 Sept. 2016.

  5. Kipf, Thomas N. "Semi-Supervised Classification with Graph Convolutional Networks." ICLR, 22 Feb. 2017, doi:1609.02907.

About

The connections within our data are as important as the data itself. SUP 2.1 Topic for Make School Term 4

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published