This repository contains my solution for Assignment 1 of Deep Learning: a from-scratch Multi-Layer Perceptron (MLP) implemented in NumPy (no autograd). It covers the full training pipeline — forward pass, backward pass, Softmax cross-entropy loss, ReLU/Sigmoid activations, L2 regularization, and accuracy evaluation — on the MNIST dataset.
- Pure NumPy implementation (no PyTorch/TensorFlow autograd)
- Layers & utilities:
affine_forward / affine_backward,relu_forward / relu_backward,sigmoid_forward / sigmoid_backward,softmax_loss - Support for L2 weight decay and basic optimizers (SGD / momentum / Adam—if enabled)
- Clear separation of computations with cache values for backprop
- Evaluation with accuracy metric on validation/test