$29
You should complete the notebooks in order, i.e., CNN-Layers, followed by CNN-BatchNorm, followed by CNN. This is due to potential dependencies. Note however, that CNN can be completed without CNN-Layers, since we provide the fast implementation of the CNN layers to be used in question 3.
1. (40 points) Implement convolutional neural network layers. Complete the CNN-Layers.ipynb Jupyter notebook. You will have to copy over your solutions for layers.py and optim.py from HW #4 into nndl/. Print out the entire workbook and relevant code and submit it as a pdf to gradescope. Download the CIFAR-10 dataset, as you did in earlier homework.
2. (20 points) Implement spatial normalization for CNNs. Complete the CNN-BatchNorm.ipynb Jupyter notebook. Print out the entire workbook and relevant code and submit it as a pdf
to gradescope.
3. (40 points) Optimize your CNN for CIFAR-10. Complete the CNN.ipynb Jupyter note-book. Print out the entire workbook and relevant code and submit it as a pdf to gradescope.
1