Schedule
Spring 2025
The schedule below is a guide to what we will be covering throughout the semester and is subject to change to meet the learning goals of the class. Check this website regularly for the latest schedule and for course materials that will be posted here through links on the syllabus.
Key to books used below
- ISL = An Introduction to Statistical Learning with Python, by James, Witten, Hastie, and Tibshirani
- UDL = Understanding Deep learning by Simon Prince
- DM = Introduction to Data Mining, by Tan, Steinbach, Karpatne, and Kumar
- PRML = Pattern Recognition and Machine Learning, by Bishop
- DL = Deep Learning, by Goodfellow, Bengio, and Courville
- RL = Reinforcement Learning: An Introduction: An Introduction, by Sutton and Barto
Event Type | Date | Description | Readings | Course Materials |
---|---|---|---|---|
Lecture 1 | Thursday Jan 11 |
What is machine learning? Course overview and an orientation to the major branches of machine learning: supervised, unsupervised, and reinforcement learning |
None |
[slides] |
Monday Jan 15 |
Martin Luther King Jr. Day | |||
Module 1: Supervised Learning | ||||
Lecture 2 | Tuesday Jan 16 |
An end-to-end machine learning example An introduction to formulating a supervised machine learning problem. Stating the problem, creating the model, evaluating performance, and operationalizing the solution. |
ISL Ch. 1 + 2.1 Watch this lecture |
[slides] [sample code] |
Lecture 3 | Thursday Jan 18 |
How flexible should my algorithms be: the bias-variance tradeoff K-nearest neighbors classification and the bias-variance tradeoff |
ISL 2.2 | [slides] |
Deliverable | Monday Jan 22 |
Assignment #1 Due (at 9pm) Probability, Linear Algebra, & Computational Programming |
[assignment] [sample Q12] [submit] |
|
Lecture 4 | Tuesday Jan 23 |
Linear Models I Simple linear regression, multiple linear regression, measuring error, model fitting and least squares, comparing linear regression and classification |
ISL Intro of 3, 3.1, and 3.2 | [slides] |
Lecture 5 | Thursday Jan 25 |
Linear Models II Nonlinear transformations of predictors; linear models for classification including the perceptron and logistic regression; cost/loss functions for classification (cross entropy loss); introduction to gradient descent. |
ISL 3.3 and 3.5 | [slides] |
Lecture 6 | Tuesday Jan 30 |
Performance evaluation and model comparison Choosing the right model: accuracy vs speed vs interpretability; metrics for supervised learning performance evaluation: types of errors, receiver operating characteristics curves, and confusion matrices |
ISL 4.1, 4.2, and 4.3 | [slides] |
Lecture 7 | Thursday Feb 1 |
Resampling methods for performance evaluation: model validation and testing strategies How to use model performance metrics to measure metrics of generalization performance; resampling techniques: training, testing, and validation datasets and cross validation; common pitfalls around biased sampling and data snooping/leakage |
ISL 5.1 and 5.2 | [slides] |
Deliverable | Monday Feb 5 |
Assignment #2 Due (at 9pm) Supervised Machine Learning Fundamentals |
[assignment] [submit] |
|
Lecture 8 | Tuesday Feb 6 |
Decision theory A risk-based framework for determining to operate supervised learning algorithms in practice; choosing ROC operating points through risk-minimization and how application-specific costs associated with different types of errors can be used to determine optimal operating points for classifiers |
Link to reading | [slides] |
Lecture 9 | Thursday Feb 8 |
Reducing overfit Feature selection; Occam’s razor; Subset selection; L1 (ridge), L2 (LASSO), and elastic net regularization; early stopping. |
ISL 6.1 and 6.2 | [slides] |
Lecture 10 | Tuesday Feb 13 |
Generative models for classification Generative vs discriminative models; linear discriminant analysis, quadratic discriminant analysis, and naïve Bayes |
ISL 4.4 and 4.5 | [slides] |
Lecture 11 | Thursday Feb 15 |
Tree-based models and ensembles From decision trees to random forests: bagging, bootstrapping, and boosting |
ISL 8.1 and 8.2 | [slides] |
Deliverable | Monday Feb 19 |
Assignment #3 Due (at 9pm) Supervised learning model training and evaluation |
[assignment] [submit] |
|
Lecture 12 | Tuesday Feb 20 |
Kernel Methods Introducing Kernel machines via the kernel perceptron, maximum margin classifiers, and support vector machines |
ISL Ch 9: 9.1-9.4 | [slides] |
Lecture 13 | Thursday Feb 22 |
Neural networks I Introduction to neural networks and representation learning; forward propagation, network architecture, and how to adapt to regression or classification problems |
UDL Ch 3: 3.1, 3.2; PRML Ch 5: 5.1 | [slides] |
Lecture 14 | Tuesday Feb 27 |
Neural networks II Fitting a neural network to training data through gradient descent and backpropagation; how backpropagation is used to compute gradients in neural networks; hyperparameters and architecture choices in neural networks and practices for training neural networks warningfully |
UDL Ch 6: 6.1-6.2.2; PRML Ch 5: 5.3.1, and Calculus on Computational Graphs | [slides] |
Lecture 15 | Thursday Feb 29 |
Introduction to Deep learning Common architectures of deep learning models, in particular convolutional neural networks for computer vision and the tools used to implement them |
DL Ch 11: Practical Methodology | [slides] |
Module 2: Unsupervised Learning | ||||
Lecture 16 | Tuesday Mar 5 |
Dimensionality reduction The Curse of Dimensionality and intro to principal components analysis (PCA) |
ISL 6.3, 6.4, 12.1, and 12.2 | [slides] |
Deliverable | Wednesday Mar 6 |
Assignment #4 Due (at 9pm) Neural Networks |
[assignment] [submit] [NN Math Guide] |
|
Lecture 17 | Thursday Mar 7 |
Principal components analysis (PCA) Explaining how PCA works and how we calculate the principal components. |
ISL 12.4 | [slides] |
Deliverable | Friday Mar 8 |
Project Proposal Due (at 9pm) |
[project] [submit] |
|
Mar 9-16 | Spring Break Week | |||
Lecture 18 | Tuesday Mar 19 |
Clustering I From K-means to Gaussian mixture model clustering and Expectation Maximization |
DM Ch 7 (link): Intro, 7.1 and 7.2 | [slides] |
Lecture 19 | Thursday Mar 21 |
Clustering II Hierarchical clustering, DBSCAN, and spectral clustering |
DM Ch 7 (link): 7.3 and 7.4 | [slides] |
Module 3: Reinforcement Learning | ||||
Lecture 20 | Tuesday Mar 26 |
Reinforcement Learning I Formulating the reinforcement learning problem |
RL Ch 1: 1.1-1.6; Ch 2: 2.1-2.5 | [slides] |
Lecture 21 | Thursday Mar 28 |
Reinforcement Learning II Policy and value functions, rewards, and introduction to Markov processes |
RL Ch 3 | [slides] |
Deliverable | Sunday Mar 31 |
Assignment #5 Due (at 9pm) Kaggle Competition and Unsupervised Learning Kaggle Competition Ends 9pm on Saturday Mar 30 |
[assignment] [submit] |
|
Lecture 22 | Tuesday Apr 2 |
Reinforcement Learning III From Markov Chains to Markov Decision Processes (MDPs) |
RL Ch 4 | [slides] |
Deliverable | Wednesday Apr 3 |
Draft Final Project Report Due (at 9pm) |
[project] [submit] |
|
Lecture 23 | Thursday Apr 4 |
Reinforcement Learning IV Finding optimal policies through policy iteration, value iteration, and Monte Carlo methods |
RL Ch 5: 5.1-5.3 | [slides] |
Module 4: Machine Learning Trends, Practical Considerations, and Advanced Topics | ||||
Lecture 24 | Tuesday Apr 11 |
Advanced topics and applications I A survey of advanced topics including semi- and self-supervised learning |
None | [slides] |
Lecture 25 | Thursday Apr 9 |
Advanced topics and applications II Discussion on where the field is heading and how to stay up-to-date |
None | [slides] |
Deliverable | Tuesday Apr 16 |
Final project showcase (last class meeting of the semester) |
[project] | |
Deliverable | Sunday Apr 21 |
Final Project Report Due (at 9pm) |
[project] [submit] |
|
Deliverable | Monday Apr 22 |
Final Project Peer Evaluation Due (at 9pm) |
[project] [submit via TEAMMATES (see email)] |
|
Deliverable | Monday Apr 22 |
Final Project Repository Due (at 9pm) |
[project] [submit] |
|
Deliverable | Wednesday Apr 24 |
(Optional) Assignment #6 Due (at 9pm) Reinforcement learning |
[assignment] [submit] |