EECE 571F (2022 Winter Term 1): Deep Learning with Structures
Archived offering. Dates and assessment requirements below belong to this offering. View the current EECE 576L course.

Overview
Structures are pervasive in science and engineering. Some structures are conveniently observable, e.g., 3D point clouds, molecules, phylogenetic trees, social networks, whereas some are latent or hard to be measured, e.g., parse trees for languages/images, causal graphs, and latent interactions among actors in multi-agent systems. Advanced deep learning techniques have emerged recently to effectively process data in the above scenarios.
This course will teach cutting-edge deep learning models and methods with structures from probabilistic and geometric perspectives. In particular, for observable structures, we will introduce popular models, e.g., Transformers, Graph Neural Networks, with an emphasis on motivating applications, design principles, practical and or theoretical limitations, and future directions. For latent structures, we will introduce motivating applications, latent variable models (e.g., variational auto-encoders), and inference methods (e.g., amortization and search), and learning methods (e.g., REINFORCE and relaxation).
Course Information
The instructor will present the lectures every week except that students will present their projects in the last two weeks.
Students should ask all course-related questions on Piazza.
We will use Canvas to handle submission and evaluation of all reports and project related files.
| Instructor | Renjie Liao |
|---|---|
| TA | Qi Yan |
| Section 1 | 1:30pm to 3:00pm, Monday, MacLeod 3002 |
| Section 2 | 1:30pm to 3:00pm, Wednesday, Forest Sciences Centre 1221 |
| Piazza | https://piazza.com/ubc.ca/winterterm12022/eece571f |
| Office Hour | 3:00pm to 4:00pm, Tuesday, Fred Kaiser 3065 (Maxwell) |
| rjliao@ece.ubc.ca |
Pre-requisites
- Basic knowledge about machine learning, linear algebra, probability, and calculus.
- Proficiency in a programming language: preferably Python.
- Proficiency in a deep learning libraries: PyTorch, JAX, Tensorflow, etc.
Announcements
- Aug. 29 2022: The course will be in person in this semester by default unless specially announced.
- Sep. 14 2022: The course on Sep. 19 is canceled due to the announced National day of mourning in honour of Queen Elizabeth II.
- Oct. 31 2022: Our invited lecture on “Score based and Denoising Diffusion based Generative Models” is rescheduled to Nov. 23 via zoom.
Grading
Grades will be based on:
- [15%] One paper reading report. Find one paper from the reading list below. Guideline & Policy, due Sep. 30
- [15%] Project proposal. Guideline & Policy, due Oct. 14
- [15%] Project presentations. Guideline & Policy
- [15%] Peer-review report of project presentations. Guideline & Policy, due Dec. 9
- [40%] Project report and code. Guideline & Policy, due Dec. 15
Course Project
Students can work on projects individually, or in groups of up to four (group should be formed as early as possible). Students are strongly encouraged to form groups via, e.g., discussing on Piazza. However, a larger group would be expected to do more than a smaller one or individuals. All students in a group will receive the same grade. Students are allowed to undertake a research project that is related to their thesis or other external projects, but the work done for this course must represent substantial additional work and cannot be submitted for grades in another course.
The grade will depend on the quality of research ideas, how well you present them in the report, how clearly you position your work relative to prior literature, how illuminating and or convincing your experiments are, and well-supported your conclusions are. Full marks will require a novel contribution.
Each group of students will write a short (>=2 pages) research project proposal, which ideally will be structured similarly to a standard paper. You don’t have to do exactly what your proposal claims - the point of the proposal is mainly to have a plan for yourself and to allow me to give you feedback. Students will do a short presentation (roughly 5 minutes for individual, 10 to 15 minutes for a larger group) for their projects towards the end of the course. At the end of the class, every group needs to submit a project report (6~8 pages).
Good Project Reports from This Semester
- Node-element Hypergraph Message Passing for Mesh-based Simulations
- Benchmarking Attention-based Quantum State Tomography
- Heram: Multi-Magnification Graph-Structured Whole Slide Image Representation
- Vision Transformers for Classification in Small-Sized Chest X-Ray Datasets
- DiffuseDRAW: Structured Latent Variables Model with Discrete Diffusion Prior
- Graph-Guided Unsupervised Clustering for Source-Free Domain Adaptation
- EchoGNN with Contrastive Learning
- Deep Learning-Based Calibration for Millimeter-Wave Phased-Array Antennas
Good Project Reports from Last Semester
- Physics Aware Joint Inference for the Cryo-EM Inverse Problem: Normal Modes, Global 3D Pose and CTF Defocus
- V-DMGNN-GAN: Spatial Inpainting for Human Motion Prediction
- Improving Out-Of-Distribution Generalization of Neural Algorithmic Reasoning Tasks
- 3D Ultrasound Segmentation using Transformers
- Graph-enhanced Transformers for Referring Expressions Comprehension
- HiGNN: Hierarchical Left Ventricle Landmark Detection with Graph Neural Networks
- Towards Domain Generalized Segmentation with Transformer
- A Transformer-based Video Analysis Framework for Estimating Ejection Fraction from Echocardiograms
Important Notes
-
All reports (i.e., paper reading report, proposal, peer-review report, and final project report) must be written in NeurIPS conference format and must be submitted as PDF
-
Late work will be automatically subject to a 20% penalty and can be submitted up to 3 days after the deadline
-
UBC values academic integrity. Therefore, all students must understand the meaning and consequences of cheating, plagiarism and other academic offences under the Code of Student Conduct and Discipline.
-
It is the responsibility of each student to understand the policy for each course work, ask questions to the instructor if it is not clear, and carefully acknowledge all sources (papers, code, books, websites, individual communications) using appropriate referencing style when submitting work.
Schedule
This is a tentative schedule, which will likely change as the course goes on.
| # | Dates | Lecture Topic | Lecture Slides | Suggested Readings |
|---|---|---|---|---|
| 1 | Sep. 7 | Introduction to Deep Learning | slides | Chapter 13, 14 of PML book & DL book |
| 2 | Sep. 12 Sep. 14 Sep. 21 |
Geometric Deep Learning: Invariance, Equivariance, and Deep Learning Models for Sets & Sequences | slides | DeepSets & Transformers & PreNorm & VisionTransformers & SwinTransformers & Chapter 15 of PML book |
| 3 | Sep. 26 Sep. 28 |
Geometric Deep Learning: Graph Neural Networks: Message Passing Models | slides | Part II of GRL book & Chapter 23 of PML book & Chapter 4 of GNN book & GNNs & GGNNs & GAT & Graphormer & GPS |
| 4 | Oct. 3 Oct. 5 |
Geometric Deep Learning: Graph Neural Networks: Graph Convolution Models | slides | Part II of GRL book & Chapter 23 of PML book & Chapter 4 of GNN book & GCNs & ChebyNet & LanczosNet |
| 5 | Oct. 12 Oct. 17 |
Geometric Deep Learning: Expressiveness & Generalization of Graph Neural Networks | slides | GIN & PAC-Bayes Bounds |
| 6 | Oct. 19 Oct. 24 |
Geometric Deep Learning: Unsupervised/Self-supervised Graph Representation Learning |
slides | DeepWalk & DeepGraphInfomax & SimCLR & SimCLRv2 |
| 7 | Oct. 26 Oct. 31 |
Probabilistic Deep Learning: Deep Generative Models of Graphs: Auto-Regressive Models | slides | Chapter 11 of GNN book & DGMG & GraphRNN & GRAN |
| 8 | Nov. 2 Nov. 7 |
Probabilistic Deep Learning: Deep Generative Models of Graphs: VAEs and GANs |
slides | VGAE & GraphVAE & JunctionTreeVAEs & MolGANs |
| 9 | Nov. 16 Nov. 21 |
Probabilistic Deep Learning: Discrete Latent Variable Models & Contrastive Divergence & Amortized Inference & REINFORCE & Variance Reduction & Reparameterization & Wake-Sleep Algorithm | slides | RBMs & CD & NVIL & VAE & Wake-Sleep & Oops I Took A Gradient |
| 10 | Nov. 23 | Probabilistic Deep Learning: Score based and Denoising Diffusion based Generative Models | Guest Lecture by Dr. Yang Song | Score-based Models & ScoreSDE & DDPM |
| 11 | Nov. 28 | Probabilistic Deep Learning: Stochastic Gradient Estimation | slides | Straight-through Estimator & Gumble-Softmax & Gumble-TopK & RELAX |
| 12 | Nov. 30 | Probabilistic Deep Learning: Learning Latent Graph Structures | slides, | NRI & Learning Discrete Structures for GNNs |
| 13 | Dec. 5 Dec. 7 |
Project Presentation |
FAQ
Can I audit or sit in?
I am very open to auditing guests if you are a member of the UBC community (registered student, staff, and/or faculty). I would appreciate that you first email me. If the in-person class is too full and running out of space, I would ask that you please allow registered students to attend.
Is there a textbook for this course?
While there is no required textbook, I recommend the following closely relevant ones for further reading:
- GNN book: “Graph Neural Networks: Foundations, Frontiers, and Applications” by Lingfei Wu, et al. Free online version
- GRL book: “Graph representation learning” by William Hamilton. Free online version
- PML book: “Probabilistic Machine Learning: An Introduction” by Kevin Murphy. Free online version
- DL book: “Deep Learning” by Ian Goodfellow, Yoshua Bengio, Aaron Courville. Free online version
I also recommend students who are self-motivated to take a look at similar courses taught at other universities:
- African Master’s in Machine Intelligence (AMMI 2021): Geometric Deep Learning
- Stanford CS224W, Winter 2021: Machine Learning with Graphs
- McGill Comp 766, Winter 2020: Graph Representation Learning
- UofT STA 4273 / CSC 2547, Spring 2018: Learning Discrete Latent Structure
Paper List
Supervised Deep Learning with Observable Structures
- Deep sets
- Pointnet: Deep learning on point sets for 3d classification and segmentation
- Attention is all you need
- An image is worth 16x16 words: Transformers for image recognition at scale.
- Learning transferable visual models from natural language supervision
- Sequence to sequence learning with neural networks
- MLP-Mixer: An all-MLP Architecture for Vision
- Semi-Supervised Classification with Graph Convolutional Networks
- Gated Graph Sequence Neural Networks
- How Powerful are Graph Neural Networks?
- Spectral Networks and Locally Connected Networks on Graphs
- NerveNet: Learning Structured Policy with Graph Neural Networks
- The graph neural network model (the original Graph Neural Networks paper)
- Neural Message Passing for Quantum Chemistry
- Graph Attention Networks
- LanczosNet: Multi-Scale Deep Graph Convolutional Networks
- Graph Signal Processing: Overview, Challenges, and Applications
- Convolutional Neural Networks on Graphs with Fast Localized Spectral Filtering
- 3D Graph Neural Networks for RGBD Semantic Segmentation
- Few-Shot Learning with Graph Neural Networks
- Convolutional Networks on Graphs for Learning Molecular Fingerprints
- node2vec: Scalable Feature Learning for Networks
- Inductive Representation Learning on Large Graphs
- Learning Lane Graph Representations for Motion Forecasting
- Representation Learning on Graphs: Methods and Applications
- Modeling Relational Data with Graph Convolutional Networks
- Hierarchical Graph Representation Learning with Differentiable Pooling
- Inference in Probabilistic Graphical Models by Graph Neural Networks
- Do Transformers Really Perform Bad for Graph Representation?
- Weisfeiler and Leman Go Neural: Higher-order Graph Neural Networks
- SpAGNN: Spatially-Aware Graph Neural Networks for Relational Behavior Forecasting from Sensor Data
- Diffusion Convolutional Recurrent Neural Network: Data-Driven Traffic Forecasting
- Geometric Deep Learning: Going beyond Euclidean data
- Geometric Deep Learning on Graphs and Manifolds Using Mixture Model CNNs
- Dynamic Graph CNN for Learning on Point Clouds
- Weisfeiler and Lehman Go Cellular: CW Networks
- Provably Powerful Graph Networks
- Invariant and Equivariant Graph Networks
- On Learning Sets of Symmetric Elements
- Relational inductive biases, deep learning, and graph networks
- Graph Matching Networks for Learning the Similarity of Graph Structured Objects
- Deep Parametric Continuous Convolutional Neural Networks
- Neural Execution of Graph Algorithms
- Neural Execution Engines: Learning to Execute Subroutines
- Learning to Represent Programs with Graphs
- Learning to Execute Programs with Instruction Pointer Attention Graph Neural Networks
- Pointer Graph Networks
- Learning to Solve NP-Complete Problems - A Graph Neural Network for Decision TSP
- Premise Selection for Theorem Proving by Deep Graph Embedding
- Graph Representations for Higher-Order Logic and Theorem Proving
- What Can Neural Networks Reason About?
- Discriminative Embeddings of Latent Variable Models for Structured Data
- Learning Combinatorial Optimization Algorithms over Graphs
- On Layer Normalization in the Transformer Architecture
- Swin Transformer: Hierarchical Vision Transformer using Shifted Windows
- Recipe for a General, Powerful, Scalable Graph Transformer
Unsupervised Deep Learning with Observable Structures
- Variational Graph Auto-Encoders
- Deep Graph Infomax
- GraphRNN: Generating Realistic Graphs with Deep Auto-regressive Models
- Efficient Graph Generation with Graph Recurrent Attention Networks
- MolGAN: An implicit generative model for small molecular graphs
- GraphVAE: Towards Generation of Small Graphs Using Variational Autoencoders
- Learning Deep Generative Models of Graphs
- Permutation Invariant Graph Generation via Score-Based Generative Modeling
- Graph Normalizing Flows
- Constrained Graph Variational Autoencoders for Molecule Design
- Generative Code Modeling with Graphs
- Structured Denoising Diffusion Models in Discrete State-Spaces
- Structured Generative Models of Natural Source Code
- A Model to Search for Synthesizable Molecules
- Grammar Variational Autoencoder
- Scalable Deep Generative Modeling for Sparse Graphs
- Energy-Based Processes for Exchangeable Data
- Learning Discrete Energy-based Models via Auxiliary-variable Local Exploration
- Hierarchical Generation of Molecular Graphs using Structural Motifs
- Junction Tree Variational Autoencoder for Molecular Graph Generation
Deep Learning with Latent Structures
- Simple statistical gradient-following algorithms for connectionist reinforcement learning (the original REINFORCE paper)
- Neural Discrete Representation Learning
- Categorical Reparameterization with Gumbel-Softmax
- Neural Relational Inference for Interacting Systems
- Contrastive Learning of Structured World Models
- The Concrete Distribution: A Continuous Relaxation of Discrete Random Variables
- Learning Graph Structure With A Finite-State Automaton Layer
- Neural Turing Machines
- Oops I Took A Gradient: Scalable Sampling for Discrete Distributions
- Direct Policy Gradients: Direct Optimization of Policies in Discrete Action Spaces
- Gradient Estimation with Stochastic Softmax Tricks
- Differentiation of Blackbox Combinatorial Solvers
- REBAR: Low-variance, unbiased gradient estimates for discrete latent variable models
- Monte Carlo Gradient Estimation in Machine Learning
- Backpropagation through the Void: Optimizing control variates for black-box gradient estimation
- Thinking Fast and Slow with Deep Learning and Tree Search
- Mastering the Game of Go without Human Knowledge
- Memory-Augmented Monte Carlo Tree Search
- M-Walk: Learning to Walk over Graphs using Monte Carlo Tree Search
- DSDNet: Deep Structured Self-driving Network
- Learning to Search with MCTSnets
- Direct Loss Minimization for Structured Prediction
- Stochastic Beams and Where to Find Them: The Gumbel-Top-k Trick for Sampling Sequences Without Replacement
- Direct Optimization through argmax for Discrete Variational Auto-Encoder
- Learning Compositional Neural Programs with Recursive Tree Search and Planning
- Reinforcement Learning Neural Turing Machines - Revised
- The Generalized Reparameterization Gradient
- Gradient Estimation Using Stochastic Computation Graphs
- Learning to Search Better than Your Teacher
- Learning to Search in Branch-and-Bound Algorithms
- Model-Based Planning with Discrete and Continuous Actions
- Learning Transferable Graph Exploration
- Retro*: Learning Retrosynthetic Planning with Neural Guided A* Search