Deep Learning based project with Simple Feed Forward Neural Network for recognition of handwritten digits.
A simple deep learning project for recognizing handwritten digits (0–9) from the MNIST dataset. Built using TensorFlow/Keras, the model achieves high accuracy (>97%) on the test dataset.
-
MNIST: 70,000 grayscale images of handwritten digits.
- Training: 60,000 images
- Testing: 10,000 images
-
Each image is 28×28 pixels.
This project explores multiple Keras Sequential Models:
model = keras.Sequential([
keras.layers.Dense(10, input_shape=(784,), activation='sigmoid')
])model = keras.Sequential([
keras.layers.Dense(100, input_shape=(784,), activation='relu'),
keras.layers.Dense(10, activation='sigmoid')
])model = keras.Sequential([
keras.layers.Flatten(input_shape=(28, 28)),
keras.layers.Dense(100, activation='relu'),
keras.layers.Dense(10, activation='sigmoid')
])Clone this repository and install dependencies:
git clone https://github.com/yourusername/HandwrittenDigitsRecognition.git
cd HandwrittenDigitsRecognition
pip install -r requirements.txtOr install manually:
pip install tensorflow matplotlib seaborn numpyRun the Jupyter notebook:
jupyter notebook HandwrittenDigitsRecognition.ipynb- Achieved 97%+ accuracy on the MNIST test dataset.
- Below is the confusion matrix visualization:
- Use Softmax instead of Sigmoid for multi-class classification.
- Implement Convolutional Neural Networks (CNNs) for higher accuracy.
- Add Dropout/BatchNorm for better generalization.
- TensorFlow/Keras
- MNIST Dataset by Yann LeCun
This project is licensed under the MIT License.
