CS 412 Introduction to Machine Learning
University of Illinois at Chicago, Spring 2021

Lecture time: TTh 9:30-10:45am

Location: Online

Instructor: Prof. Elena Zheleva

Office hours: Tue 2-4pm, online


TA1: Christopher Tran

Office hours: TBD

Contact: ctran29@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.

Course materials

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)