Preet Sojitra

Featured Projects

Depression Detection through Speech Analysis

An end-to-end research project to detect depression from speech recordings using the DAIC-WOZ dataset. Systematically evaluated a range of models, from classic CNNs (VGGNet, ResNet) to Vision Transformers (ViT), on spectrograms and raw audio data.

Accomplishment: Gained experience in the full research pipeline, including feature engineering for audio, comparative model benchmarking, and handling class imbalance.

imgcv: A Image Processing Library from Scratch

Developed and published a Python package on PyPI that re-implements core image processing OpenCV functions from the ground up using only NumPy. The goal was to build a deep, fundamental understanding of how computer vision and image processing algorithms work under the hood.

Accomplishment: Solidified my understanding of algorithms for filtering, color space manipulation, morphological operations, and edge detection.

nanoGPT: Building a Transformer from Scratch

Implemented a decoder-only GPT-style language model from scratch in PyTorch, training it to generate text in the style of Shakespeare. This project was a deep dive into the fundamental mechanics of the Transformer architecture.

Accomplishment: Gained a code-level understanding of self-attention, which I am now extending to train a similar model on the more complex Sanskrit language.

Micrograd: An Autograd Engine in Python

A from-scratch implementation of a scalar autograd engine, demystifying the backpropagation process used in neural networks. Later extended to a PyTorch-like structure.

Accomplishment: Developed a deep understanding of how autograd works, including the mechanics of computing gradients and the chain rule.

Chorale Music Generation with LSTMs

Trained a Long Short-Term Memory (LSTM) network on a dataset of Bach chorales to generate novel, harmonically coherent musical sequences.

Accomplishment: Gained insights into sequence modeling and the unique challenges of generating structured outputs like music.