Quickdraw-Image-Classification
Comparing different machine learning algorithms in Python to classify drawings made in the game 'Quick, draw!'.
Results:
After training with a batch size of 10 and using 30 epochs for training both the training and validation set of images.
The image sizes are 28x28 (std. MNIST dataset sizes)
The CNN is a 9-layer CNN which is composed of:
- A convolution layer of size 5x5
- A Max pooling layer of size 2x2
- A smaller convolution layer with size 3x3
- A Max pooling layer of size 2x2
- Dropout layer with a probability of 20%
- Flatten layer
- Fully connected layer with 128 neurons and rectifier activation.
- Fully connected layer with 50 neurons and rectifier activation.
- Output layer. Keras requires one hot encoding of the y labels:
Classification accuracy for 2 classes (20'000 training examples):
Convolutional Neural Network: 99.9%
Classification accuracy for 4 classes (20'000 training examples):
Convolutional Neural Network: 99.6%