The course is taught in a sequence of units. Each unit takes between one and two weeks so that the entire class can be fit into a single semester. Most units currently have four components:
- Lecture Notes: These are slides accompanying the class lecture. They include code snippets from the demos.
- Demo: These are python-based Jupyter notebooks for demonstrations given during the lectures. Some demos have a component that is done in class. The demos do not generally cover all topics, since some concepts are left for the students to figure out for themselves in the labs.
- Lab: Following the lecture, the students do a python-based exercise at home
that builds on the demo.
The labs in the repository are given as skeletons with
TODO
markers that the students fill in. - Problems: These are more analytic problems, also done at home.
The problem and lab solutions are provided to students enrolled in the class. If you are an instructor and wish copies of the solutions for yourself, please contact Sundeep Rangan at [email protected].
This site is undergoing re-numbering of units, so many links may connect to documents that don't match the number of the unit. We will fix these soon!
- Setting up python, jupyter and github
- Introduction
- Course Admin [pdf] [Powerpoint]
- Unit 1: What is machine learning?
- Lecture: Introduction to Machine Learning [pdf] [Powerpoint]
- Demo: Introduction to numpy vectors
- Unit 2: Simple linear regression
- Lecture: Simple linear regression [pdf] [Powerpoint]
- Demo: Understanding automobile mpg
- Lab: Boston housing data
- Problems [pdf] [Latex]
- Unit 3: Multiple linear regression
- Lecture: Multiple linear regression [pdf] [Powerpoint]
- Demo 1: Predicting glucose levels
- Demo 2: Python broadcasting
- Lab: Calibrating robot dynamics
- Problems [pdf] [Latex]
- Unit 4: Model selection
- Lecture: Model selection [pdf] [Powerpoint]
- Demo: Polynomial order selection with cross-validation
- Lab: Neural decoding motor cortex signals
- Problems [pdf] [Latex]
- Unit 5: Regularization and LASSO
- Lecture: LASSO Regularization [pdf] [Powerpoint]
- Demo: Finding predictors of prostate cancer
- Lab: EEG source localization
- Problems [pdf] [Latex]
- Unit 6: Logistic regression
- Lecture: Linear classification and logistic regression [pdf] [Powerpoint]
- Demo: Breast cancer diagnosis via logistic regression
- Lab: Genetic analysis of Down's syndrome in mice
- Problems [pdf] [Latex]
- Unit 7: Nonlinear optimization
- Lecture: Nonlinear optimization and gradient descent [pdf] [Powerpoint]
- Demo 1: Computing gradients
- Demo 2: Simple gradient descent optimization
- Lab: Nonlinear least squares material modeling
- Problems [pdf] [Latex]
- Unit 8: Support vector machines
- Lecture: SVM [pdf] [Powerpoint]
- Demo: MNIST digit classification
- Lab: Extended MNIST with letters
- Problems [pdf] [Latex]
- Unit 9: Neural networks with Keras and Tensorflow
- Lecture: Neural networks [pdf] [Powerpoint]
- Supplementary notes with solved problems [pdf] [Latex]
- Demo 1: First neural network in Keras
- Demo 2: MNIST neural network classification
- Lab: Music instrument classification
- In-class Exercise
- Problems: [pdf] [Latex]
- Unit 10: Convolutional and deep networks
- Lecture: Convolutional and deep networks [pdf] [Powerpoint]
- Setting up a GPU instance (Recommended)
- Demo 1: 2D convolutions and convolutional layers in keras
- Demo 2: Creating an image set using the Flickr API
- Demo 3: Exploring the deep VGG16 network
- Demo 4: Building an image classifier using CIFAR10 dataset
- Demo 5: Building an autoencoder for image denoising using CIFAR10 dataset
- Lab: Transfer learning with a pre-trained network (GPU recommended)
- Problems [pdf] [Latex]
- Unit 11: PCA
- Lecture: PCA [pdf], Modifed Note [pdf] [Powerpoint]
- Demo: PCA eigen-faces-SVM
- Lab: PCA with hyper-parameter optimization
- Problems [pdf] [Latex]
- Unit 12: Clustering and EM
- Lecture: Clustering and EM [pdf] [Powerpoint]
- Demo 1: Document clustering via k-means and latent semantic analysis
- Demo 2: Color quantization via k-means and EM-GMM
- Homework [pdf] [Latex]
- Unit 13: Decision Trees and Random Forest
- Lecture: Decision tree and random foreast [pdf] [Powerpoint]
- Demo: Prediction of temperature using decision tree and random forest
- Homework [pdf] [Latex]