The primary objective of this programming test is to assess the problem-solving and programming abilities of the applicants. By presenting them with an uncommon coding problem, the test aims to gauge the applicants proficiency in devising a solution to a real-world challenge. The assessment strives to select individuals who demonstrate a solid foundation in problem-solving and programming, ensuring they are well-equipped to contribute effectively to the organization's technical endeavors.
For the following programming test, we will use the CIFAR10 dataset. You can read about this dataset and download it from here.
Follow the instructions below to write your program. Please write your program using Pytorch. Upload your code to your GitHub repository using this template and send us the link to your repository. Please make sure your repository is public.
- Download the CIFAR10 dataset.
- Write a code that takes images with labels deer and truck from the training and test subsets of CIFAR10 dataset.
- Design a Convolutional Neural Network (CNN) with four convolutional layers and two fully connected layers that outputs two probabilities. One for class deer and one for class truck.
- Train your CNN on the images labeled deer and truck for 30 epochs.
- Plot the training loss/accuracy and validation loss/accuracy of the model per epoch during training.
- Plot two images labeled deer that the model predicts correctly and two images labeled deer that the model predicts wrongly.
- Plot two images labeled truck that the model predicts correctly and two images labeled truck that the model predicts wrongly.
IMPORTANT: Your code should be able to run directly on the CIFAR10 dataset files provided at the above link.
The following files should be provided:
- A file/files (in .py or .ipynb format) containing the code that does all the steps listed above.
- A plot that shows the training loss/accuracy of the model.
- A plot that shows the validation loss/accruacy of the model.
- A plot that shows two images with labels deer that the model predicts correctly and two images with labels deer that the model predicts incorrectly.
- A plot that shows two images with labels truck that the model predicts correctly and two images with labels truck that the model predicts incorrectly.
Please provide Information about how to setup the environment to be able to run your code.
Please provide information about where the requested outputs are located and in what order the code should be run.