← all repositories
neonwatty/machine-learning-refined

A university textbook that makes you code gradient descent by hand

Free PDF, Jupyter notebooks, and the stubborn insistence that you implement classic ML from scratch before touching PyTorch.

2.2k stars Python Learning
machine-learning-refined
Not currently ranked — collecting fresh signals.
star history

What it does

This repo is the companion to Machine Learning Refined, a university textbook now in its second edition. It bundles free chapter PDFs, interactive Jupyter/Colab notebooks, slide decks, exercises, and datasets. The material walks through optimization (zero-order, first-order, second-order), linear regression, classification, and beyond—implemented with Python and matrix math rather than high-level frameworks.

The interesting bit

The authors’ pedagogy is deliberately austere: they demand you can draw the concept, derive the math, and code it without sklearn or PyTorch. The notebooks include interactive widgets for visualization, but the final PDF expands significantly on the draft content. It’s a rare case where the GitHub repo is arguably more useful than the printed book.

Key highlights

  • Free PDF downloads for every chapter, plus instructor PowerPoint slides
  • Colab-ready notebooks with interactive widgets (shown in the repo’s GIF demos)
  • Exercises with wrappers and datasets, aimed at both self-learners and classroom use
  • Verified instructors can request a free physical exam copy from the publisher
  • Prerequisites are minimal: basic Python and matrix mathematics

Caveats

  • The README notes that early notebook drafts are superseded by the expanded final PDF, so the “interesting and unique interactivity” is somewhat orphaned
  • Some chapter sections lack notebook links entirely (e.g., 3.4 “Computing Gradients Efficiently”, 5.1 “Introduction”)
  • The repo’s structure mixes educational content with textbook marketing; navigation requires patience

Verdict

Ideal for students or instructors who want fundamentals before frameworks, or anyone suspicious that model.fit() has become too comfortable. Skip it if you need production-ready code or cutting-edge architectures; this is deliberately retrograde in the best sense.

Frequently asked

What is neonwatty/machine-learning-refined?
Free PDF, Jupyter notebooks, and the stubborn insistence that you implement classic ML from scratch before touching PyTorch.
Is machine-learning-refined open source?
Yes — neonwatty/machine-learning-refined is an open-source project tracked on heatdrop.
What language is machine-learning-refined written in?
neonwatty/machine-learning-refined is primarily written in Python.
How popular is machine-learning-refined?
neonwatty/machine-learning-refined has 2.2k stars on GitHub.
Where can I find machine-learning-refined?
neonwatty/machine-learning-refined is on GitHub at https://github.com/neonwatty/machine-learning-refined.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.