Graph ML Resources
Author
Anindyadeep Sannigrahi
KICK START YOUR GRAPH ML JOURNEY WITH THESE RESOURCES
One of the cool topics to study these days is `Graph Machine Learning. So here are a bunch of FREE resources that can help to kickstart the Graph ML journey. I have sorted these resources based on the degree of complexity and the time taken to finish them. There is no such constraint to finish some resource in some stipulated time. Everyone is expected to learn at their own pace.
Please note, the level of difficulty is shown by the following emojies:
- Easy / Begineers : π’
- Medium / Intermediate : π
- Hard / Advanced : π΄
There are some resource, which can not be explicitely defined by one emoji. So for example tags like (beginner to intermediate) is represented by this: π’π
Theory | Videos
βΆοΈ
Graph ML with DeepFindr | π’
If you just want some good intuition about how Graph Neural Networks work with fewer maths, check out this playlist : PLAYLIST. First, just go through the first 6 videos and it will give you a good understanding of the basics of Graph ML and Graph Nets.
Pre-requisites:
You are not at all expected to have any prior knowledge of Graph Machine Learning. Though some knowledge in machine learning or deep learning is expected. Knowledge in PyTorch
is a plus.
Outcomes:
- A basic understanding of what is Graph ML.
- Some practical use cases of Graph ML.
- How
message passing works
. (In a more visual way) - Introduction to
PyTorch Geometric
, aPyTorch
based library to code Graph ML models easily.
Graph ML session by MSR | π’
If you want to understand Graph Machine Learning in just 1 session, Check out this Video by Microsoft Research. Here you will get to learn about the very fundamentals of Graph Neural Networks. How do the message passing paradigms works?
Pre-requisites:
You are not at all expected to have any prior knowledge of Graph Machine Learning or any Deep Learning frameworks. Though some Knowledge of machine learning or deep learning is expected.
Outcomes:
- A basic understanding of what is Graph ML.
- Some practical use cases of Graph ML.
- How
message passing works
and its mathematical working. Get to know different types of GNN and how are they used for various applications.
CS224W is all you need | π’π
Stanford Engineering is one of the best resources out there to study any topics of Machine Learning or Deep Learning. This playlist is very long and descriptive. But it is worth watching. It covers from the very basics of Graph theory
, to how Graph Neural Networks
and also it covers the practical aspects of Graph ML too. Some of that includes how to deal with Scalability
in Graph Machine Learning. This playlist is rather a full course on Graph Machine Learning. So it is worth investing the time in completing this course on Graph ML.
Pre-requisites:
You are not at all expected to have any prior knowledge of Graph Machine Learning or any Deep Learning frameworks. Though some Knowledge of machine learning or deep learning is expected.
Outcomes:
- The basics of Graph theory.
- The basics of Graph Machine Learning.
- Intermediate Graph ML theories like different types of GNN architectures and how to build that.
- Getting familiar with PyTorch Geometric library.
- Practical aspects like scalability in Graph ML.
AMMI Course. | π π΄
Here comes another playlist, also known as the AMMI Geometric Deep Learning course. This course deals with exploring the underlined fundamental representations of natural entities like geodesics
, manifolds
, mesh structures
by treating those as Graphs. This is exciting and this subfield is also called Geometric Deep Learning. Legendary Graph ML researchers, Michael Bronstein (Imperial College/Twitter) Joan Bruna (NYU) Taco Cohen (Qualcomm), and Petar VeliΔkoviΔ (DeepMind)
are the instructors of this course.
Pre-requisites:
- Linear algebra.
- Some Geometric foundations of Linear algebra are a plus.
- Some mathematical fundamentals of Machine Learning.
- The geometric side of computer vision which include topics like 3D geometry is a plus.
Outcomes:
- Understanding a different perspective of Machine Learning.
- Understanding the geometric and pure non-euclidean paradigms of fundamental natural phenomena and events.
- Advanced theories of Machine Learning and Graph ML.
In short, the outcome would be very satisfying and would open a new door for research for the aspirants.
AMMI GEOMETRIC DEEP LEARNING COURSE LINK
Graph ML Research paper walk through | π’π
Reading a research paper is a great way to understand and dive deeper into some topic. So, if you want to understand some of the most popular Graph Neural Network architecture papers as well as the newer topics of Graph ML covering the geometric perspectives, then you must check out the awesome paper walkthrough series by Aleksa GordiΔ, (Deepmind)
Pre-requisites: It's better to have some prior Knowledge in Graph Machine Learning. And stuffs like how a GNN fundamentally works would save your time by not getting confused during watching the playlist.
Outcomes:
- A better and deeper Knowledge of Graph ML.
- Understand how to read a research paper and get insights from it.
Theory | Books
π
Now that you have got some cool video resources, here are some books for book lovers. Also, this book provides a better in-depth understanding of Graph Machine Learning.
Machine Learning with PyTorch and Scikit Learn | π’
One of the best books out there for beginners in ML. This book not only covers the basics of Machine Learning, and deep learning but also contains some cool topics like Graph ML and Deep Reinforcement Learning. Chapter 18
contains the full theory of what Graph ML is, and its different use cases. It also helps you to code a simple Graph Neural Network model from scratch in PyTorch
.
Pre-requisites:
To get started with the book in general, you absolutely do not need to have any prior knowledge of Machine Learning or Deep Learning. Even this book covers the basics of PyTorch and later PyTorch Geometric too. So if you are planning to start from the very start, this book is perfect for you. But if you specifically want to read Chapter 18
of this book, then prior Knowledge of Deep learning basics and PyTorch basics is expected.
Outcomes:
- Access to very good compiled resources of machine learning in the form of a book.
- Access to different other topics of ML and DL other than Graph ML.
- Getting a good foundation in Graph ML.
Graph Machine Learning | π’
Now if you want to get a hands-on book dedicated to the basics of graphs and topics like How to load a Graph dataset, visualize it using NetworkX
and create Machine Learning models to operate on this dataset using Tensorflow
. This book is a perfect pick. Also, this book has some better visualizations to make readers understand the topics. So definitely check this out, if you are more aligned with Tensorflow.
Pre-requisites:
You are not at all expected to have any prior knowledge of Graph Machine Learning. Though some prior Knowledge of machine learning or deep learning and some Knowledge of how to use Tensorflow will give you an edge and will save your time.
Outcomes:
- Getting a good foundation in Graph ML.
- You will be able to use some popular libraries like
TensorFlow
,ScikitLearn
,NetworkX
etc. - Able to visualize Graph datasets and also apply Graph ML models to do different types of tasks.
Graph Neural Networks: Foundations and Applications | π
This book provides you with a more formal way to teach Graph Machine Learning in general and how Graph Neural Networks in particular. It teaches what Representation Learning
in general is. And also provides a great depth of how representation learning
is used in the context of images, sound, texts, and graphs. From very popular topics to very newer and untouched topics in graph ML, this book covers it all. The book has 700+ pages. But it is not required to finish the book at once. But reading this book is surely worth it when it comes to understanding different Graph ML topics in depth.
Pre-requisites:
You are not at all expected to have any prior knowledge of Graph Machine Learning. Though Knowledge in Deep Learning and how Different types of Neural Network works is a plus. Also, some mathematical foundations like some common concepts of Linear algebra and calculus will save time.
Outcomes:
- You will be in a position to explore very advanced research topics in Graph Machine Learning.
- A very strong theoretical foundation is guaranteed.
GRL Book | π π΄
This is also a famous book called Graph Representation Learning and is related to representation learning and the theory behind representation learning and Graph ML. It also covers some graph theories. This book is small but is a bit advanced. So not recommended for beginners. This book covers some advanced concepts like Spectral Graph theory. But if you have some prior knowledge of ML and some foundational mathematical concepts, then this book would be a great resource to revise.
Pre-requisites:
- Linear algebra.
- Some Geometric foundations of Linear algebra are a plus.
- Knowledge in Signal Theory and Graph signal processing is a plus.
Outcomes
- Better and strong mathematical grasp of Graph ML and representation Learning.
- Better and polished mathematical foundations in the context of Graph ML.
Hands-on Practical resources πββοΈ
Here are some resources containing some playlists, videos, and blogs. These are more practical and more hands-on.
PLAYLIST
PyTorch Geometric | π’π
This set of videos in the playlist provides theory as well as hands-on tutorials using PyTorch Geometric
. It covers all the topics like:
- How to load Graph data using PyG
- How to create a GNN model using PyG
- How to create a custom message-passing layer and custom GNN layer
- Some Advanced topics of PyG
Pre-requisites:
Some Knowledge of Machine Learning / Deep Learning is required. Knowledge of Graph Neural networks is a plus.
GraphML by DeepFindr | π’
This Playlist contains a full playlist that covers the whole basics of Graph Machine Learning. It provides cool animations and also does hand on practical using PyTorch Geometric
. It is worth checking out.
Pre-requisites:
Some Knowledge of Machine Learning / Deep Learning is a plus. But you are not expected to have any prior knowledge of Graph Machine Learning.
Outcomes
- A basic understanding of what is Graph ML.
- Some practical use cases of Graph ML.
- How
message passing works
. (In a more visual way) - Understand how to use
PyTorch Geometric
libraries to create GNN models to solve some graph-related problems.
VIDEOS
GNN using Tensorflow | π’
Check out this great 1 hr session come tutorial by Petar VeliΔkoviΔ
, Where he provides some great insights on how graph machine learning works and also does a hands-on session using TensorFlow
. So TensorFlow
lovers, this video is a perfect fit for you.
Pre-requisites:
Some Knowledge of Machine Learning / Deep Learning is a plus. But you are not expected to have any prior knowledge of Graph Machine Learning.
Outcomes
- A basic understanding of what is Graph ML.
- How to code simple GNNs using TensorFlow.
BLOGS
Getting started with GNNs | π’
If want to understand the basics of GNNs, message passing, applications of GNNs, and also code a simple GNN with bare PyTorch, then this blog is all you need. One of the most compact blogs that cover all the above topics. This blog is also good for beginners if they want to get a small glimpse of Graph ML in a short period.This blog is powered by Neptune.ai
Pre-requisites:
Some Knowledge of Machine Learning / Deep Learning is a plus. But you are not expected to have any prior knowledge of Graph Machine Learning.
Outcomes
- A basic understanding of what is Graph ML.
- How to code simple GNN using just PyTorch.
- Understand the introductory math of message passing.
- Understand the different applications of Graph ML and GNNs.
Hand's on Tutorial on PyTorch Geometric Blog | π’
This is a great blog for starters who want to enter the Graph ML space. This two-part blog covers the very basics of Graph Machine learning concepts and also implements those concepts on PyTorch using a real-world dataset. The blog is interactive and it sure will be worth it to check that out.
Pre-requisites:
Some Knowledge of Machine Learning / Deep Learning is a plus. But you are not expected to have any prior knowledge of Graph Machine Learning.
Outcomes
- A basic understanding of what is Graph ML.
- How to code simple GNNs using PyTorch Geometric
Understand GATs | π’π
This blog is provided by the Deep Learning group of the Indian Institute of Technology Roorkee (IITR). This blog provides some great insights about the very basic difference between the two most popular architectures viz: Graph Convolutional Network (GCN)
and Graph Attention Network (GAT)
. This blog also provides an in-depth tutorial of Graph Attention Network
and also provides the inner working through PyTorch
Code. Readers can gain some great insights and their foundations polished in the working of GATs.
- Prior Knowledge in Machine Learning / Deep Learning.
- Prior Knowledge in Graph Machine Learning.
DISTILL.PUB | π’π
One of the most interactive blogs that cover the topic of Graph Machine Learning. Though some parts cover the spectral graph machine learning concepts (in part 2), which require some math concepts. However, readers not aware of those concepts can just only read this blog to visualize the different representations and animations to get more intuition.
Pre-requisites:
- Prior Knowledge in Machine Learning / Deep Learning.
- Some concepts of Linear Algebra like Laplacian matrix, diagonalization, etc.
Outcomes
Readers will get to build great visual intuition about what Graph Machine Learning is and about its different applications.
THE AI SUMMER | π’π
THE AI SUMMER, is one of the best new age Machine Learning blogs that not only covers Graph Machine Learning but other Hot topics like Transformers, ViTs, Multimodal learning, etc. The blog contains a subsection dedicated to Graph Machine Learning. The blog explains Graph ML and the working of GNNs along with its code in a very compact form. This source is very much useful to get some more added information regarding Graph Machine Learning.
Pre-requisites:
- Prior Knowledge in Machine Learning / Deep Learning.
- Some concepts of Graph ML is a plus.
CS224W Notes at WANDB.ai | π π΄
Another great resource of Graph Machine Learning. These are the notes of the popular CS224W course. This set of blogs covers the basics of Graph theory along with some theories of topology and network science. Further, it covers the foundational theories of Graph Neural networks and message passing. This blog is more like revision notes, so the readers should have some prior knowledge of Machine Learning and Graph Machine Learning.
Pre-requisites:
- Prior Knowledge in Machine Learning / Deep Learning.
- Some concepts of Graph ML is a plus.
- Completion of CS224W provides a great edge.
Outcomes
- Readers will have more in-depth clear Knowledge of foundational topics of the graph, topology, and network science.
- Also a great foundation of the inner nitty-gritty working of Graph Neural Networks.
- Knowledge of different Graph ML tasks and working with different types of GNN architectures.
Some List of Open Source Library especially made for Graph Machine Learning π±
Name | Based on | Github Link | Documentation Link |
---|---|---|---|
PyTorch Geometric | PyTorch | LINK | LINK |
Deep Graph Library | TensorFlow and PyTorch | LINK | LINK |
Graph Nets Library | TensorFlow | LINK | N/A |
Spektral | TensorFlow Keras | LINK | LINK |
Jraph | JAX | LINK | N/A |
Some People and Youtube Channels to Follow for Graph ML content π±
NOTE: The Following ordering is done on Random Fashion
Name | Youtube | ||
---|---|---|---|
Aleksa GordiΔ | LINK | LINK | LINK |
Michael Bronstein | LINK | LINK | LINK |
Petar VeliΔkoviΔ | LINK | LINK | LINK |
DeepFindr | LINK | N/A | N/A |
Zak Host | LINK | LINK | LINK |
Letitia Parcalabescu | LINK | LINK | LINK |
Jurij Leskovec | LINK | LINK | LINK |