Machine Learning on Graph Structures

The course "Machine Learning on Graph Structures" is primarily aimed at Master students and will be offered in winter terms.

More information will be available soon in Stud.IP

Abstract

This course sits at the intersection of Machine Learning and graph-structured data. Graphs are one of the most general and powerful ways to represent the world — from road networks and social connections to molecules and knowledge bases — and learning techniques (e.g. clustering, neural networks, etc.) have emerged as the tool of choice for learning on them. The rapid rise of for example Graph Neural Networks, together with mature frameworks like PyTorch Geometric, has made it possible to tackle real-world problems such as traffic prediction, social network analysis, and spatio-temporal forecasting. Understanding how to learn on graphs is becoming an essential skill for students who want to work with Machine Leanring on very large and realistic datasets.

This course is primarily aimed at Master students.

Objectives

At the end of the course, students will have learned and discussed the following:

  • Gained familiarity with cutting-edge literature and frameworks in the field of Machine Learning on Graph Structures
  • Know how to train Graph Neural Networks (GNN) and use them for inference on real-world datasets
  • Understanding of the inherent components of a graph structure and their connection to message passing systems
  • Understanding the role of GNNs in the broader landscape of deep learning architectures like Transformers and Sequential RNNs
  • Practical experience through hands-on project assignments

Contents

This course is a deep dive into machine learning techniques on graph structures that enable deep learning applications on large-scale datasets. As datasets increases in time of Big Data the resulting data is less and less structured in fixed relations resulting in more attention to graph-based learning methods.

Topics covered

  • Brief recap / introduction to graph data structures
  • Unsupervised learning on graph structures 
  • Message Passing for a learned graph embedding
  • Attention and transformers on graph data
  • Applications (e.g. Social Media, Spatio-Temporal, LLMs)

Our lectures will be mixed with problem-based learning sessions in which students are encouraged to participate in open and interactive discussions. This course offers hands-on experience in the implementation of small GNNs with basic pytorch functions up to the application ready development  of GNN architectures based on the pytorch-geometric libarary. This course offers learning experiences that involve hands-on implementation and analysis as they reinforce student understanding of concepts and their application to real-world problems. Overall, this course provides the students the ability to understand fundamental issues in the design of graph-based machine learning methods.

Prerequisites

We expect students to bring:

  1. theoretical knowledge of machine learning, in particular deep neural networks
  2. practical knowledge of python programming for the usage of the pytroch and pytorch geometric libraries.