https://github.com/tyleryep/edutorch
Rewritten PyTorch framework designed to help you learn AI/ML
https://github.com/tyleryep/edutorch
Last synced: 8 months ago
JSON representation
Rewritten PyTorch framework designed to help you learn AI/ML
- Host: GitHub
- URL: https://github.com/tyleryep/edutorch
- Owner: TylerYep
- License: mit
- Created: 2020-07-04T03:25:36.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2025-05-06T05:24:58.000Z (8 months ago)
- Last Synced: 2025-05-06T21:07:33.998Z (8 months ago)
- Language: Python
- Size: 265 KB
- Stars: 7
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# edutorch
Rewritten PyTorch framework designed to help you learn AI/ML!
[](https://www.python.org/downloads/release/python-3120/)
[](https://badge.fury.io/py/edutorch)
[](https://github.com/TylerYep/edutorch/actions/workflows/test.yml)
[](https://github.com/TylerYep/edutorch/blob/main/LICENSE)
[](https://codecov.io/gh/TylerYep/edutorch)
[](https://pepy.tech/project/edutorch)
PyTorch is one of the most amazing frameworks for building and training deep neural networks. One of its biggest strengths is providing an intuitive and extendable interface for building and training these models.
In this project, I provide my own version of the PyTorch framework, designed to help you understand the key concepts. The goal is to provide explicit implementations of popular layers, models, and optimizers. Above all else, this code is designed to be readable and clear. Many of these examples are modified from Stanford's CS 230 / 231N course materials available online.
## EduTorch vs PyTorch
One notable difference between EduTorch and PyTorch is that EduTorch _does NOT provide autograd_. There are many educational benefits to deriving/implementing the backprop step yourself, and if you want automatic gradient calculations, you are better off using the real framework. If you really want autograd for an EduTorch-like project, you might want to consider using Brown University's [BrunoFlow](https://github.com/Brown-Deep-Learning/brunoflow). Or, if you just want to learn how the autograd system is implemented, you can check out Andrej Karpathy's [micrograd project](https://github.com/karpathy/micrograd).
There is no CUDA or GPU support for EduTorch either, for the same reasons.
# Contributing
All issues and pull requests are much appreciated!
- First, be sure to run `pre-commit install`.
- To run all tests and use auto-formatting tools, use `pre-commit run`.
- To only run unit tests, run `pytest`.