borch

Learn

How to read this book

This is a textbook you run. Not a video and not a PDF — every example executes in this tab, on your own GPU, and you can change it before you do. The point of the whole thing is that code beside an explanation which does not run is a picture; here you press it and it really runs.

Everything runs, in two languages

Each example sits in a box with a Run button (⌘/Ctrl + Enter also works), and you can edit the code first. Most boxes carry two tabs — a JavaScript version and a Python one, the same work on each — so you can press both and compare the numbers rather than take "they agree" on faith. Reading a value back from the GPU is awaited in JavaScript (await x.item()); Python reads directly.

Your progress is yours

On the course home every lesson has a circle in front of it. Press it to check a lesson off, or let a lesson's your turn exercise do it for you — when your fix makes the page say learned, that lesson is marked. Progress is kept in this browser only: no account, nothing uploaded, and you can clear it any time by clearing site data.

The path

The lessons form a tree, and the main line runs in dependency order: Foundations (the math, run — vectors to the chain rule) → DL Basics (a tensor to a training loop) → Depth (real networks, data, debugging) → Sequences & Transformers, with paper case studies off to the side and a capstone at the end. Walk it top to bottom if borch is new to you, or jump to what you need — each lesson names what it leans on.

What you need

The symbols and shorthand the lessons use are collected on the Notation page; flip back to it whenever a piece of notation is unfamiliar.