For the final project at Makers, I chose Art/Music AI as my topic of choice. I was assigned to a team called 'AJAK' to build a project of our choice.
For our project, we ended up using a Convolutional Neural Network Machine Learning model to classify doodles. The aim was for the user to input a doodle and the model outputs a prediction on what the user has drawn. In our app, the user can draw a camera, crown or rabbit.
We all came into the project with no/little knowledge on Machine Learning. We only had 1 1/2 weeks to complete the project, so it was a big achievement for us when we delivered our product on Demo Day!
You can check out our repo on Github!
Check out our app here: https://ajak-doodler.herokuapp.com/
If you missed the action, don't worry! You can catch up via LinkedIn, Twitter or Facebook.
Missed the May 2019 Demo Day event @ Makers? You can watch the presentations on Facebook.
Here are my top 5 reflections:
I went into the project with some theoretical knowledge on Machine Learning, but no implementation know-how at all. Within 10 days, I fell in love with deep learning technologies and now feel equipped to do my own projects!
Even before the model can be trained, there was a lot of decision-making on where to get the data from, what the format of the source data was and data exploration to explore what was possible given the dataset. Data processing was important to get the data into the right format for our model.
Given little team knowledge on Machine Learning, the first couple of days was spent on research. Whilst the other teams were putting code down, we hadn't produced any code yet. This didn't matter, as we took on a challenge and stuck to our team goals.
Personally, I learnt a lot from exploring a classification problem using the Handwriting MNIST dataset (literally the 'Hello World' of Machine Learning) and doing some crash courses using online tutorials.
We learned together as a team, used the whiteboard to break down our problem and made sure every team member understood the domain and choice of model. We chose to use a Convolutional Neural Network (CNN) in the end!
There were a couple of moments in the project where we had to make pivotal decisions on the pros and cons of the technical implementation and balancing against delivering our Minimum Viable Product (MVP).
Re-grouping as a team and diagramming ideas out made it easier to be on the same page and created the space for ideas to be generated and decisions to be made!
Having daily stand-ups, retrospectives and valuing communication over processes helped us to apply Agile theory to Agile practice! This made our team gel a lot better and made our project more engaging to create with the end-user in mind!
We delivered a kick-ass interactive project!
Thank you to my team for the wonderful journey into Machine Learning! :) You guys were awesome - a pleasure working with you all :)