Multi-Class Deep Learning Model for Rock Paper Scissors Using TensorFlow Take 1

Template Credit: Adapted from a template made available by Dr. Jason Brownlee of Machine Learning Mastery.

SUMMARY: The purpose of this project is to construct a predictive model using various machine learning algorithms and to document the end-to-end steps using a template. The Rock Paper Scissors dataset is a multi-class classification situation where we are trying to predict one of several (more than two) possible outcomes.

INTRODUCTION: When learning Computer Vision, especially the training of DNNs and CNNs to recognize and classify images, there is a shortage of suitable datasets. Laurence Moroney wanted to fix that problem by creating a dataset that could be used for teaching multi-class classifiers that were unique and distinct from existing datasets. Laurence also wished to see if he could use Photo-real CGI to train a neural network that could then recognize and classify real images with the same subject matter.

The Rock Paper Scissors dataset contains images from a variety of different hand poses with different races, ages, and genders. These images have all been generated using CGI techniques as an experiment in determining if a CGI-based dataset can be used for classification against real photos. All of this data is posed against a white background, and each image is 300×300 pixels in 24-bit color.

In this Take1 iteration, we will construct and tune machine learning models for this dataset using TensorFlow with two VGG blocks. Laurence also demonstrated the dataset using a model with four VGG blocks, each block with just one convolution layer. We will observe the best result that we could obtain using different VGG-2 models with a different number of convolution layers.

ANALYSIS: From this Take1 iteration, the performance of the baseline model achieved an accuracy score of 97.85% on the validation dataset after 15 epochs. After a series of modeling trials, the TensorFlow model with two VGG blocks and two convolution layers processed the validation dataset with an accuracy score of 95.16%.

CONCLUSION: For this dataset, the model built using TensorFlow with two VGG blocks did not improve the result from the baseline model. However, we still should consider using TensorFlow and VGG blocks to model this dataset further.

Dataset Used: Rock Paper Scissors Dataset

Dataset ML Model: Multi-classification with numerical attributes

Dataset Reference: http://www.laurencemoroney.com/rock-paper-scissors-dataset/

The HTML formatted report can be found here on GitHub.