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

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

Schedule may change depending on class progress.