Skip to content

A simple Autograd engine built to further my knowledge on neural networks and machine learning.

License

Notifications You must be signed in to change notification settings

JoshuaOHanlon/Autograd-engine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Autograd Engine

This project is a small custom Autograd engine built to further my knowledge of neural networks and machine learning. This engine implements backpropagation over a dynamically built Directed Acyclic Graph (DAG). This project involved developing a small neural network’s library with a PyTorch-like API and included the capability for tracing and visualization using Graphviz visualizations.

Training

The notebook demo.ipynb includes a full demo on training a multilayer neural network (MLP) binary classifier. This is achieved by initializing a neural net from the src.nn module, implementing a simple svm "max-margin" binary classification loss and using SGD for optimization.

Tracing/Visualization

The notebook trace_graph.ipynb produces graphvis visualizations.

Tests

The unit tests require the PyTorch dependency.

python -m pytest

About

A simple Autograd engine built to further my knowledge on neural networks and machine learning.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published