This page catalogs lectures I have created on various topics. Many of these lectures are from classes I have taught. The links below point to the lecture page on the class website, and include not only the slides on the topic, but also pointers to additional material on the topic, and sometimes a link to a video.

### Lectures on Machine Learning

- Introduction to Machine Learning
- What is supervised learning?
- Learning Decision Trees
- Linear models
- The Perceptron algorithm
- Linear regression
- Introduction to Computational Learning Theory
- Boosting & Ensemble learning
- Support Vector Machines
- Learning as Loss Minimization
- Introduction to Bayesian Learning
- The Naive Bayes Classifier
- Logistic Regression
- Introduction to Neural Networks
- Practical advice for building machine learning applications
- Multiplicative updates and the Winnow algorithm
- Learning with missing labels: The EM algorithm
- Features and Dimensionality Reduction
- Kernels and the Kernel trick

### Structured Prediction

- Introduction to Structured Prediction
- Multiclass Classification: Local and Global Models
- A First Look at Structures
- Modeling Sequence Structures: HMMs, local and global models
- A Survey of General Formulations for Structures
- Training Structured SVMs
- Inference with structures: A survey

### Deep Learning for NLP

- Introduction to Deep Learning for Natural Language Processing
- Neural Networks and Computation Graphs
- Word Embeddings
- Dependency Parsing
- Recurrent Neural Networks
- Contextual Word Embeddings and ELMo
- Language Modeling with RNNs
- Vanishing gradient revisited: Highway/Residual connections
- Attention in NLP
- Semantic Roles and Neural Networks
- Transformer networks
- Machine Translation
- BERT (and other encoder models)
- Natural Language Inference a.k.a Textual Entailment
- Reading Comprehension
- T5 (and encoder-decoder models)
- GPT (and decoder models)
- Decoding algorithms
- Prompting and in-context learning
- Scaling laws
- Instruction tuning
- Reinforcement learning with human feedback
- Societal issues in modern NLP