Projects

Various projects and applications built to answer a question or just simply for fun. Anything I've built that I'm proud of.

2026

Simple Vector Database

Simple Vector Database is both a python package and a FastAPI app for a straightforward and easy to use vector database. Built with customisation and modularity in mind. …

Read more

FastAPI · Backend Development · Vector Database

2025

Elysia

Elysia is an agentic platform designed to use tools in a decision tree. A decision agent decides which tools to use dynamically based on its environment and context. You can use custom tools or use the pre-built tools designed to retrieve your data in a Weaviate cluster. …

Read more

LLMs · RAG · Agentic RAG · Vector Database

2023

Using Score-based Methods for Unnormalisable Probability Density Estimation

Classical statistical modelling such as maximum likelihood estimation relies on knowledge of the normalising constant of a probability density model. Under certain cases, for example where data are observed on a generic truncated domain, the normalising constant is intractable. Whilst conventional methods usually approximate this term via numerical integration, methods such as score matching and minimum Stein discrepancy estimators bypass its evaluation entirely. …

Read more

Density Estimation · Score Matching · Stein Discrepancies · Unnormalisable Density Estimation · Parameter Derivative Estimation

2020

Gaussian Process Classification

The second group project I worked on at COMPASS mainly involved learning how Gaussian process classification worked, as it is a complicated procedure, and not as straight forward as Gaussian process regression. …

Read more

Bayesian · Gaussian Process · Simulated Data · MCMC

2019

Chicago Crime Classification

A group project as part of the first term of the COMPASS CDT involved modelling different aspects of a large data set detailing crimes in Chicago. Pictured is a kernel density estimate of both the location of crimes in the city as well as the population. …

Read more

Classification · Spatial Statistics · Real Data · Big Data

2018

Downscaling Extremes of Precipitation in the South West

For my Masters dissertation project, I used extreme value theory to model the extremes of precipitation across the South West of the UK, and downscale sparse areas using a numerical weather model on a gridded scale. Pictured is the high resolution elevation levels across the South West, with a grid that samples the same elevation levels every 0.25 degrees in longitude and latitude. This highlights one of the problems with downscaling in such a scenario. …

Read more

Real Data · Big Data · Environment · GAM · Extreme Value Theory