priyavrat-misra / handwritten-digit-classification

A PyTorch implementation of CNNs and RNNs on MNIST handwritten digits.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Handwritten digit classification with Pytorch

Cover

This project uses the MNIST dataset for training. It has a total of 70000 handwritten digits split into train set and test set of 60000 and 10000 images respectively. The images are 28x28 pixelated grayscale images of single handwritten digits between 0 and 9.

The objective of this project is to classify a given image of handwritten digit into a integer from 0 to 9.


The process will be broken down into the following steps:

Results:

Train Accuracy Validation Accuracy Test Accuracy
`Training without validation 99.30% - 99.19%
`Training with validation *99.34% 99.06% 99.14%
^Training with Vanilla RNN *95.18% - 95.86%
^Training with GRU *99.42% - 98.97%
^Training with LSTM *99.24% - 98.85%
^Training with Bidirectional LSTM *99.16% - 98.89%

* - running accuracy; ` - trained for 4 epochs; ^ - trained for 8 epochs;


Todo

  • data exploration
  • train model with validation
  • experiment how RNNs do on image data
  • add data augmentation
  • deploy with flask

About

A PyTorch implementation of CNNs and RNNs on MNIST handwritten digits.

License:MIT License


Languages

Language:Jupyter Notebook 99.6%Language:Python 0.4%