Graphs are an incredibly versatile abstraction to represent arbitrary structures such as molecules, relational knowledge or social and traffic networks. This course provides a practical overview of deep (representation) learning on graphs and their applications.
Many established deep learning methods require dense input data with a well-defined structure (e.g. an image, a sequence of word embeddings). However, many practical applications deal with sparsely connected and complex data structures, such as molecules, knowledge graphs or social networks. Graph Neural Networks (GNNs) and general representation learning on graphs have recently experienced a surge in popularity because it addresses the challenge to effectively learn representations over said structures. In this course, we aim to understand the fundamental principles of deep (representation) learning on graphs, the similarities and differences to other concepts in deep learning, as well as the unique challenges from a practical point of view. Finally, we provide an overview of recent applications of graph neural networks.
Introduction to GNN concepts: 1) problem-solving on graphs (node-, edge-, graph-level objectives), structural priors (inductive biases) of graph data, applications for graph learning. 2) Graph Neural Networks: convolutional, attentional, message passing; overview on the zoo of published operators. Relations to Transformers and DeepSets. 3) Expressivity of GNNs. 4) Scalability of Graph Neural Networks: Subsampling, Clustering (Pooling). 5) Augmentations and self-supervised learning on Graphs Application: Drug Discovery, Knowledge graphs, Temporal GNNs, Geometric GNNs, Deep Generative Models for Graphs.
Prerequisites / Notice
263-3210-00 Depp Learning or 263-0008-00 Computational Intelligence Lab; 252-0220-00 Introduction to Machine Learning; Statistics/Probability; Programming in Python; Unix Command Line.