Mini-autodiff is my first implementation of an automatic differentiation engine. It currently supports computational graphs, backpropagation, memory pooling, broadcasting, optimization, and loss functions. A small main example is included to test the system.
The goal of this project is to keep everything minimal, simple, and educational. It is not yet optimized for large workloads (e.g., CPU/GPU parallelization), but I plan to explore these optimizations in the future and document the process.
The repository also includes a blog.md that explains how the engine works and introduces the core ideas behind automatic differentiation. It follows my journey building the system and aims to make the concepts intuitive for newcomers.
Published under the MIT License.