Neural networks with nothing but NumPy and patience
Companion code for a Japanese O'Reilly book that teaches deep learning by building neural networks from scratch using only NumPy and Matplotlib.

What it does
This repository holds the companion code for the Japanese O’Reilly book Deep Learning from Scratch (2016). It collects chapter-by-chapter Python implementations of neural networks, backpropagation, and optimization, relying solely on NumPy and Matplotlib. The files are split into eight chapter folders, shared common utilities, and dataset loaders.
The interesting bit The project treats high-level frameworks as a distraction until you understand the calculus underneath. With no TensorFlow or PyTorch in the dependency list, every forward pass and gradient update is written out as explicit matrix operations.
Key highlights
- Implements core concepts from scratch using only NumPy and Matplotlib
- Organized into eight chapter folders (
ch01throughch08) pluscommonanddataset - Provides Jupyter notebooks ready for Amazon SageMaker Studio Lab
- MIT licensed, with a public errata wiki
- 4,799 stars and a widely cited Japanese-language learning reference
Caveats
- The README and book are entirely in Japanese; non-Japanese readers will need external context
- Code explanations live in the printed book, so the repository alone is essentially uncommented sample code
- Published in 2016, so the techniques reflect that era’s pedagogical style
Verdict A useful stop for developers who want to see backpropagation unmasked as raw matrix math. Skip it if you need production-grade framework recipes or English-language documentation.
Frequently asked
- What is oreilly-japan/deep-learning-from-scratch?
- Companion code for a Japanese O'Reilly book that teaches deep learning by building neural networks from scratch using only NumPy and Matplotlib.
- Is deep-learning-from-scratch open source?
- Yes — oreilly-japan/deep-learning-from-scratch is open source, released under the MIT license.
- What language is deep-learning-from-scratch written in?
- oreilly-japan/deep-learning-from-scratch is primarily written in Jupyter Notebook.
- How popular is deep-learning-from-scratch?
- oreilly-japan/deep-learning-from-scratch has 4.8k stars on GitHub.
- Where can I find deep-learning-from-scratch?
- oreilly-japan/deep-learning-from-scratch is on GitHub at https://github.com/oreilly-japan/deep-learning-from-scratch.