CS446: Machine Learning (Spring 2018)

Course Information

The goal of Machine Learning is to build computer systems that can adapt and learn from data. In this course we will cover three main areas, (1) discriminative models, (2) generative models, and (3) reinforcement learning models. In particular we will cover the following: linear regression, logistic regression, support vector machines, deep nets, structured methods, learning theory, kMeans, Gaussian mixtures, expectation maximization, Markov decision processes, Q-learning.

Pre-requisites: Probability, linear algebra, and proficiency in Python.
Recommended Text: (1) Machine Learning: A Probabilistic Perspective by Kevin Murphy, (2) Deep Learning by Ian Goodfellow and Yoshua Bengio and Aaron Courville, (3) Pattern Recognition and Machine Learning by Christopher Bishop, (4) Graphical Models by Daphne Koller and Nir Friedman.
Grading:

For 3 credit students: ```max(0.5*\text{Final} + 0.5*\text{Homework}, 0.25*\text{Midterm} + 0.25*\text{Final} + 0.5*\text{Homework})```

For 4 credit students: ```0.25*\text{Midterm} + 0.25*\text{Final} + 0.5*\text{Homework}```

The lowest homework grade will be dropped; We do not accept late homework.
Communication: To share information, please use Piazza for all communications.

Note: This syllabus is subject to change.



Instructors & Teaching Assistants

Alexander Schwing

Instructor
Website: [link]

Matus Telgarsky

Instructor
Website: [link]

Raymond Yeh

Teaching Assistant
Website: [link]

Colin Graber

Teaching Assistant
Website: [link]

Safa Messaoud

Teaching Assistant
Website: [link]

Yuan Ting Hu

Teaching Assistant
Website: [link]

Ishan Deshpande

Teaching Assistant
Website: [link]

Jyoti Aneja

Teaching Assistant
Website: [link]

Youjie Li

Teaching Assistant
Website: [link]

Yucheng Chen

Teaching Assistant
Website: [link]


Class Time & Location

Time: Tuesday, Thursday 06:00PM-07:15PM
Location: 1002 ECEB (map)

Course Discussions

Piazza for discussions: [link]
Compass for grades: [link]

Homework

Homework: [link]
Gradescope: [link]



Lectures

EventDateDescriptionMaterials
Lecture 1 Jan. 16 Intro to Machine Learning [Link]
Assignments Assigned Jan. 16 All Homework Assignments Released [Link]
Lecture 2 Jan. 18 Linear Regression [Link]
Assignment Due Jan. 23 Assignment 1 Written Due (11:59AM Central Time) [Link]
Lecture 3 Jan. 23 Logistic Regression [Link]
Assignment Due Jan. 25 Assignment 1 Programming Due (11:59AM Central Time) [Link]
Lecture 4 Jan. 25 Optimization Primal [Link]
Assignment Due Jan. 30 Assignment 2 Written Due (11:59AM Central Time) [Link]
Lecture 5 Jan. 30 Optimization Dual [Link]
Assignment Due Feb. 1 Assignment 2 Programming Due (11:59AM Central Time) [Link]
Lecture 6 Feb. 1 Support Vector Machine [Link]
Assignment Due Feb. 6 Assignment 3 Written Due (11:59AM Central Time) [Link]
Lecture 7 Feb. 6 Multiclass Classification and Kernel Methods [Link]
Assignment Due Feb. 8 Assignment 3 Programming Due (11:59AM Central Time) [Link]
Lecture 8 Feb. 8 Deep Nets 1 (Backpropagation) [Link]
Assignment Due Feb. 13 Assignment 4 Written Due (11:59AM Central Time) [Link]
Lecture 9 Feb. 13 Deep Nets 2 (Activation Functions and Layers) [Link]
Assignment Due Feb. 15 Assignment 4 Programming Due (11:59AM Central Time) [Link]
Lecture 10 Feb. 15 Ensemble Methods (Boosting/Random Forest/Deep Nets) [Link]
Assignment Due Feb. 20 Assignment 5 Written Due (11:59AM Central Time) [Link]
Lecture 11 Feb. 20 Structured Prediction (exhaustive search, dynamic programming) [Link]
Assignment Due Feb. 22 Assignment 5 Programming Due (11:59AM Central Time) [Link]
Lecture 12 Feb. 22 Structured Prediction (ILP, LP relaxation, message passing, graph cut) [Link]
Assignment Due Feb. 27 Assignment 6 Written Due (11:59AM Central Time) [Link]
Lecture 13 Feb. 27 Conditional Random Fields, Structured SVM, Deep Structured Methods) [Link]
Assignment Due Mar. 1 Assignment 6 Programming Due (11:59AM Central Time) [Link]
Lecture 14 Mar. 1 Learning Theory [Link]
Assignment Due Mar. 6 Assignment 7 Written Due (11:59AM Central Time) [Link]
Lecture 15 Mar. 6 Learning Theory [Link]
Assignment Due Mar. 8 Assignment 7 Programming Due (11:59AM Central Time) [Link]
Review Mar. 8 Midterm Review [Link]
Exam Mar. 13 Midterm [Link]
Lecture 16 Mar. 15 k-Means, PCA, SVD [Link]
No Lecture Mar. 20 Spring Break [Link]
No Lecture Mar. 22 Spring Break [Link]
NO Assignment Due Mar. 27 Assignment 8 Written Due (11:59AM Central Time) [Link]
Lecture 17 Mar. 27 k-Means [Link]
NO Assignment Due Mar. 29 Assignment 8 Programming Due (11:59AM Central Time) [Link]
Lecture 18 Mar. 29 Gaussian Mixture Models [Link]
Assignment Due Apr. 3 Assignment 8 Written Due (11:59AM Central Time) [Link]
Lecture 19 Apr. 3 Expectation-Maximization (E-M) [Link]
Assignment Due Apr. 5 Assignment 8 Programming Due (11:59AM Central Time) [Link]
Lecture 20 Apr. 5 Hidden Markov Models; Intro to GANs [Link]
Assignment Due Apr. 10 Assignment 9 Written Due (11:59AM Central Time) [Link]
Lecture 21 Apr. 10 Generative Adversarial Networks [Link]
Assignment Due Apr. 12 Assignment 9 Programming Due (11:59AM Central Time) [Link]
Lecture 22 Apr. 12 Variational Auto-Encoders [Link]
Assignment Due Apr. 17 Assignment 10 Written Due (11:59AM Central Time) [Link]
Lecture 23 Apr. 17 Autoregressive Methods [Link]
Assignment Due Apr. 19 Assignment 10 Programming Due (11:59AM Central Time) [Link]
Lecture 24 Apr. 19 Markov Decision Process [Link]
Assignment Due Apr. 24 Assignment 11 Written Due (11:59AM Central Time) [Link]
Lecture 25 Apr. 24 Q-Learning [Link]
Assignment Due Apr. 26 Assignment 11 Programming Due (11:59AM Central Time) [Link]
Lecture 26 Apr. 26 Policy Gradient, Actor-Critic [Link]
Assignment Due May 1 Assignment 12 Written Due (11:59AM Central Time) [Link]
Review May 1 Final Review [Link]
Assignment Due May 3 Assignment 12 Programming Due (11:59AM Central Time) [Link]
Exam May 11 Final Exam (7:00PM) [Link]