Assignment 3
In this assignment, you will use a technique called “data augmentation” which is often used in deep learning when the training data is small. “Data augmentation” simply means the generation of artificial data to increase the training size so that deep learning model doesn’t overfit and improves its prediction accuracy.
NOTE: data augmentation is only applied to the TRAINING SET and not to the testing set.
You are given a folder “Assignment3” which contains only dog and cat images from cifar10 data set. The following are contained in “Assignment3” folder.
There is also a python code called “Augmentation.py”, which will create two additional images (You can create more additional images by changing the variable ‘NUM_ROTATE’ in line#31 of the code) for each original image by rotating the original image randomly with a degree between -45 degrees and 45 degrees. This script will create a folder augmentation/train/ that will contain the original images + the additional images. The rotated images’ name with start with ‘rotated’. This script will also create a file augmentation/train_class_labels.txt that contain the class labels for images in augmentation/train/.
Since this is computationally intensive, your goal is to test the cnn model (which may not be the optimal architecture) architecture, with the following layers below.
Layer # |
layer |
notes |
1 |
2-dimensional CNN layer |
32 (3,3) kernels, RELU activation |
2 |
2-dimensional max pooling |
Pooling size of (2, 2). Add batch normalization and dropout of 0.2. |
3 |
2-dimensional CNN layer |
64 (3,3) kernels, RELU activation |
4 |
2-dimensional max pooling |
Pooling size of (2, 2). Add batch normalization and dropout of 0.3. |
5 |
Dense layer |
100 nodes, RELU activation. Add batch normalization and dropout of 0.5. |
6 |
Output layer |
10 nodes, softmax activation |
But, the learning rate hyperparameter in the optimizer should be varied.
Report a table for the accuracies on the testing set (Note the testing set is same):
|
lr =0.05 |
lr =0.001 |
lr =0.0005 |
Model trained on original training data set |
? |
? |
? |
Model trained on augmented training data set |
? |
? |
? |
Plot the optimization history for the best learning rate for
NOTE:
Since this is binary classification:
DescriptionIn this final assignment, the students will demonstrate their ability to apply two ma
Path finding involves finding a path from A to B. Typically we want the path to have certain properties,such as being the shortest or to avoid going t
Develop a program to emulate a purchase transaction at a retail store. Thisprogram will have two classes, a LineItem class and a Transaction class. Th
1 Project 1 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of
1 Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of