Skip to content

Feedforward backpropagation neural network classifier for MNIST digit datatset

Notifications You must be signed in to change notification settings

marzekan/Digit-classifier

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Digit Classifier

How to

For app to work you have to download and add the Train and Test .csv files to the same file where .exe file is.

Test and Train sets downloaded from this site: https://pjreddie.com/projects/mnist-in-csv/

Run the application, insert the number of learning iterations and you are good to go.

About

Simple feedforward backpropagation neural network written in C++ (Visual Studio) from scratch. The network is used for classifying digits from MNIST handwritten digit dataset and its use is purely educational.

The code is based on the code from the book Artificial Intelligence - A Systems Approach by M. Tim Jones, chapter 8., page 265 - 275.

Usefull links

(not implemented)Using Adam for weight optimization. https://machinelearningmastery.com/adam-optimization-algorithm-for-deep-learning/

Other optimization algorithms & explanatons: https://towardsdatascience.com/types-of-optimization-algorithms-used-in-neural-networks-and-ways-to-optimize-gradient-95ae5d39529f

Deciding the number of hidden layers and number of neurons in those layers is not a very clear deal. Different sources say different things and methods of calculating said numbers. Fortunately, there is a reasearch article that caluclates number of hidden layers and number of neurons for the MNIST digit dataset that is used in this application, page 10. https://arxiv.org/abs/1808.05979

About

Feedforward backpropagation neural network classifier for MNIST digit datatset

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published