ECE 364: Programming Methods for Machine Learning (Fall 2026)

 

Teaching Staff

Prof. Corey Snyder

Instructor
Email: cesnyde2[at]illinois.edu
 

Kamila Abdiyeva

Graduate Teaching Assistant
Email: kamilaa2[at]illinois.edu

Ayush Barik

Undergraduate Course Assistant
Email: barik2[at]illinois.edu

 


Class Time & Location

Class Time: Tuesday, Thursday 9:30AM-10:50AM
Location: ECEB 3081 (Electrical and Computer Engineering Building)

Work Submission Logistics

Gradescope for assignments (self-enrollment code ): [link]

Class Campuswire

Join the class campuswire with code TBD: [link]

 


 

Course Information

In this course, you will learn how to use auto-differentiation tools like PyTorch, how to leverage them for various machine learning algorithms (linear regression, logistic regression, deep nets, Transformers, etc.), and how to extend them with custom methods to fit your needs. Auto-differentiation is one of the most important tools for data analysis and a solid understanding is increasingly important in many disciplines. In contrast to existing courses that focus on algorithmic and theoretical aspects, here we focus on studying material that permits deploying auto-diff tools to your area of interest.

Pre-requisites: Math 257 (Linear Algebra with Computational Applications) or equivalent, basic probability, and proficiency in Python.

Recommended Reference Texts: (1) Pattern Recognition and Machine Learning by Christopher Bishop
(2) Machine Learning: A Probabilistic Perspective by Kevin Murphy
(3) Deep Learning by Ian Goodfellow and Yoshua Bengio and Aaron Courville

Please note that these books are more comprehensive than the material covered in this class.

Course Deliverables:
(1) Homeworks (submission on Gradescope).
(2) Midterm Exams: There will be two midterm exams.
(3) Final Project

Final Project:

Due Date: TBD

Homework and Late Policy:

Schedule and information to follow soon! There will be 7-8 homeworks.

We will drop the lowest homework grade (1 assignment) for each student. Late submissions will be deducted 20% per day (i.e. 20/24 % per hour late) that the assignment is submitted late. 


Grading:

25% Homeworks; 25% Midterm 1; 25% Midterm 2; 25% Final Project

Office Hours

Ayush Kamila Prof. Snyder
     
     

Lectures

Lecture Recordings

Mediaspace Recordings Link

The below syllabus is subject to minor changes.

Event Date Description Materials
Lecture 1     08/25/2025 Course introduction and PyTorch basics
Blank Notebook Complete Notebook Other Materials
Lecture 1 Lecture 1 Complete Setting up Python
Lecture 2 08/27/2025 PyTorch basics, linear algebra and calculus review
Blank Notebook Complete Notebook Other Materials
     
Lecture 3 09/01/2025 Matrix calculus and primal optimization
Blank Notebook Complete Notebook Other Materials
     
Lecture 4 09/03/2025 Automatic differentiation 1 (gradient descent)
Blank Notebook Complete Notebook Other Materials
     
Lecture 5 09/08/2025 Automatic differentiation 2 (computational graphs and backpropagation)
Blank Notebook Complete Notebook Other Materials
     
Lecture 6 09/10/2025 Automatic differentation 3 (backpropagation and PyTorch)
Blank Notebook Complete Notebook Other Materials
     
Lecture 7 09/15/2025 Linear and logistic regression 1
Blank Notebook Complete Notebook Other Materials
     
Lecture 8 09/17/2025 Linear and logistic regression 2
Blank Notebook Complete Notebook Other Materials
     
Lecture 9 09/22/2025 Linear and logistic regression 3
Blank Notebook Complete Notebook Other Materials
     
Lecture 10  09/24/2025 Pytorch optimizers, datasets, dataloaders 1
Blank Notebook Complete Notebook Other Materials
     
Lecture 11 09/29/2025 PyTorch optimizers, datasets, dataloaders 2
Blank Notebook Complete Notebook Other Materials
     
Lecture 12 10/01/2025 Midterm 1 review
Blank Notebook Complete Notebook Other Materials
     
Lecture 13 10/06/2025 Midterm 1 (in class)  
Lecture 14 10/08/2025 Deep nets 1 (MLPs)
Blank Notebook Complete Notebook Other Materials
     
Lecture 15 10/13/2025 Deep nets 2 (CNNs)
Blank Notebook Complete Notebook Other Materials
     
Lecture 16 10/15/2025 Deep nets 3 (CNNs)
Blank Notebook Complete Notebook Other Materials
     
Lecture 17 10/20/2025 Deep nets 4 (RNNs)
Blank Notebook Complete Notebook Other Materials
     
Lecture 18    10/22/2025 Model training best practices
Blank Notebook Complete Notebook Other Materials
     
Lecture 19 10/27/2025 Transformers 1
Blank Notebook Complete Notebook Other Materials
     
Lecture 20 10/29/2025 Transformers 2
Blank Notebook Complete Notebook Other Materials
     
Lecture 21 11/03/2025 Transformers 3  
Lecture 22 11/05/2025 Transformers 4
Blank Notebook Complete Notebook Other Materials
     
Lecture 23 11/10/2025 Self-supervised learning
Blank Notebook Complete Notebook Other Materials
     
Lecture 24 11/12/2025 Midterm 2 Review  
Lecture 25 11/17/2025 Midterm 2
Blank Notebook Complete Notebook Other Materials
     
Lecture 26 11/19/2025 Generative models 1
Blank Notebook Complete Notebok Other Materials
     
Break 11/24/2025 Thanksgiving  
Break 11/26/2025 Thanksgiving  
Lecture 27 12/01/2025 Generative models 2
Blank Notebook Complete Notebooks Other Materials
     
Lecture 28 12/03/2025 Generative models 3
Blank Notebook Complete Notebooks Other Materials
     
Lecture 29 12/08/2025 Additional PyTorch best practices
Blank Notebook Complete Notebooks Other Materials