Syllabus for CS4787/5777

Principles of Large-Scale Machine Learning — Fall 2025

Term Fall 2025 Instructor Christopher De Sa
Course website www.cs.cornell.edu/courses/cs4787/2025fa/ E-mail cmd353@cornell.edu
Schedule MW 7:30–8:45PM Office hours Wednesdays 2–3PM
Room Kimball B11 Office Gates 426

Description: CS4787 explores the principles behind scalable machine learning systems. The course will cover the algorithmic and the implementation principles that power the current generation of machine learning on big data. We will cover training and inference for both traditional ML algorithms such as linear and logistic regression, as well as deep models such as transformers. Topics will include: estimating statistics of data quickly with subsampling, stochastic gradient descent and other scalable optimization methods, mini-batch training, accelerated methods, adaptive learning rates, methods for scalable deep learning, hyperparameter optimization, parallel and distributed training, quantization and model compression, and efficient inference.

Prerequisites: CS3780 or equivalent, CS 2110 or equivalent

Format: Lectures during the scheduled lecture period will cover the course content. Problem sets will be used to encourage familiarity with the content and develop competence with the more mathematical aspects of the course. Programming assignments will help build intuition and familiarity with how machine learning algorithms run. There will be one midterm exam and one final exam, each of which will test both theoretical knowledge and programmming implementation of concepts.

Material: The course is based on books, papers, and other texts in machine learning, scalable optimization, and systems. Texts will be provided ahead of time on the website on a per-lecture basis. You aren't expected to necessarily read the texts, but they will provide useful background for the material we are discussing.

Grading: Students taking CS4787 will be evaluated on the following basis.

15% Problem sets
35% Programming assignments
20% Prelim Exam
30% Final Exam

CS5777 has an additional paper-reading component, and students taking CS5777 will be evaluated as follows.

10% Problem sets
30% Programming assignments
10% Paper reading
20% Prelim Exam
30% Final Exam

Inclusiveness: You should expect and demand to be treated by your classmates and the course staff with respect. You belong here, and we are here to help you learn—and enjoy—this course. If any incident occurs that challenges this commitment to a supportive and inclusive environment, please let the instructor know so that we can address the issue. We are personally committed to this, and subscribe to the Computer Science Department's Values of Inclusion.

AI Use Policy: It is an academic integrity violation to represent the output of a generative AI tool as your own work. You may not submit any work produced by generative AI as part of the solution of problem sets, programming assignments, or paper reading assignments. It is an academic integrity violation to use any sort of generative AI to assist you during an exam.

Beyond this, you may use AI as you like to assist your own learning in the course, including by asking the AI about course content, asking it to document functions, asking it for the name of a function that does something, asking it to explain an error message, etc.


Course calendar may be subject to change.

Course Calendar Plan

Monday, August 25
Aug
24
Aug
25
Aug
26
Aug
27
Aug
28
Aug
29
Aug
30
Monday, August 25
Lecture 1. Introduction and course overview. [Notes PDF]

Problem Set 1 Released. [Notebook] [HTML]
Wednesday, August 27
Aug
24
Aug
25
Aug
26
Aug
27
Aug
28
Aug
29
Aug
30
Wednesday, August 27
Lecture 2. Linear algebra done efficiently: Mapping mathematics to numpy. ML via efficient kernels linked together in python. [Notebook] [HTML]

Background reading material:
Monday, September 1
Aug
31
Sep
1
Sep
2
Sep
3
Sep
4
Sep
5
Sep
6
Monday, September 1
Labor Day. No Lecture.
Wednesday, September 3
Aug
31
Sep
1
Sep
2
Sep
3
Sep
4
Sep
5
Sep
6
Wednesday, September 3
Lecture 3. Software for learning with gradients. Numerical differentiation, symbolic differentiation, and automatic differentiation. Efficient gradients with backpropagation. [Notebook] [HTML]

Background reading material:

Programming Assignment 1 Released. [Instructions] [Starter Code]
Monday, September 8
Sep
7
Sep
8
Sep
9
Sep
10
Sep
11
Sep
12
Sep
13
Monday, September 8
Lecture 4. Machine learning frameworks. [Notebook] [HTML]

Background reading material:

Problem Set 1 Due.
Wednesday, September 10
Sep
7
Sep
8
Sep
9
Sep
10
Sep
11
Sep
12
Sep
13
Wednesday, September 10
Lecture 5. Scaling to complex models by learning with optimization algorithms. Learning in the underparameterized regime. Gradient descent, convex optimization and conditioning. Stochastic gradient descent. [Notebook] [HTML]

Background reading material:

Problem Set 2 Released. [PDF]
Monday, September 15
Sep
14
Sep
15
Sep
16
Sep
17
Sep
18
Sep
19
Sep
20
Monday, September 15
Lecture 6. Adapting algorithms to hardware. Minibatching and the effect of the learning rate. Our first hyperparameters. [Notebook] [HTML]

Background reading material:
Wednesday, September 17
Sep
14
Sep
15
Sep
16
Sep
17
Sep
18
Sep
19
Sep
20
Wednesday, September 17
Lecture 7. Optimization techniques for efficient ML. Accelerating SGD with momentum. [Notebook] [HTML]

