ScratchMind
Understanding Machine Learning by Building It From First Principles.
ScratchMind is a growing, open research-and-learning ecosystem focused on re-deriving, re-implementing, and re-explaining machine learning systems from scratch — without shortcuts, hidden abstractions, or blind reliance on libraries.
The goal is not speed.
The goal is clarity.
Philosophy
Modern ML education often jumps straight to frameworks, APIs, and benchmarks.
ScratchMind takes the opposite path.
We believe that:
- True understanding comes from reconstruction
- Implementation sharpens theory
- Teaching is a form of verification
- Systems thinking matters more than isolated tricks
Every project here starts with a simple question:
Why does this exist — and how would I build it if nothing existed already?
The ScratchMind Ecosystem
ScratchMind is organized as a set of focused repositories, each exploring a specific axis of machine learning.
🧠 Core Projects
-
ScratchVision
Vision models from first principles — from MLPs and convolutional ideas to biologically inspired architectures. -
ScratchGen
Generative modeling explored bottom-up: probability, likelihoods, latent variables, and generative processes. -
ScratchSeq (Coming Soon)
Sequential reasoning, temporal models, and the evolution from recurrence to attention.
Each repository is self-contained, with:
- conceptual notes
- from-scratch implementations
- experiments and reflections
- links back to theory and motivation
Writing & Build-in-Public
Alongside code, ScratchMind emphasizes documentation as a first-class artifact.
Writing serves three purposes:
- Revisit and refine understanding
- Expose gaps honestly
- Create reusable mental models for others
Blog posts and notes are linked directly from the repositories and may live as:
- Markdown documents
- GitHub READMEs
- External articles (Medium, GitHub Pages)
→ Blogs
The code explains how.
The writing explains why.
What This Is (and Is Not)
This is:
- deliberate, slow learning
- principled re-implementation
- systems-oriented ML thinking
- an evolving public notebook
This is not:
- a framework
- a tutorial dump
- a benchmark race
- production ML advice
Navigation
- Start with any repository README
- Follow links from notes → code → experiments
- Use this page as the ecosystem map
There is no required order.
Closing Note
ScratchMind is intentionally unfinished.
Understanding is iterative.
Clarity compounds.
If something feels slow here, that is by design.