Question One
Cifar-10 Dataset is a dataset of 50,000 32×32 color training images and 10,000 test images, labeled in 10 categories. For more information, visit the CIFAR homepage. Using the provided starter code (Jupyter Notebook), complete the following tasks:
- Perform Data Preprocessing on the CIFAR-10 dataset to make it suitable for training Machine Learning models. Clearly document the steps involved.
- Implement at least two supervised learning models discussed in Module-6 and train them on the preprocessed CIFAR-10 dataset.
- Evaluate the performance of both models on the CIFAR-10 test dataset and report their accuracy.
- Analyze and discuss:
- The impact of your data preprocessing steps on the model’s performance. (It can be tested on one model or both.)
- Compare and discuss the accuracy of the two models.
– Include your code in the provided Jupyter Notebook file.
– Submit a brief report addressing tasks (3) and (4) with explanations, charts, or tables as needed
3 Mark
|
Question Two
In this task, you will build and evaluate neural network models for image classification on the CIFAR-10 dataset. Using the provided starter code (Jupyter Notebook), complete the following:
- Implement a simple Artificial Neural Network (ANN) using the framework of your choice (e.g., TensorFlow (Keras) or PyTorch). Train the model on the CIFAR-10 dataset. (Apply the required data pre-processing).
- Build and train a Convolutional Neural Network (CNN) for the same classification task. Ensure that your CNN architecture includes at least one convolutional layer, one pooling layer, and one fully connected layer.
- Compare the performance of the ANN and CNN on the CIFAR-10 test dataset, reporting their accuracy and any observations regarding their training processes.
- Discuss the following:
- The advantages of using CNNs over ANNs for image classification tasks.
- Any challenges you faced while training these models and how you addressed them.
Submission Requirements:
- Include your code for both models in the provided Jupyter Notebook file.
- Submit a brief report summarizing the results and addressing the discussion points in task (4).
2 Marks
|
Learning Recognize, formulate, and solve
|
Question Three
Using the models developed in Questions 1 and 2, evaluate their performance using a confusion matrix. Complete the following:
- Generate a confusion matrix for each model (Machine Learning and Neural Network-based) using the test dataset.
- Calculate and report the precision and recall for each class based on the confusion matrix using (classification report) from the scikit-learn library.
- Calculate and report the IoU metric for your models if applicable. If IoU cannot be evaluated for your specific models or tasks, explain why it is not appropriate.
- Discuss the importance of the confusion matrix, precision, and recall in evaluating classification models. Include observations about:
- How the models perform across different classes.
- Any strengths or weaknesses revealed by these metrics that might not be apparent from accuracy alone.
Submission Requirements:
- Include the code used to generate the confusion matrices and calculate precision and recall in the provided Jupyter Notebook file.
- Provide a brief report summarizing the confusion matrices, metrics, and your discussion.