This repo is the full student code for minitorch. It is designed as a
single repo that can be completed part by part following the guide book.
It uses GitHub CI to run the tests for each module.

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 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

Topics covered:

  • Basic Neural Networks and Modules
  • Autodifferentiation for Scalars
  • Tensors, Views, and Strides
  • Parallel Tensor Operations
  • GPU / CUDA Programming in NUMBA
  • Convolutions and Pooling
  • Advanced NN Functions

GitHub

View Github