Machine Learning with Graphs

APM 5DS30 TP · Institut Polytechnique de Paris

Course hub for Machine Learning with Graphs, including web lecture notes, slides, references, and exercises.

This graduate course develops the foundations of graph machine learning. It begins with graph representations and random-walk embeddings, then moves to graph neural networks, scaling, spatiotemporal learning, recommender systems, and graph generation.

Level

MSc

Master Data Science and Master Data & AI.

Prerequisites

Linear algebra + deep learning

Comfort with vectors, matrices, probability, optimization, and basic neural networks. Two preliminary notes cover what the lectures assume.

Format

Six lectures

Conceptual development, mathematical derivations, examples, and guided exercises.

Learning objectives

By the end of the course, students should be able to:

  • explain the fundamental ideas behind graph representation learning and graph neural networks;
  • select graph representations and learning tasks appropriate to an application;
  • identify scaling, generalization, and modeling challenges in graph learning;
  • use graph models for semi-supervised learning, molecular-property prediction, spatiotemporal analysis, recommendation, and graph generation;
  • evaluate assumptions, failure modes, and empirical evidence in graph-ML research.

Before you start

The lectures assume a working knowledge of linear algebra, probability, and neural networks, and they move quickly through it. These two notes cover exactly what is used and no more — every section ends by naming the lecture that needs it. Read them in order if you want the background; skim the diagnostic at the top of each if you only want to find your gaps.

  1. P1

    Mathematical preliminaries

    Vectors and matrices; structured and sparse matrices; eigenvalues and what matrix powers do; matrix calculus.

  2. P2

    Machine-learning preliminaries

    Probability and estimators; perceptron and MLP; backpropagation and SGD; convex optimization; reading an experiment.

Course sequence

The course comprises six lectures. Web notes and slides appear below as each lecture is given.

  1. 01

    Introduction to machine learning on graphs

    Graphs as a modeling language; graph representations and task levels; handcrafted structural features; node embeddings; DeepWalk; node2vec.

  2. 02

    Graph neural networks

    Convolutions as polynomials in a shift operator; graph signals and diffusion; graph convolutional filters; GCN; message passing; GAT; homophily, over-smoothing, and over-squashing; PyTorch Geometric.

  3. 03

    Scaling up graph neural networks

    Why mini-batching fails on graphs; computational graphs; GraphSAGE neighbor sampling; Cluster-GCN; SGC and LightGCN.

  4. 04

    Spatiotemporal analysis with graphs

    Time-varying graph signals; the graph Fourier transform; spectral GNNs and ChebConv; reconstruction by optimization and by autoencoder; auto-regressive forecasting; GraphCast.

  5. 05

    Recommender systems

    Bipartite user-item graphs; recommendation as link prediction; Recall@k; the binary and BPR losses; collaborative filtering; NGCF; LightGCN.

  6. 06

    Graph generation

    Properties of real-world graphs; Erdos-Renyi random graphs; deep generative models; GraphRNN; iterative local expansion by coarsening.

Core references

  • William L. Hamilton, Graph Representation Learning, 2020.
  • Jure Leskovec, Anand Rajaraman, and Jeffrey D. Ullman, Mining of Massive Datasets, 3rd ed., 2020.
  • Stanford CS224W, Machine Learning with Graphs.
  • University of Pennsylvania, Graph Neural Networks.

Academic integrity

You are responsible for every argument, result, citation, and line of code that you submit. Generative systems may support learning only when their use complies with the course policy and you independently verify and understand the result. Fabricated citations, unverified claims, plagiarism, and submission of work you do not understand are academic-integrity violations.

Back to top