---
# System prepended metadata

title: Algorithmic Machine Learning Spring 2026

---

# Algorithmic Machine Learning Spring 2026
| [HOME](http://www.raghumeka.org) | [RESEARCH](https://raghumeka.github.io/research.html) | [TEACHING](https://raghumeka.github.io/courses.html) |
| -------- | -------- | -------- |
---

## Introduction
In this course we will look at a handful of ubiquitous algorithms in machine learning. We will cover several classical tools in machine learning but more emphasis will be given to recent advances and developing efficient and provable algorithms for learning tasks. A tentative syllabus/schedule can be found below; the topics may change based on student interests as well. You can also check last year's [course notes](https://hackmd.io/@raghum/algoml25) for a more details about what's to come. 

**Make sure you can answer the questions in [Assignment 0](https://ucla.box.com/s/9f7qhwvmb06b3l82d79djck3s6232kqp) for yourselves before registering for the course.** 

**Important: Being able to do these problems is mandatory for students in Sections 1, 91 registering for the course.** 

## Coursework

There will be four assignments for the course and we will have two (non-cumulative) exams. Each assignment will have both written as well as programming components. There will also be credit for attendance for Sections 1, 91 (10 points; in-person). Having > 50% attendance (in the first, and second halves of the class) and participating in class will get you full-credit here. Register for iclicker (used for attendance) [here](https://join.iclicker.com/JYPQ). 

**Violating honesty policies (e.g., signing into iclicker when not in class) will be treated seriously and likely reported.**

We'll predominantly use gradescope for the assignments. The final will be as per university schedule. You could potentially discuss how to solve problems with others specifically (a better option would be to just ask questions openly on edStem) but see course policies below and make sure you do not violate them. 

## Prerequisites

Background in algorithms, probability, linear algebra (all at a basic undergraduate level) is required and will be assumed through the course. 

## Logistics and resources
**Please click on triangle to the right to expand the sub-heading and see more details (if any).**
:::spoiler **Lecture hours**: M,W 12-1:50 pm Boelter Hall 4760. **Also live on Echo360 or Zoom.**
:::
:::spoiler **Course notes**: We will use scribbletogether to share notes. 
-- Each lecture is on a separate page.
-- [Part 2: PCA](https://scribbletogether.com/whiteboard/7042E07D-1828-43AF-985A-1C63042B67BD)
-- [Part 1: ML Optimization](https://scribbletogether.com/whiteboard/1AC75BDD-6B70-4AC2-BB56-AA2C4C1DB017)
:::
:::spoiler **Office hours**: Monday 2-3, Engineering VI 463 (Starting April 6th). [Zoom](https://ucla.zoom.us/my/raghumeka)
:::
:::spoiler **TA Office hours**: (MSOL only) Yimeng Wang - Monday 5-7pm, Thursday 6-7pm (Starting April 6th). [Zoom](https://ucla.zoom.us/j/6894756681)
:::
::: spoiler **Grading**: Four assignments: 10 x 4. Exam 1 on May 6 (12-1:50)(25 points; lectures 1-9). Exam 2 (25 points; lectures 10-18): on June 11 8am - 10am for Sections 1, 91; MSOL Instructions below.  Attendance (10 points for Sections 1, 91).
:::

:::spoiler **Exams** (Click on triangle for details about the exams)

-- Exam 1: May 6, 12-1:50 in class for in-person class. Lectures 1-9. 

-- Exam 1 MSOL: May 6, 2pm release on gradescope. MSOL students will have a 72-hour window within which to start the exam and once they start, they'll have two hours to submit. Please adhere to the honor code for the exam: no collaborating with other students. You can use notes but no online resources.

-- Exam 2: June 11, 8-10 (university schedule) for Sections 1, 91. 

-- Exam 2 MSOL: On campus time June 6, 1-3PM. Otherwise, we will follow standard [MSOL instructions](https://www.msol.ucla.edu/exams/) summarized below.

::: spoiler **MSOL Proctoring Instructions for Exam 2** 

We will follow instructions from MSOL for Exam 2 are as follows. Acceptable proctors include:

- College or university test center proctor.

- College or university faculty member — Academic relationship only.

- Test administrator at a professional or [NCTA test center](https://ncta.memberclicks.net/proctoring-network).

- Librarian.

- Military: Educational Services Officer or higher ranking officer.

- Education Coordinator or HR representative at your place of employment — Must submit their business card OR company directory listing with your SEA form.

Once you've found your proctor, please submit a [SEA form](https://www.msol.ucla.edu/wp-content/uploads/msol/MSOL-SEA-Form-2023.pdf) signed by both you and your proctor, then submit it to our [SEA Form Submission](https://forms.gle/LX2R1k1hynzJ55ZK9) for approval. Please submit your SEA form at least two weeks prior to any exam.


More information can be found on MSOL's [Exam Info page](https://www.msol.ucla.edu/exams/). Please email any questions to acates@seas.ucla.edu.



Student Accommodations

- Students in need of accommodations may test on an alternate date given your approval.
- Students should please forward approved make-up dates to MSOL at msengrol@seas.ucla.edu so we can notify their proctors.
- Permission is not required for MSOL students to test with an independent proctor on Friday of an exam week.

:::
:::spoiler **Assignments** (Click on triangle to the left to see the assignment schedule)
-- [Asssignment 1] Lectures 1-5: April 13, 6pm. Due April 20, 10pm. [10 points]
-- [Assignment 2] Lectures 6-9: April 27, 6pm. Due May 4, 10pm. [10 points]
-- [Assignment 3] Lectures 10-14: May 18, 6pm. Due May 27, 10pm. [10 points]
-- [Assignment 4] Lectures 15-18: June 1, 6pm. Due June 8, 10pm. [10 points]


Solutions will be sketched on the discussion forum after the due date.
:::
::: spoiler **edStem**: Our online space for asking, answering, and posting links to class material. Students can register [here](https://edstem.org/us/join/U3F3Ze).

We will make use of edStem extensively. Videos will also be uploaded here. You must have received an invitation via your official UCLA email ID (the one used on CCLE). If you haven't let me know immediately. It will be our main way for communicating with each other. Please ask questions on edStem so that others may also benefit from the knowledge.

We will also use it for releasing homework solutions. Homeworks themselves will be posted on Gradescope.

Registration links will be provided soon.
:::
:::spoiler **Homework submission**: On Gradescope; Due 9:59PM (Pacific time) on due date. There will be three copies of each assignment within gradescope: One each for in-person students Section 1, Section 90, and the other for MSOL (Section 80). Make sure you upload to the right one.
We will use Gradescope for homework and they have to be submitted by 10PM on their due date. Things to keep in mind: 1) Within a week of the course, you should receive a registration link from Gradescope. If you don't receive it before the first homework, contact me; this will give you access to the website. 2) Watch [this](https://www.youtube.com/watch?v=u-pK4GzpId0) video with instructions. Follow them to the letter! The simple guidelines make the process considerably smoother. 3) Make sure you start each problem of a homework on a new page. 4) To generate a PDF scan of the assignments, you can follow the instructions [here](https://raghumeka.github.io/CS180/submitting_hw_guide.pdf); you can also use the scanners in the library.
:::
:::spoiler **Homework writing**: LaTeX recommended highly
It is strongly recommended to use LaTeX or other word processing software for submitting the homework. Grades will take into account both the correctness and the quality of the solutions. Correctness is a prerequisite but clarity is also important: you are responsible for communicating your solution in a legible and understandable way.
Some helpful guidelines: (1) Start early to use office hours. (2) Serious/honest attempts count - there will be reasonable partial credit for attempts that show understanding of the problem/concepts involved.
:::
:::spoiler **Resources**: There is no course text. Following could be useful.
-- Sanjeev Arora's [course](http://www.cs.princeton.edu/courses/archive/spring15/cos598D/)
-- Moritz Hardt's [course](https://ee227c.github.io/)
-- Elad Hazan's [course](http://www.cs.princeton.edu/courses/archive/spring15/cos511/)
-- [Foundations of Data Science](http://www.cs.cornell.edu/jeh/book2016June9.pdf) by Blum, Hopcroft and Kannan.
:::

---
## Syllabus

Here is a tentative list of topics for the course. I will adapt some of these topics based on student interest. 

### Optimization: the work-horse of ML (4 lectures)
-- Learning as optimization
-- Gradient descent
-- Stochastic gradient descent
-- Accelarated (Momentum, Nesterov) gradient methods
-- Adaptive gradient descent methods (Adagrad, Adam)
-- Optimization in practice: Compare GD, SGD, Momentum, NAGD, ADAM, Shampoo
-- Autograd

### Online learning (3 lectures)
-- Online optimization and regret minimization
-- Multiplicative weights
-- Stochastic bandits and UCB algorithm

### Reinforcement Learning (3 lectures)

### Privacy in Machine Learning (3 lectures)
-- How hard is it for learning to violate privacy?
-- Models of privacy: Differential privacy. Laplace mechanism
-- Differentially private SGD.

### Unsupervised learning (5 lectures)
-- Distribution learning
-- Diffusion models
-- Parallel sampling* (advanced)
-- Bayesian networks: Chow-Liu algorithm
-- Auto-regressive learning, transformer architecture

---
## Course Policies

- Regrade requests need to be submitted electronically on Gradescope within a week of receiving the graded work. Requests later than a week will not be handled (mainly to keep things flowing).
- We will use edStem for questions and discussions. Please ask questions related to assignments on that platform and not via email. Use this platform so that others can also benefit from your questions; if you want to communicate a private question, you can also do that on Campuswire.
- Collaboration on homeworks is allowed, but each student must write their solutions independently and should clearly mention the collaborators. Programming components should not be shared with others. Keep in mind that just attempting the homeworks itself will get you reasonable partial credit and will go a long way towards better performance in the exam (which carries significant weight). You should never share your written solutions with someone else or copy from someone else's written solutions. Under no circumstances may you use solution sets to problems from previous year courses or from similar courses elsewhere or other resoruces on the web. Any violations will be treated seriously. 


###### tags: AML