a machine learning app that recognizes handwritten numbers and predicts which.
275
This repository contains a containerized version of NumNet, a neural network for classifying handwritten digits (0–9) using the MNIST dataset. Built with TensorFlow and Keras, NumNet demonstrates core deep learning techniques in a clean and accessible format. The project includes both a training pipeline and a Flask-based web interface for predicting digits from user-provided images.
The Docker container ensures a consistent runtime environment, enabling users to run the application without manually installing dependencies or configuring Python and TensorFlow.
NumNet integrates a simple CNN architecture with a web-based interface:
Training_Notebook.ipynb) and a script (Train.py) for training or retraining the model.models/ folder as NumNet.keras for immediate deployment.app.py) serves predictions via a simple UI where users can submit images of handwritten digits.This architecture provides a full workflow from data preparation, model training, and evaluation to interactive digit prediction.
Handwritten Digit Classification
Classifies digits 0–9 from images using a CNN model trained on MNIST.
High Accuracy
Achieves 91% accuracy on test data, providing a reliable baseline for experimentation.
Training & Model Export
Supports both interactive training via Jupyter Notebook and scripted training via Train.py. Exported models are stored for immediate use.
Flask Web Interface
Users can upload or draw digits and receive real-time predictions through a lightweight UI.
Containerized Deployment
Docker image encapsulates all dependencies, enabling consistent execution across systems without local setup.
First, pull the Docker image:
docker pull keneandita/numnet
Run the container while exposing the Flask port:
docker run -p 5000:5000 keneandita/numnet
After the container starts, open the web app in a browser:
http://localhost:5000
Users can then submit images of handwritten digits to receive real-time predictions. Alternatively, the model can be trained manually using Train.py or the Jupyter notebook if the exported model is not already available.
Content type
Image
Digest
sha256:c010abf26…
Size
889.5 MB
Last updated
about 1 year ago
docker pull keneandita/numnet