This assignment is about Convolutional Neural Networks. You will do object recognition using CNN. The implementation is to be done with PyTorch and the dataset is CIFAR10. The easiest way to set up your environment is to use Colab.

__Data set:__

You will use the CIFAR-10 dataset. It consists of 60000 32x32 color images in 10 classes, with 6000 images per class. There are 50000 training images and 10000 test images.

__Questions__

**Q1 **Run the CNN for 10 epochs (# of passes through the training set) and record the accuracy of the test set per epoch. Then, drop the conv layers and modify the code to get a simple neural network. Change the number of hidden layers from 0 to 4 and record the model's accuracy per epoch. Compare the accuracy of the CNN with the simple neural networks with 0,1,2,3,4 hidden layers. Each hidden layer has 120 nodes with Relu as non-linearity. Plot the test accuracy (computed on the test set) versus epochs. 10 epochs may not be enough to reach the convergence, but it is enough to see the trend. Create a single figure. Your figure must have 6 curves, one for CNN and five for the simple neural network with 0,1,2,3,4 hidden layers. Explain why some models perform better than others?

**Q2 **Create a new model by replacing the Relu unites with Sigmoid unites in the CNN. Plot the test accuracy versus epoch number for 10 epochs. Create a single figure. Your figure should contain two curves. One for the model with Relu units and one for the model with Sigmoid units. Explain the results.

**Q3** The provided CNN network uses 5x5 filters with valid convolution. Design three new

models by changing the filter size to 3x3 and/or the convolution type to the same convolution. Run the new models for 10 epochs. Plot the accuracy on the test set versus epoch number for the four models. Create a single figure. Your figure should contain four curves corresponding to 1- (5x5 filters, valid convolution), 2-(3x3 filters, valid convolution), (5x5 filters, same convolution) and 4-(3x3 filters, same convolution). Explain why some models perform better than others? Use print(Net()) to generate a summary of the structure of your model. Repeat this for the four models and attach the output

generated by print(Net()).

Contact Codersarts for any such project/assignment helpAssignment Help

## Kommentarer