Introduction to Graph Machine Learning Course Syllabus
Full curriculum breakdown — modules, lessons, estimated time, and outcomes.
Overview: This course provides a hands-on introduction to graph machine learning, guiding you from foundational graph concepts to building and applying Graph Neural Networks (GNNs). With a code-first approach, you'll explore key techniques like graph embeddings, knowledge graphs, and real-world applications through interactive labs. The curriculum spans approximately 7.5 hours of content, structured into concise modules that blend theory with practical implementation using PyTorch Geometric. Each module includes coding exercises to reinforce learning, culminating in two end-to-end case studies. Designed for beginners with basic ML and Python knowledge, this course prepares you to tackle real-world graph problems in domains like social networks and bioinformatics.
Module 1: About the Course
Estimated time: 0.5 hours
- Course introduction and learning objectives
- Scope and limitations of graph machine learning
- Tools and libraries used in the course
- Hands-on environment setup with Python and PyTorch Geometric
Module 2: Introduction to Graph Theory
Estimated time: 0.75 hours
- Definitions and core concepts of graphs
- Types of graphs: directed, undirected, weighted
- Data structure representations: adjacency matrix, edge list
- Visualizing graph structures programmatically
Module 3: Graph Embeddings
Estimated time: 1 hour
- Matrix factorization methods for graph embeddings
- Random-walk-based approaches (e.g., DeepWalk)
- Neural network-based embedding techniques
- Generating and analyzing embeddings in code
Module 4: Supervised and Unsupervised Graph ML
Estimated time: 1 hour
- Node classification using graph data
- Link prediction fundamentals and methods
- Graph-level classification and clustering
- Community detection algorithms and evaluation
Module 5: Graph Neural Networks
Estimated time: 0.75 hours
- Introduction to GNN architectures
- Message-passing mechanism in GNNs
- Popular GNN variants: GCN, GAT, GraphSAGE
- Building and training a GNN with PyTorch Geometric
Module 6: Knowledge Graphs
Estimated time: 1 hour
- Constructing knowledge graphs from structured data
- Schema design and modeling challenges
- Real-world use cases in recommendation and search
- Hands-on: building a sample knowledge graph
Module 7: Knowledge Graph Embeddings
Estimated time: 0.75 hours
- Translation-based methods (e.g., TransE)
- Factorization-based embedding approaches
- Neural embedding models for knowledge graphs
- Training and comparing embeddings on a sample graph
Module 8: Case Study: Link Prediction on a Social Network
Estimated time: 0.5 hours
- Framing link prediction in social networks
- Feature engineering on graph structures
- Implementing an end-to-end prediction pipeline
Module 9: Case Study: Node Classification on a Biological Graph
Estimated time: 0.5 hours
- Understanding biological network characteristics
- Challenges in contact-tracing graph analysis
- Applying GNNs for node classification
Module 10: Appendix
Estimated time: 0.25 hours
- Required Python libraries and versions
- Environment verification and troubleshooting
- Documenting setup for reproducibility
Prerequisites
- Familiarity with Python programming
- Basic understanding of machine learning concepts
- Experience with PyTorch or deep learning frameworks (helpful but not required)
What You'll Be Able to Do After
- Create and manipulate graph structures for data analysis
- Generate graph embeddings using matrix factorization, random walks, and neural methods
- Solve tasks like node classification, link prediction, and clustering on graphs
- Build and train Graph Neural Networks using PyTorch Geometric
- Construct and embed knowledge graphs using translation-, factorization-, and neural-based techniques