You're not currently signed in. Sign in »

Machine Learning (CS 446) Fall 2020

What Details
Lecture WF 12:30pm-1:45pm, Zoom Meeting
Recorded Lecture ClassTranscribe, Mediaspace
Web forum Piazza
Survey Google Form
Schedule View »
Calendar View »
Grading View »
Policies View »


Sanmi Koyejo

Office hours: Wednesdays 2pm-3pm; or by appointment, Zoom Meeting

Teaching Assistants

name office hours
Tara Vijaykumar Mondays 9-11am, Zoom Meeting
Eddie Huang Tuesdays 2-4pm, Zoom Meeting
Meha Kumar Wednesdays 3-5pm, Zoom Meeting
Yubin Ge Thursdays 3-5pm, Zoom Meeting
Brando Miranda Fridays 4-6pm, Zoom Meeting

Course Assistants

name contact (

Course Description

The goal of Machine Learning is to build computer systems that can adapt and learn from their experience. This course will study the theory and application of learning methods that have proved valuable and successful in practical applications. We review the theory of machine learning in order to get a good understanding of the basic issues in this area, and present the main paradigms and techniques needed to obtain successful performance in application areas such as natural language and text understanding, speech recognition, computer vision, data mining, adaptive computer systems and others. The main body of the course will review several supervised and (semi/un)supervised learning approaches. These include methods for learning linear representations, Bayesian / Probabilistic methods, decision-tree methods, kernel based methods and neural networks, as well as clustering and dimensionality reduction techniques. We will also discuss how to model machine learning problems and discuss some open problems.

Topics to be covered include:


Students are expected to have taken a class in linear algebra, probability and statistics and a basic class in theory of computation and algorithms. Students are expected to be familiar with the python programming language.

Course Management

Course details, homework and grades will be managed using Relate.


There is no required textbook. Check out our references page

Course Work


Midterm: Oct 14 (at least two exams. One during the course time, and the second scheduled for a conflict time on the same day) Final: TBD


There will be five homework assignments. The homeworks will consist of a combination of machine problems and written exercises to be submitted on the course relate website. All homeworks are due at Midnight CT on the specified day.


All students will participate in a predictive modelling competition. Details will be provided in subsequent weeks. You are free to use any methods you like, however, you will be required to submit your source code for the final submission. The course project will be introduced in class, including further details on the use of computing resources. The Project Grade will be based on predictive performance as compared to four baselines (i.e. 25%, 50%, 75%, 100% of the grade). Beyond this, additional performance gives you bragging rights! Your grade will be based on the final submission due Dec 9, Midnight

Computing Microsoft Azure has provided cloud computing resources for the project. Details will be provided in class.

Lecture Scribing

4-credit students are required to scribe one lecture for 2% participation credit. You will be awarded the credit only if your notes are of a reasonable standard (as determined by course staff). Otherwise, you will be given an opportunity to improve and correct your notes.

You will be randomly assigned to a scribe team. We require one set of notes from the scribe team, and the scribe can be submitted by any team member. The scribe team should take detailed notes during the lecture, then convert their notes into LaTeX format of 5-8 pages long. Scribe notes are due one week after the lecture, at 12:30pm (before lecture). Please submit your scribe notes on Relate.

Scribe assignments

Scribe submissions