Machine Learning with Graphs

Machine Learning with Graphs

Aug 15, 2024 · 2 min read

Course Overview

This course explores machine learning on graph data. While Graph Neural Networks (GNNs) are a core focus, we also cover other neural network architectures such as CNNs and Transformers. The course is designed to help students connect different areas of machine learning, understanding both theory and practice.

Learning Approach

  • Emphasis on applications and innovation, not just theory.
  • Students learn to leverage data features for representation learning and adapt model architectures to suit different tasks and heuristics.
  • Covers foundations, practical applications, and extensions of basic principles.

Structure & Requirements

  • No exams.
  • Attendance is expected.
  • Students complete open-ended assignments and a course project.
  • Prerequisites: Python programming. Prior machine learning knowledge is helpful but not required.

Goals

By the end of the course, students will have:

  • A strong understanding of graph-based and general neural network architectures.
  • Hands-on experience in applying and modifying models for different tasks.
  • The ability to reason about data and model design in a flexible, innovative way.

Tentative Schedule

Week Topics
1 Course introduction, graph basics, ML basics
2 Graph convolution, spatial vs spectral GNNs
3 Message passing GNNs
4 GNNs for scientific computing
5 Node-level and edge-level tasks
6 Graph-level tasks, project proposal presentations
7 Graph structure learning
8 Adversarial attacks and defenses
9 Fast and scalable GNNs
10 Implicit graph neural networks
11 Graphs and neural network architectures
12 Theoretical analysis of GNNs
13 Algorithmic reasoning
14 Graph generative models
15 Final project presentations

Schedule may change depending on class progress.