Includes:
- Implementation of CNN (consisting of maxpool, relu, fully-connected and convolutional layers) using Numpy Vectorisation (from scratch without any third-party library)
- Studying the effects of different hyperparameters using hyperparameter tuning in pytorch implementation of CNN:
- learning rate (static or scheduled)
- loss functions
- Number of epochs
- Batch-sizes
- Adam and SGD optimisers
- Achieving best accuracy on CIFAR-10 datasets using different techniques like Batch, Group Normalisations, Weight decays and Dropout layers
Use CIFAR-10 dataset from this link and refer to unpickling details for python given in the website.
Refer to Report.pdf
for more implementation details and analysis part.