Projects

Things I built to find out whether they’d work.

Published research, coursework I took further than the assignment asked, and a couple of projects that existed purely because the idea wouldn’t leave me alone. Newest first.

2026 · AAAI

TRUST — Transaction Risk via Unified Sequence and Topology

The question was whether a buyer’s transaction history and their position in the buyer–seller graph say the same thing about delivery-refusal risk. They don’t: a transformer over sequences and topological signal from the interaction graph turn out to be complementary. Co-authored, and the model scores every order placed on Meesho at checkout.

−2% platform RTO 20 ms serving

2022 · M.Tech. thesis

Consistent and Uncertainty-Driven SLAM

Monocular SLAM built on predicted depth inherits every mistake the depth network makes. So I fed per-pixel uncertainty into the pipeline as a first-class input rather than a post-hoc score, added a temporal-consistency objective across the video, and trained the depth model with no ground truth at all — by backpropagating an ORB-SLAM trajectory signal through gradSLAM.

−15% ATE in 5 epochs beats D3VO · gradSLAM · DROID-SLAM

2021 · Information Retrieval

Spotify Million Playlist Dataset Challenge

Playlist continuation from a seed set of tracks. Neural collaborative filtering against a well-tuned nearest-neighbour baseline — and the baseline won, which is the more useful result. NDCG@500 of 0.215 versus 0.332.

Prof. Srikanta Bedathur, IIT Delhi.

2020 · Information Retrieval

Vector-space retrieval with wildcard and entity queries

An end-to-end tf–idf retrieval system supporting prefix wildcards (mit*) and typed entity queries (L:new* → documents mentioning New York). Replacing the linear posting-list scans with a hash-based index cut construction time 17%.

1st of 76 by NDCG −17% index build time

2020 · Independent

YT-Connect — synchronised video watching

Co-watching for YouTube and Vimeo, built on Node.js socket programming: an event-driven channel between browser and server keeps playback state consistent across everyone in a room. Independent rooms, live chat, and a shared ambient-lighting control, because why not.

2020 · Independent

Smart Filter

An excuse to take one model the whole distance: semantic segmentation and facial feature recognition behind a Flask app, containerised and deployed. The part worth learning was never the model.

2019 · Computer Vision

3D object augmentation with ArUco markers

Recovered camera intrinsics from multiple marker views, solved for the homography from marker pose, and augmented 3D objects into the scene. Then extended it into a two-marker AR ping-pong game driven by real-time pose estimation across both marker planes.

2020 · Machine Learning

Detecting virus-infected files

Decision trees built from scratch — gini-index splits, then pruning — before handing the same problem to grid-searched random forests to see how much the ensemble was really worth. 0.807 accuracy on the UCI dataset.

Also

World rank 989 of 96,000 at Google Code Jam 2020.

Qualification round. Top 0.5% nationally in JEE Mains 2017 and top 2% in JEE Advanced, out of 1.1 million candidates — the last time a percentile meant anything to me.