_images/minitorch.svg

MiniTorch (https://github.com/minitorch/) is a diy teaching library for machine learning engineers who wish to learn about the internal concepts underlying deep learning systems. It is a pure Python re-implementation of the Torch API designed to be simple, easy-to-read, tested, and incremental. The final library can run Torch code. The project was developed for the course Machine Learning Engineering at Cornell Tech.

To get started, first read Setup and Contributing to build your workspace. Then follow through each of the modules to the right. Minimal computational resources are required. Module starting code is available on GitHub, and each proceeds incrementally from past modules.

Enjoy!

Sasha Rush (@srush_nlp) with Ge Gao and Anton Abilov

Fundamentals

_images/module.png

Autodiff

_images/backprop4.png

Tensors

_images/stride4.png

Efficiency

_images/threadid@3x.png

Networks

_images/orig.png _images/mnist2.png _images/mnist5.png _images/mnist4.png

Slides

Slides are available here.

_images/match.png

Indices and tables