The Neural Network Number Guesser takes in the drawn digit from the user and uses a Convolutional Neural Network model to predict the drawn digit.
neural_network_number_guesser_demo_trimmed.mov
Some prerequesite knowledge of machine learning and how to implement a Convolutional Neural Network may be needed to fully understand how the model is working. To get a quick start on understanding the principles of machine learning, I recommend The Hundred-Page Machine Learning Book and for the more mathematically inclined, Mathematics For Machine Learning in conjunction with the previous text will cover a lot of basis. For implementing a Convolutional Neural Network, I recommend Kaggle's Computer Vision tutorial.
To get started, clone the repo by running the following in the command line:
git clone https://github.com/anthonypiegaro/Neural-Network-Number-Guesser.git
After cloning, I would also recommend creating a Python Virtual Environment. This can be done by running the follwing:
python3 -m venv venv
Then, you should activate your newly created virtual environment. You can do this by running the following in the command line:
source venv/bin/activate
Now, you virtual environment should be activated.
For this project, there a few dependencies that will be needed in order for the project to run. These dependencies are stored ni the requirements.txt file. Luckly, it is very easy to download these to your virtual environment.
pip3 install -r requirements.txt
You now should have all the dependencies downloaded and ready to go.
The app is ran with Flask. To start the app, you run the following in the command line:
flask run
The apps default port is 5000. This going to the following:
http://localhost:5000/
Now, you have a running app and can use the UI to draw numbers for the model to guess.
I hope you enjoy!