Back to index
DeepLearning.AIA weekend, and worth rereading annually·Free

Machine Learning Yearning

4.4

The most useful hundred and twenty pages in machine learning, and almost nobody reads it. Teaches judgement rather than algorithms, and the judgement is what separates working projects from stalled ones.

What We Liked

  • Teaches project judgement, which no algorithms course covers and every practitioner needs
  • Error analysis chapters will save you months of pointing effort at the wrong problem
  • Chapters are two or three pages, so it reads in a weekend and rereads in an evening
  • Free with no account, upsell or platform required
  • The reasoning transfers cleanly to generative AI work despite predating it

What Could Be Better

  • Predates the large language model era, so the examples feel dated
  • No code at all, which will frustrate people wanting something hands on
  • Assumes you already know how to train a model, so it is not a starting point
  • Distribution through a marketing signup page is mildly irritating
  • Never received the full polish of a finished book and reads as a draft in places

Detailed review

Machine Learning Yearning is a free book from Andrew Ng, distributed through DeepLearning.AI, running to around a hundred and twenty pages across roughly sixty very short chapters. Its subject is not machine learning algorithms. Its subject is how to make machine learning projects work, which is a completely different discipline and one that almost no course teaches. I would put it in the top handful of resources in this entire catalogue for value per hour spent, and it is free, which makes its obscurity slightly baffling.

Here is the problem it solves. You finish a machine learning course. You know how to train a model, you know what regularisation is, you can explain the bias variance tradeoff. You start a real project and within three weeks you are stuck, not because you lack an algorithm but because you have no idea what to do next.

Your model gets seventy eight percent accuracy. Should you collect more data, build a bigger model, clean the labels, change the architecture, or accept it and ship? Every one of those costs weeks. Choosing wrong costs the project. Nothing in your course addressed this, and this is the actual job.

Ng's answer is a set of practices. Set up your development and test sets to reflect the distribution you care about, not the data you happen to have. Pick a single number evaluation metric so you can compare options without arguing. Do error analysis by hand, looking at a hundred misclassified examples and counting the categories of failure, before you spend a month on any fix.

Compare against human level performance to know whether the remaining error is reducible. Use bias and variance analysis to decide between more data and more model. Handle mismatched training and test distributions deliberately. Know when end to end learning helps and when a pipeline of components is better.

The error analysis chapters alone justify the weekend. The habit of manually inspecting a sample of failures before choosing a direction is the single highest value practice in applied machine learning, and the number of teams who skip it in favour of trying a bigger model is depressing. Ng makes the case with concrete arithmetic: if a category accounts for eight percent of your errors, fixing it perfectly gains you eight percent of your error budget, and now you can decide whether that is worth a month. That reasoning is obvious once stated and almost nobody does it unprompted.

The format helps enormously. Chapters are two or three pages, each with one idea. You can read it on a train, and you can reread a specific chapter in five minutes when you hit the corresponding problem. It is structured as a reference disguised as a book.

Now the criticisms, and they are real. The book predates the large language model era entirely. The examples are image classification and speech, the framing assumes you are training a supervised model on a dataset you control, and there is nothing about prompting, retrieval, fine tuning against a foundation model, or evaluating generative output. Someone building a RAG application will not find their situation described.

What I would argue, and I hold this view fairly strongly, is that the reasoning transfers almost completely. Setting a single evaluation metric, building dev and test sets that reflect production, doing error analysis on a sample of failures, and knowing whether your remaining error is reducible are exactly the practices that generative AI teams are currently rediscovering under the name evals. Read it with a translation layer in your head and it is one of the most current books here. Second criticism: no code.

This is a book about thinking and some readers will find that unsatisfying. Third, it assumes you can already train a model. It is not a first book and it will not teach you machine learning. Fourth, the distribution is through a signup page, which means handing over an email to DeepLearning.AI for a free book.

Mildly annoying and not a real barrier. Fifth, it reads as a draft in places. It was released as a work in progress and never got the final polish of a published book. The ideas are intact and the prose occasionally is not.

On alternatives. Chip Huyen's Designing Machine Learning Systems covers overlapping ground with more current infrastructure detail and more depth, at book length and book price. Ng's book is shorter, free, and better on the specific question of what to do next when your model is not good enough. Read this one first because it takes a weekend, then read Huyen's if you are building systems.

My four point four is high for something this short, and the deduction is for the pre LLM framing, which does require the reader to do some translation work. If you read one free thing from this entire catalogue, read this.

[ final ]

The verdict.

Read this after your first machine learning course and before your first real project. It is free, it takes a weekend, and it will change how you spend your time. Very little else has that ratio.