18-461/18-661: Intro to ML for Engineers

Instructors

Prof. Andrea Zanette azanette@andrew.cmu.edu
Prof. Soummya Kar soummyak@andrew.cmu.edu

TAs

Hanshi Sunhanshis@andrew.cmu.edu
Jiin Woojiinw@andrew.cmu.edu
Shashwat Chawlashashwac@andrew.cmu.edu
Anvesha Katariyaraakatari@andrew.cmu.edu
Pharuj Rajborirugprajbori@andrew.cmu.edu
Mehal Agarwalmehala@andrew.cmu.edu
Alex DeWeesemdeweese@andrew.cmu.edu
Xingyu Xuxingyuxu@andrew.cmu.edu
Tanghang Elvis Tataetanghan@andrew.cmu.edu
April Yangyutongya@andrew.cmu.edu
Atabonfack Lorier Bernesbatabonf@andrew.cmu.edu

Lecture

PittsburghMon. and Wed.12:30 PM - 1:50 PM ETBH A36
Silicon ValleyMon. and Wed.9:30 AM - 10:50 AM PTB23 212
RwandaMon. and Wed.6:30 PM - 7:50 PM CATCMU Remote

Recitation

PittsburghFri.11:00 AM - 12:20 PM ETBH A36
Silicon ValleyFri.8:00 AM - 9:20 PM PTB23 118
RwandaFri.5:00PM - 6:20PM CATCMU Remote

Office Hours

Prof. Andrea ZanetteFri.3:00 PM - 4:00 PM ETPorter Hall B08[Zoom]
Prof. Soummya KarMon.3:00 PM - 4:00 PM ETPH B30[Zoom]
Hanshi SunFri.4:30 PM - 5:30 PM ETPorter Hall ECE MS Suites[Zoom]
Jiin WooFri.2:00 PM - 3:00 PM ETCIC 4th floor, Smithfield (4111)[Zoom]
Shashwat ChawlaWed.3:00 PM - 4:00 PM ETNSH 4222[Zoom]
Anvesha KatariyarTue.3:00 PM - 4:00 PM ETTBD[Zoom]
Pharuj RajborirugSat.12:00 PM - 1:00 PM ETTBD[Zoom]
Mehal AgarwalThu.2:00 PM - 3:00 PM ETHH 1306[Zoom]
Alex DeWeeseThu.10:00 AM - 11:00 AM ETTBD[Zoom]
Xingyu XuFri.10:00 AM - 11:00 AM ETTBD[Zoom]
Tanghang Elvis TataThu.3:00 PM - 4:00 PM CATKGL[Zoom]
April YangThu.11:00 AM - 12:00 PM PDTB23 First Floor Hall[Zoom]
Atabonfack Lorier BernesWed.5:00 PM - 6:00 PM CATKGL[Zoom]

See Piazza for the Office Hours Zoom links and locations.

Course Overview

This course provides an introduction to machine learning with a special focus on engineering applications. The course starts with a mathematical background required for machine learning and covers approaches for supervised learning (linear models, kernel methods, decision trees, neural networks) and unsupervised learning (clustering, dimensionality reduction), as well as theoretical foundations of machine learning (learning theory, optimization). Evaluation will consist of mathematical problem sets and programming projects targeting real-world engineering applications.

Prerequisites

This course is intended for graduate students and qualified undergraduate students with a strong mathematical and programming background. Undergraduate level training or coursework in algorithms, linear algebra, calculus, probability, and statistics is suggested. A background in programming will also be necessary for the problem sets; students are expected to be familiar with python or learn it during the course. At CMU, this course is most similar to MLD's 10-601 or 10-701, though this course is meant specifically for students in engineering.

Textbooks

There will be no required textbooks, though we suggest the following to help you to study (all available online): We will provide suggested readings from these books in the schedule below.

Piazza

We will use Piazza for class discussions. Please go to the course Piazza site to join the course forum (note: you must use a cmu.edu email account to join the forum). We strongly encourage students to post on this forum rather than emailing the course staff directly (this will be more efficient for both students and staff). Students should use Piazza to:

The course Academic Integrity Policy must be followed on the message boards at all times. Do not post or request homework solutions! Also, please be polite.

Grading Policy

Grades will be based on the following components:

Gradescope: We will use Gradescope to collect PDF submissions of each problem set. Upon uploading your PDF, Gradescope will ask you to identify which page(s) contains your solution for each problem - this is a great way to double check that you haven't left anything out. The course staff will manually grade your submission, and you'll receive feedback explaining your final marks.