Background reading material:
Thursday, September 18
Sep
14
Sep
15
Sep
16
Sep
17
Sep
18
Sep
19
Sep
20
Thursday, September 18
Programming Assignment 1 Due.
Monday, September 22
Sep
21
Sep
22
Sep
23
Sep
24
Sep
25
Sep
26
Sep
27
Monday, September 22
Lecture 8. Optimization techniques for efficient ML, continued. Accelerating SGD with preconditioning and adaptive learning rates.

Background reading material:
Wednesday, September 24
Sep
21
Sep
22
Sep
23
Sep
24
Sep
25
Sep
26
Sep
27
Wednesday, September 24
Lecture 9. Sparsity and dimension reduction.

Background reading material:

Problem Set 2 Due.
Monday, September 29
Sep
28
Sep
29
Sep
30
Oct
1
Oct
2
Oct
3
Oct
4
Monday, September 29
Lecture 10. Deep neural networks review. The overparameterized regime and how it affects optimization. Matrix multiply as computational core of learning.

Background reading material:
Wednesday, October 1
Sep
28
Sep
29
Sep
30
Oct
1
Oct
2
Oct
3
Oct
4
Wednesday, October 1
Lecture 11. Deep neural networks review continued. Transformers and sequence models.

Background reading material:
Monday, October 6
Oct
5
Oct
6
Oct
7
Oct
8
Oct
9
Oct
10
Oct
11
Monday, October 6
Lecture 12. Topic TBD
Wednesday, October 8
Oct
5
Oct
6
Oct
7
Oct
8
Oct
9
Oct
10
Oct
11
Wednesday, October 8
Lecture 13. Topic TBD
Monday, October 13
Oct
12
Oct
13
Oct
14
Oct
15
Oct
16
Oct
17
Oct
18
Monday, October 13
Indigenous Peoples' Day. No Lecture.
Wednesday, October 15
Oct
12
Oct
13
Oct
14
Oct
15
Oct
16
Oct
17
Oct
18
Wednesday, October 15
Lecture 14. Topic TBD
Thursday, October 16
Oct
12
Oct
13
Oct
14
Oct
15
Oct
16
Oct
17
Oct
18
Thursday, October 16
Prelim Exam. 7:30PM, BKL200.
Monday, October 20
Oct
19
Oct
20
Oct
21
Oct
22
Oct
23
Oct
24
Oct
25
Monday, October 20
Lecture 15. Topic TBD
Wednesday, October 22
Oct
19
Oct
20
Oct
21
Oct
22
Oct
23
Oct
24
Oct
25
Wednesday, October 22
Lecture 16. Topic TBD
Monday, October 27
Oct
26
Oct
27
Oct
28
Oct
29
Oct
30
Oct
31
Nov
1
Monday, October 27
Lecture 17. Topic TBD
Wednesday, October 29
Oct
26
Oct
27
Oct
28
Oct
29
Oct
30
Oct
31
Nov
1
Wednesday, October 29
Lecture 18. Topic TBD
Monday, November 3
Nov
2
Nov
3
Nov
4
Nov
5
Nov
6
Nov
7
Nov
8
Monday, November 3
Lecture 19. Topic TBD
Wednesday, November 5
Nov
2
Nov
3
Nov
4
Nov
5
Nov
6
Nov
7
Nov
8
Wednesday, November 5
Lecture 20. Topic TBD
Monday, November 10
Nov
9
Nov
10
Nov
11
Nov
12
Nov
13
Nov
14
Nov
15
Monday, November 10
Lecture 21. Topic TBD
Wednesday, November 12
Nov
9
Nov
10
Nov
11
Nov
12
Nov
13
Nov
14
Nov
15
Wednesday, November 12
Lecture 22. Topic TBD
Monday, November 17
Nov
16
Nov
17
Nov
18
Nov
19
Nov
20
Nov
21
Nov
22
Monday, November 17
Lecture 23. Topic TBD
Wednesday, November 19
Nov
16
Nov
17
Nov
18
Nov
19
Nov
20
Nov
21
Nov
22
Wednesday, November 19
Lecture 24. Topic TBD
Monday, November 24
Nov
23
Nov
24
Nov
25
Nov
26
Nov
27
Nov
28
Nov
29
Monday, November 24
Lecture 25. Topic TBD
Wednesday, November 26
Nov
23
Nov
24
Nov
25
Nov
26
Nov
27
Nov
28
Nov
29
Wednesday, November 26
Thanksgiving Break. No Lecture.
Monday, December 1
Nov
30
Dec
1
Dec
2
Dec
3
Dec
4
Dec
5
Dec
6
Monday, December 1
Lecture 26. Topic TBD
Wednesday, December 3
Nov
30
Dec
1
Dec
2
Dec
3
Dec
4
Dec
5
Dec
6
Wednesday, December 3
Lecture 27. Topic TBD
Monday, December 8
Dec
7
Dec
8
Dec
9
Dec
10
Dec
11
Dec
12
Dec
13
Monday, December 8
Lecture 28. Topic TBD