Image classification via convolutional neural networks #
The aim of this exercise is to give you an opportunity to build and train an image classifier using a convolutional neural network. Keras comes with four image data sets: MINST, Fashion MNIST, CIFAR, and CIFAR100. The first two are black and white, the last two color. You can find out more about them here.
Follow this outline as you work. A Colab notebook is available as always.
- Choose one of these data sets to work on. Spend a little time familiarizing yourself with it.
- Build and train a convolutional neural network that classifies these images. Experiment with different architectures and network sizes. If you find that your networks are overfitting, use dropout regularization. It takes one parameter.
- Examine the convolutional filters which your network learned. For at least some of them, can you guess what the network is trying to detect?
- Compare your results with the state-of-the-art (SOTA) for your chosen data set. How well did you do in your time-limited effort?
Homework exercise: Describe your experiments. Which network architectures gave you the best results? Did any of them lead to interpretable filters? How well did your work stack up to SOTA?