A custom neural net for recoginzing handwritten digits, with a serious nod to I Am Trask. The neural net is pre-trained on the MNIST dataset (run on an AWS instance). And the user input is rescaled and tested.
sketch.js is a library created by Michael Bleigh to allow the user to draw the image of a digit. It has been modified to pull a drawn image from the page before being resized and sent to the neural network for classifaciton.
Requires running PostgreSQL server. Create a new database named ‘netdb’
Clone the repo locally, then install the requirements:
pip install -r requirements.txt python3 manage.py loaddata guess/fixtures/initial_data.json python3 manage.py runserver
Then navigate to localhost:8000 on your browser and draw away1
Full documentation hosted here
To adjust hyper-parameters or choose dataset: Open net_launch.py and adjust as needed at the bottom of the file. The dataset can be switched by commenting out the appropriate line at the bottom and uncommneting the other. Or simply:
from Network import network
And feed it the appropriate parameters.
Documentation is out of date, as the custom neural network was since trained on a convolutional neural net trained on affine transformations of the original MNIST dataset.