Harvard CS 181: Machine Learning
CS 181 is Harvard's core machine learning course — regression, classification, neural networks, clustering, graphical models, and reinforcement learning — with an emphasis on the probabilistic foundations beneath the methods. It's the standard ML credential inside the CS concentration.
Fennie is independent and not affiliated with Harvard University. This is an unofficial study guide.
Build my CS 181 study planWhat makes it hard
CS 181 is a math course wearing an ML jacket: the psets demand derivations — maximum likelihood, gradients, posterior updates — before any model gets fit. Students arriving for the applications with shaky linear algebra and probability hit the wall by the third pset, which is famously long.
What you'll cover
- • Linear regression and regularization
- • Probabilistic modeling and maximum likelihood
- • Classification and logistic regression
- • Neural networks
- • Clustering and mixture models
- • Graphical models
- • Reinforcement learning basics
The CS 181 study guide
How to study for Harvard CS 181, step by step.
- 1
Recharge the math before the semester starts
Matrix calculus, eigenvalues, and Stat 110-level probability are load-bearing from pset one. A two-week refresher before classes beats discovering the gaps mid-derivation.
- 2
Do every derivation by hand once
For each method, derive the loss, the gradient, and the update yourself before touching the implementation. CS 181 exams and psets test the derivation layer, not library calls.
- 3
Build a one-page map of the methods
For every model: its assumptions, its loss, when it fails. The course moves through many methods fast, and the comparative map is what keeps them from blurring together by the final.
- 4
Start the long psets the day they drop
CS 181 psets stack derivations on implementations on write-ups, and they're notorious for taking longer than planned. Spaced sessions across the full window beat any deadline sprint.
- 5
Let Fennie carry the schedule
Upload the CS 181 syllabus and Fennie's Daily Plan spreads each pset across its window with math review queued before the units that need it, plus derivation-focused practice questions generated from the actual course materials. Free to start.
Start my CS 181 plan free
How Fennie helps with CS 181
Fennie's Daily Plans spread CS 181's notorious psets across their full windows and queue linear algebra and probability review before the units that lean on them. Chat through a maximum-likelihood derivation step by step, and quiz yourself on each model's assumptions — the layer exams actually probe.
FAQ
Is CS 181 hard?
Yes — it's a derivation-heavy course where the psets routinely run long, and weak linear algebra or probability shows immediately. The applications are the reward, not the work.
What should I take before CS 181?
Linear algebra (Math 21B or beyond), probability at the Stat 110 level, and solid programming. Of the three, probability gaps hurt the most.
Is CS 181 or CS 109A better for learning ML?
CS 181 builds the mathematical foundations; CS 109A teaches applied data science workflow. For ML research or depth, 181; for practical analysis skills, 109A — many students take both.
Pass CS 181 with a plan, not a cram
Upload your CS 181 materials and Fennie generates a Daily Plan paced to your deadline — plus chat, flashcards, and quizzes built from the actual course content.
Get started freeMore Harvard courses
CS50 — Introduction to Computer Science
CS50 is Harvard's famous intro to computer science, taught by David Malan — and through CS50x on edX, almost certainly the most-taken and most-searched college course in the world. It moves from C through data structures, memory, and algorithms to Python, SQL, and web development, ending with a final project.
CS 51 — Abstraction and Design in Computation
CS 51 is the standard course after CS50 for Harvard CS concentrators, teaching functional programming in OCaml alongside design principles — abstraction, modularity, and multiple programming paradigms. It's where students go from making code work to making it well-designed.
CS 124 — Data Structures and Algorithms
CS 124 is Harvard's algorithms course — divide and conquer, greedy algorithms, dynamic programming, graph algorithms, hashing, and NP-completeness — combining rigorous analysis with programming assignments. It's a core theory requirement for CS concentrators and a known interview-prep powerhouse.
CS 61 — Systems Programming and Machine Organization
CS 61 is Harvard's systems programming course — C and C++, assembly, memory, caching, process control, and concurrency — and one of the two standard follow-ons to CS50 for CS concentrators. Its course site publishes lecture notes and problem sets publicly, so it also draws self-learners looking for a systems sequel to CS50.