A web app where user can draw Bengali digit and the AI model can detect handwritten digit and predict the digit.
First Image | Second Image |
---|---|
Web App: Bengali Digit Recognizer
Framework: Pytorch
Datasets: NumtaDB: Bengali Handwritten Digits
Custom CNN model is used
CNN Layer | Linear Layer |
---|---|
Layers: 7 | Layers: 2 |
Normalization: BatchNorm2d | |
Pooling: MaxPool2d | |
Activation Function: ReLU | Activation Function: ReLU, Softmax |
Dropout: 0.25 | Dropout: 0.4 |
Hyper Parameters |
---|
Epoch: 25 |
Batch Size: 128 |
Learning Rate: 1e-3 |
Loss function: NLLLoss |
Optimizer: Adam |
Scheduler: StepLR |
Transformations: Resize(180), RandomRotation(30), |
Data Split: 20% |
Test Accuracy: 99.2890%
Class wise Accuracy |
---|
Test Accuracy of 0: 99% (1104/1111) |
Test Accuracy of 1: 99% (1095/1105) |
Test Accuracy of 2: 99% (1094/1099) |
Test Accuracy of 3: 98% (1080/1091) |
Test Accuracy of 4: 99% (1078/1087) |
Test Accuracy of 5: 99% (1088/1096) |
Test Accuracy of 6: 99% (1057/1067) |
Test Accuracy of 7: 99% (1050/1053) |
Test Accuracy of 8: 99% (1124/1127) |
Test Accuracy of 9: 99% (1051/1059) |
Test Accuracy (Overall): 99% (10821/10895) |
- Pandas
- Numpy
- PIL
- Matplotlib
The web app is deployed in Heroku
Web App: Bengali Digit Recognizer
First Image | Second Image |
---|---|
I have no experience in web design, so I use this website template from repo How to deploy a keras model to production Author: Siraj Raval
Shudipto Trafder
Slack Name: @Shudipto Trafder
Email: Shudiptotrafder@gmail.com
Linkedin: Shudipto Trafder