The task was to train a classification model based on a CIFAR dataset. As the official website mentions, the dataset consists of 60000 32×32 colour images in 10 classes: airplane, automobile, bird, cat, deer, dog, frog, horse, ship and truck. Object recognition is a task that largely depends on the level of semantic distance between concepts. It’s been quite easy to make distinctions between different types of clothing (as in the Fashion MNIST dataset) than it is to tell the difference between a cat and a dog, especially given that the images present objects in different lighting and color context. Therefore, at no point did I expect to achieve very high accuracy. However, I wanted to test out the dataset with various parameters, mostly changing the batch size and the number of epochs.
I started off with 100 epochs, as it is given in the example code. However, this process would be painstakingly long and the potential improvement would be marginal, so I decided to go for 3 epochs instead. Then, I tested the algorithm with 8 batch sizes. The results shown below are respectively for batch size 16, 23, 64, 128, 236, 512, 1024, and 2048:
The highest accuracy has occurred for batch size 16, (3 epochs) in which the returned accuracy value was above 0.6. It is not an incredibly high accuracy, however it accomplishes some level of accurate classification above chance. One limitation is the speed of my computer (I trained the examples on my MacBook Air) which took a significant amount of time.