University at Buffalo
Teaching
Graduate and cross-listed courses I have led at the University at Buffalo.
Since 2023 I have taught five courses at UB, graduate and cross-listed, to nearly 500 students, and mentored over 20 thesis students. Every course comes with complete lecture notes, open to anyone: the math worked through step by step, with code you can run. The courses build on one another, so if you're new, start with the first.
-
Basics of Artificial Intelligence
A hands-on introduction to modern AI in PyTorch, from tensors and training loops to computer vision, transfer learning, replicating a research paper, and deploying a model as a web app — with full lecture notes for every module.
10 modules · Learn PyTorch for Deep Learning · Graduate
-
Intro to Machine Learning
Probabilistic machine learning from curve fitting and linear models to kernels, graphical models, latent variables, sampling, sequences, and ensembles — with full lecture notes and NumPy code for every chapter of Bishop.
14 modules · Bishop, PRML · Undergraduate & graduate
-
Intro to Pattern Recognition
Statistical pattern classification from Bayes decision theory to nearest neighbors, linear machines, neural networks, trees, and clustering — with full lecture notes and NumPy code for every chapter.
10 modules · Duda, Hart & Stork · Undergraduate & graduate
-
Deep Learning
Neural networks from the ground up — training, CNNs, transformers, GNNs, and generative models — with full lecture notes and code for every chapter of Bishop & Bishop.
20 modules · Bishop & Bishop · Graduate
-
Algorithm Analysis and Design
Asymptotic analysis, divide and conquer, graph algorithms, greedy algorithms, dynamic programming, NP-completeness, and approximation — with full lecture notes and Python code for every chapter we cover.
9 modules · Dasgupta et al. · Undergraduate & graduate
Guest lectures and workshops on deep learning, LLMs, and applied AI are available on request — write to me.