Machine Learning (EECS 349)

Spring 2016
Electrical Engineering and Computer Science Department
Northwestern University

Class Meets: 12:00-12:50PM MWF, Ryan Auditorium

Instructor: Doug Downey
Office Hours: 3:00-4:00PM Monday EXCEPT April 4 when instead 5PM-6PM. Ford 3-345
Email: ddowney <at> eecs <dot> northwestern <dot> edu

Teaching Assistants:
 Mohammed Alam ("Rony")
 Chen Liang
 Nishant Subramani
 Shengxin Zha
 Jacob Samson
 Hosung Kwon
Office Hours: Wednesday 11-12AM, Ford 3-210   Monday 11-12AM, Tech D130
Peer Mentor group office hours: Wednesday 2:00-3:20, Ford 3-340

Contacting the TAs: Please use the following e-mail address to reach all TAs at once: eecs349northwestern <at> gmail <dot> com

Completed Course Projects


Four homework assignments make up 45 points of the grade, a course project makes up 50 points, and in-class quizzes comprise 8 points for a total of 103 points. Grades are assigned using the standard scale (given in the "introduction" lecture notes), so 93-103 points is an A, 90-93 points is an A-, etc.


Homework will be submitted via Canvas. Details on the specific files to include are given in each homework assignment.

Late peer review assignments are penalized 33% per day. All other late assignments are penalized by 10% a day, and will NOT BE ACCEPTED more than one week after the original deadline.
Problem Set 1Due 11:59PM Tuesday, April 1210 pts
Problem Set 2Due 11:59PM Monday, May 915 pts
Problem Set 3Due 11:59PM Tuesday. May 3110 pts
Problem Set 4Due 11:59PM Thursday, June 210 pts

Course Projects

Course projects will be performed by groups of students; any number of students can work together, but larger groups will be expected to complete more substantial projects. Your assignment is to formulate an interesting task for which machine learning can be used, gather training and test data for the task, and then evaluate one or more machine learning algorithms on the data. The final output will include a report Web page. The Web pages for the completed course projects from 2008, 2010, 2014, 2015 and other years are available for perusal.

Proposal (1 pg)Due 11:59PM Thursday, April 145 pts
Proposals Peer ReviewDue 11:59PM Wednesday, April 205 pts
Status Report (1-2 pg)Due 11:59PM Monday, May 165 pts
Status Peer ReviewDue 11:59PM Monday, May 235 pts
Project Web pageDue 11:59PM Wednesday, June 830 pts
Web page Peer ReviewDue 11:59PM Thursday, June 95 pts


Week of March 28 Alpaydin Ch. 1, 2 (skip 2.2, 2.3), 9
Optional: When to Hold Out for a Lower Airfare
Optional: Thinking Big about the Industrial Internet of Things
Week of April 4 Alpaydin 8, 19.5, 19.6
Week of April 11 Alpaydin 5.4, 10.6
Brief LSH tutorial
Finding Similar Items
Week of April 18 Alpaydin Ch. 11
Week of April 25 Optional AlphaGo paper
Week of May 2 Alpaydin Ch. 3, 16
Week of May 9 Alpaydin Ch. 7
Week of May 16 None
Week of May 23 Alpaydin Ch. 17, 19
Week of May 30 Recommended: SVM Tutorial
Alpaydin Ch. 13

Lectures and Schedule (subject to change)

Week of March 28 T: Introduction
W-F: Decision Trees
Week of April 4 M: Decision Trees (cont.)
W: Project Guidelines and Suggestions
F: Instance-based Learning
Week of April 11 M: Instance-based Learning (cont.), Distance Measures
W: Locality-sensitive hashing and MinHash 1   2
F: Greedy Local Search, Optimization
Week of April 18 M: Genetic Algorithms, See: NetLogo
W-F: Neural Networks
Week of April 25 M: RNNs and Tensorflow (Chen Liang guest lecture)
W: Neural Networks (cont.) See: TextJoiner, Word2Vec Demo
F: Deep Learning
Week of May 2 M: Basics of Probability for Machine Learning
W: Statistical Estimation
F: Bayes Nets
Week of May 9 M: Bayes Nets (cont.)
W: Naive Bayes Classifiers
F: Logistic Regression
Week of May 16 M-W: Unsupervised Learning, part 2
F: Project Status Reports
Week of May 23 M: Clustering (cont.)
W: Ensemble Methods
F: Computational Learning Theory and Evaluating Hypotheses
Week of May 30 M: No class (Memorial Day)
W: Learning Theory (cont.)
F: Support Vector Machines