What I Built
Built deep learning architectures from scratch — from feed-forward networks to Variational Autoencoders — using only NumPy and PyTorch. Implemented FFN, CNN variants (LeNet-5, AlexNet, VGG-11, ResNet), RNN, LSTM, and β-VAE with applications spanning baby name generation, English-French translation with attention, and latent space interpolation.
What I Learned
Backpropagation is beautiful when you implement it manually. Building LSTM cells from scratch in NumPy taught me exactly how gradients flow through time and why vanishing gradients happen. The reparameterization trick in VAEs and ELBO optimization gave deep insight into probabilistic modeling. Modern architectures (ResNet skip connections, attention mechanisms) solve fundamental problems in gradient flow and information preservation.
Key Results
| Architecture | Task | Implementation |
|---|---|---|
| FFN | MNIST classification | NumPy from scratch |
| CNN (LeNet → ResNet) | CIFAR-10 classification | Progressive complexity |
| RNN / LSTM | Baby name generation, translation | NumPy + PyTorch |
| Seq2Seq + Attention | English-French translation | PyTorch |
| β-VAE | Latent space interpolation | PyTorch |
Project
Tech Stack: NumPy, PyTorch | Architectures: FFN, CNN variants (LeNet-5, AlexNet, VGG-11, ResNet), RNN/LSTM, Seq2Seq + Attention, β-VAE
Citation
@online{prasanna_koppolu,
author = {Prasanna Koppolu, Bhanu},
title = {Deep {Learning} from {Scratch}},
url = {https://bhanuprasanna2001.github.io/projects/dl_from_scratch.html},
langid = {en}
}