Regrade Requests: If you believe an error was made during grading, you'll be able to submit a regrade request on Gradescope. For each homework, regrade requests will be open for only 1 week after the grades have been published. This is to encourage you to check the feedback you've received early!

Academic Integrity Policy

Group studying and collaborating on problem sets are encouraged, as working together is a great way to understand new material. Students are free to discuss the homework problems with anyone under the following conditions: Students are encouraged to read CMU's Academic Integrity Policy.

Using LaTeX

Students are strongly encouraged to use LaTeX for problem sets. LaTeX makes it simple to typeset mathematical equations and is extremely useful for graduate students to know. Most of the academic papers you read were written with LaTeX, and probably most of the textbooks too. Here is an excellent LaTeX tutorial and here are instructions for installing LaTeX on your machine.

Acknowledgments

This course is based in part on material developed by Fei Sha, Ameet Talwalkar, Matt Gormley, and Emily Fox. We also thank Anit Sahu and Joao Saude for their help with course development.


Schedule (Subject to Change)

DateTopicsReadingHW
8/26 Introduction and Preliminaries [Slides] KM, Ch. 1
8/28 Probability, MLE/MAP, and Linear Algebra [Slides] TM, Estimating Probabilities
KM, Ch. 2 (for a refresh in probability)
Math4ML (review/refresher)
Vectors, Matrices, and Least Squares
Matrix Cookbook
8/30 Recitation: Review of Preliminaries [Slides] HW 1 Release
9/2 Labor Day - No Class
9/4 Linear Regression, Part I [Slides] KM, Ch. 7.1-7.3
Deep Learning Book, Ch. 5*
9/6 Recitation [Slides] [Code]
9/9 Linear Regression, Part II [Slides] KM, Ch. 7.4-7.6
Intro to regression
HW 1 Due
HW 2 Release
9/11 Overfitting, Bias/variance Trade-off, Evaluation [Slides] [Annotated Slides] Deep Learning, Ch. 5.2-5.4
KM, Ch. 6.4
9/13 Recitation [Slides]
9/16 Naive Bayes [Slides] [Annotated Slides] CIML, Ch. 9
KM, Ch. 3.5
9/18 Logistic Regression [Slides] KM, Ch. 8.1-8.4, 8.6
Discriminative vs. Generative
9/20 Recitation [Slides] [Solution]
9/23 Multi-class Classification [Slides] KM, Ch. 8.5 HW 2 Due
HW 3 Release
9/25 SVM, Part I [Slides] ESL, Ch. 12
KM Ch. 14.5
9/27 Recitation [Slides]
9/30 SVM, Part II [Slides] [Duality Supplement] Idiot's Guide to SVM
Duality Supplement
10/2 Nearest Neighbors [Slides] [Annotated Slides] CIML, Ch. 3.1-3.2
10/4 Recitation [Slides]
10/7 Decision Trees [Slides] CIML, Ch. 1.3
KM, Ch. 16.2
ESL, Ch. 9.2
HW 3 Due
HW 4 Release
10/9 Boosting, random forests [Slides] [Annotated Slides] ESL, Ch. 10.1, 10.4-10.6
10/11 Recitation [Slides] [Solution]
10/14-10/18 Fall Break - No Classes
10/21 Neural Networks, Part I [Slides] Learning Deep Architectures for AI
ImageNet
HW 4 Due
HW 5 Release
10/23 Midterm
10/25 Recitation [Slides]
10/28 Neural Networks, Part II [Slides] Neural Networks and Deep Learning, Ch.3
Regularization for Deep Learning
10/30 Neural Networks, Part III [Slides] Neural Networks and Deep Learning, Ch.3
Regularization for Deep Learning
11/1 Recitation [Slides]
11/4 Clustering, Part I [Slides] CIML, Ch. 15.1 HW 5 due
HW 6 Release
11/6 Clustering, Part II [Slides] [Annotated Slides] ESL, Ch. 14.3.1-14.3.9
11/8 Recitation [Slides]
11/11 Dimensionality Reduction [Slides] [Annotated Slides] PCA
Independent Component Analysis
11/13 EM [Slides] [Annotated Slides]
11/15 Recitation
11/18 Online Learning (Bandits) [Slides] [Annotated Slides] HW 6 due
HW 7 Release
11/20 Reinforcement Learning, Part I [Slides] [Annotated Slides]
11/22 Recitation
11/25 Reinforcement Learning, Part II
11/27-11/29 Thanksgiving - No Classes
12/2 Guest Lecture
12/4 Final Review
12/6 Recitation
12/9-12/13 Final Exams Week