File size: 2,123 Bytes
1aab986 1ea44e9 1aab986 225f4af 1e5dbae 225f4af a785b32 225f4af a785b32 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
---
title: Digits
emoji: 🔢
colorFrom: indigo
colorTo: indigo
sdk: gradio
sdk_version: 3.12.0
app_file: app.py
pinned: false
license: apache-2.0
---
Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
This gradio app predicts digits using a convolutive neural network (CNN) that was trained on the MNIST hand-drawn digit data set:
@article{lecun2010mnist,
title={MNIST handwritten digit database},
author={LeCun, Yann and Cortes, Corinna and Burges, CJ},
journal={ATT Labs [Online]. Available: http://yann.lecun.com/exdb/mnist/},
volume={2},
year={2010}
}
The PyTorch network architecture:
Sequential(
(conv1): Conv2d(1, 32, kernel_size=(5, 5), stride=(1, 1), padding=(2, 2))
(relu1): ReLU()
(pool1): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
(conv2): Conv2d(32, 64, kernel_size=(5, 5), stride=(1, 1), padding=(2, 2))
(relu2): ReLU()
(pool2): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
(flatten): Flatten(start_dim=1, end_dim=-1)
(fc1): Linear(in_features=3136, out_features=1024, bias=True)
(dropout): Dropout(p=0.5, inplace=False)
(fc2): Linear(in_features=1024, out_features=10, bias=True)
)
The model was trained using cross entropy loss function, the Adam stochastic optimizer.
Training was done for 10 epochs, using batch size of 64, and with a learning rate of 0.001.
The training and validation accuracy after each epoch was as follows:
Epoch 1 ---- train accuracy: 0.9607 ---- val accuracy: 0.9885
Epoch 2 ---- train accuracy: 0.9870 ---- val accuracy: 0.9894
Epoch 3 ---- train accuracy: 0.9893 ---- val accuracy: 0.9892
Epoch 4 ---- train accuracy: 0.9925 ---- val accuracy: 0.9914
Epoch 5 ---- train accuracy: 0.9932 ---- val accuracy: 0.9872
Epoch 6 ---- train accuracy: 0.9947 ---- val accuracy: 0.9904
Epoch 7 ---- train accuracy: 0.9946 ---- val accuracy: 0.9888
Epoch 8 ---- train accuracy: 0.9947 ---- val accuracy: 0.9920
Epoch 9 ---- train accuracy: 0.9962 ---- val accuracy: 0.9912
Epoch 10 ---- train accuracy: 0.9960 ---- val accuracy: 0.9915 |