Week 7 content of Scribble AI
Hello all! I hope the content for last week regarding Pytorch was helpful and you were able to train a model on the MNIST dataset and possibly even test it.
As mentioned in the last week's content, the article posted each week from now on will be more about pointing you towards the right direction instead of walking the way with y'all. With that out of the way, we will now focus on the Google QuickDraw dataset, which is the main element of this entire project. In the coming few weeks, you will see all the work come together. This is a general overview of what is to come.
- Getting familiar with the Google Quickdraw dataset
- Training the Pytorch model on a handful subset of the dataset
- Once a working model is setup, get back to Streamlit and connect the two so that whenever someone draws a doodle on the Streamlit app, the image is sent to the model in the backend and then a predicted is outputted.
To get started, we will first install Google Quickdraw
pip install quickdraw
Here are the relevant links to their Github page and documentation.
https://github.com/martinohanlon/quickdraw_python
https://quickdraw.readthedocs.io/en/latest/api.html
The docs explain it really really well and also give out the code on how to download certain types of doodles. I am leaving it to you to play around with it and download whatever doodle(s) you seem interested to work first in.
When you download the certain doodle images you want, it will automatically create a folder in the same directory as your Python file and will place the images there. The images will be in binary format.
Since you all were exposed to Pytorch and how to train models with it in the previous week, I trust that you can do the same here as well. The binary image files are just files. You should be able to read them in using the Python Image library (look up online, look up online, look up, look up, look up). Then train the handful of images you download with Pytorch. For starting out, I would recommend maybe choose only Ants, Cats, and Dogs? Or whatever else you might prefer.
Yes, that was it for this week. As we are nearing the end, this week's and next week's content will mostly focus on Pytorch helpful stuff. So you have two weeks or more to just play around with Pytorch and train the model on whatever Google doodle images you prefer. For the last two week's of content, we will connect it all together by having Streamlit ready as a front end and using the Pytorch model you created to act as the Doodle Recognition AI.