Detecting and explaining emotions in video advertisements

This project aimed to create a model capable of detecting and explaining emotions in video advertisements. The final framework consists of two main stages: emotion detection and explanation generation.

Natural language decryption using MCMC

Using an advanced Markov Chain Monte Carlo sampling algorithm, I built an agent capable of decrypting encrypted texts.

Prolog soduko solver

Built a powerful Prolog-based Sudoku solver capable of tackling Sudoku puzzles of varying difficulty levels.

Sentiment analysis classifier

Built an interactive widget capable of detecting sentiment using both a logistic regression model and a Naive Bayes model.

OpenAI mountain car agent

Built a Q-learning agent capable of completing the mountain car game.

Mondrian tile problem solver

A solution to the challenging Mondrian Tile Problem, a classic problem in computational geometry.

A convolutional neural network for precise plankton classification

This project focused on developing a robust CNN-based solution capable of classifying images of plankton into one of 12 distinct classes.

TCP network connection using Python sockets

Built a solution that empowers developers to establish, manage, and communicate over TCP/IP networks effortlessly using Python’s socket library1.

Teaching the Baxter robot to play chess

Build a model leveraging computer vision and machine learning techniques to teach a robot chess.

Subreddit classification

Developed an NLP solution to automatically categorise Reddit posts into their most relevant subreddits.

Discovering C++ header dependencies

A multi-threaded solution to find dependencies in C++ files.