$35
EE239AS Homework #5
Neural Networks & Deep Learning .
100 points total.
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 CNNLayers.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 notebook. Print out the entire workbook and relevant code and submit it as a pdf to gradescope.
1