You are on page 1of 1

Object recognition using deep learning architectures

This assignment gives you practice with the prevalent tools in object recognition. You will design and
train deep convolutional networks for recognition using PyTorch, following up with the tutorial in TF that
you saw in the sessions.

These different approaches (starting the training from scratch or fine-tuning) represent the most
common approach to recognition problems in computer vision today -- train a deep network from
scratch if you have enough data (it's not always obvious whether or not you do), and if you cannot then
fine-tune a pre-trained network instead.

You would run small CNNs on 1. MNIST, and 2. CIFAR10. These examples are already present in the PT
online doc. You have to tune your hyperparameters to achieve different results and observe what
changes when you prefer certain hyperparameter choices.

First you will train a simple network from scratch. Report the performance of this simple network.

Then, you will modify the dataloader to include a few extra pre-processing steps. Pre-processing data
allows the network to be more robust against small variations in the data. Examples of pre-processing
transforms are jittering, flipping, and normalization. You will also modify the simple network by adding
dropout, batch normalizations and more layers. Report your findings.

In the end for your curiosity, you may instead fine-tune a pre-trained deep network to achieve more
accuracy on the task.

You might also like