-
Notifications
You must be signed in to change notification settings - Fork 0
[from-scratch] feed forward neural network that can recognize handwritten digets
License
lbirkert/digit_recognition_from_scratch
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
## about ## This is my attempt to create a digit recognition neural network from scratch (without machine learning frameworks, only numpy + math). It consists of one input layer (for the 28 * 28 grayscale pixel values), 2 hidden layers (each with 10 nodes) and one output layer (which corresponds which digit is the most likely). It uses relu activation layers for the hidden layers and a softmax activation layer for the output layer. It uses the MSE as the loss function. The error in this case is the model output subtracted by a one hot vector of the expected output. It uses standard backpropagation with a constant learning rate and stochastic learning to update the weight matrix. The weights are initialized using a normal distribution, as described in the research paper of Le Cun et al. I could get this model accurate up to 96%. ## dependencies ## - numpy - matplotlib ## running ## `python3 main.py` This will initialize the model and start training. Periodically a matplotlib window will be opened showing a sample of test images and the model prediction to visualize the model's accuracy. ---- This project is licensed under the MIT license (c) 2024 Lucas Birkert
About
[from-scratch] feed forward neural network that can recognize handwritten digets
Topics
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published