Lecture time: TTh 2-3:15pm
Location: TBH 180G
Instructor: Prof. Elena Zheleva
Office hours: Wed 2-4pm, SEO 1140
Contact:
TA1: Christopher Tran
Office hours: Mo 12-1pm, Th 3:30-4:30pm, TBH 190
Contact: ctran29@uic.edu
TA2: Zohreh Ovaisi
Office hours: Tue 11-1pm, TBH 190
Contact: zovais2@uic.edu
This course provides an introduction to machine learning, the study of systems that improve automatically based on data and past experience. The course will introduce common machine learning tasks, such as classification and clustering, and some of the successful machine learning techniques and broader paradigms that have been developed for these tasks. Topics include but are not limited to decision trees, nearest neighbors, linear models, support vector machines, neural networks, ensemble methods, k-means, and graphical models. The course is programming-intensive and an emphasis will be placed on tying machine learning techniques to specific real-world applications through hands-on experience.
Working knowledge of probability, linear algebra, calculus, and ability to (learn to) program in Python.
Important: There will be a quiz on prerequisites during the third lecture period (Tuesday, September 4th) to help you assess whether this course is for you. Anyone considering to take this course should come to class and take the quiz even if they are not registered yet.
We will use Piazza for the course schedule, discussions, and materials, and Gradescope for grading.
Python is the programming language used for homework assignments.
Primary: A Course in Machine Learning by Hal Daume III (available online)
Understanding Machine Learning: From Theory to Algorithms by Shai Ben-David, Shai Shalev-Shwartz (available online)
Optional: Hands-On Machine Learning with Scikit-Learn & Tensorflow by Aurélien Géron (available at the library through Safari Books Online. Code on github.)
Homework and projects - 40%
Midterm exam - 25%
Final exam - 35%
Date | Topic | Assigned Reading | Announcements |
8/28 | Welcome to Machine Learning | HW1 is out; Quiz on 9/4 | |
8/30 | Decision trees | CIML 1, Syllabus | |
9/4 | Quiz | Math review, Stats review | |
9/6 | Limits of learning | CIML 2 | Last day to drop class: 9/7 |
9/11 | Nearest neighbors | CIML 3.1-3.3, 3.5 | HW1 due 11:59pm |
9/13 | The perceptron | CIML 4. Optional: UML 9.1.1-9.1.2 | |
9/18 | Practical issues | CIML 5 | HW2 released on 9/16 |
9/20 | Beyond binary classification (imbalances and multiclass) | CIML 6 | |
9/25 | Beyond binary classification (ranking) | CIML 6 | |
9/27 | Linear models | CIML 7.1-7.4 | |
10/2 | Linear models + SVM | CIML 7.5-7.7 | HW2 due 11:59pm |
10/4 | Kernel methods | CIML 11.1-2,11.4 | HW3 posted |
10/9 | Non-linear SVM | CIML: 11.5-11.6 | |
10/11 | Midterm review | Midterm Practice Questions | |
10/16 | Midterm exam | ||
10/18 | Probabilistic modeling | CIML 9 | |
10/23 | Probabilistic modeling | CIML 9 | |
10/25 | Probabilistic modeling | CIML 9 | |
10/30 | Ensemble methods | CIML 13 | |
11/1 | Ensemble methods | CIML 13 | HW4 posted |
11/6 | Unsupervised learning: clustering | CIML 3.4, 11.3, 15.1 | |
11/8 | Unsupervised learning | CIML 3.4, 11.3, 15.1-2 | |
11/13 | Neural networks | CIML 10 | |
11/15 | Neural networks | CIML 10 | HW4 due 11:59pm |
11/20 | Neural networks | Deep Learning: Chapter 1 | HW5 posted on 11/18 |
11/22 | Thanksgiving - no class! | ||
11/27 | Wrap up neural networks. Graphical models. | K. Murphy's Introduction to directed graphical models | |
11/29 | Graphical models | Undirected graphical models by K. Murphy (19.1-19.3) | |
12/4 | Fairness in ML | NIPS 2017 tutorial by S. Barocas and M. Hardt | |
12/6 | Final exam review | Final exam practice questions | HW5 due 11:59pm on 12/7 |
12/12 | Final exam 3:30-5:30pm | Location: LC C4 |