Hands-on Experience with Gaussian Processes (GPs): Implementing GPs in Python - I
This is an incremental educational resource aimed at students and practitioners to deepen their understanding of GPs through practical implementation.
The authors tackled the problem of making Gaussian Processes (GPs) more accessible by providing a hands-on implementation guide in Python, resulting in a module that allows users to build GPs from scratch with minimal dependencies and includes examples using 1D dummy data.
This document serves to complement our website which was developed with the aim of exposing the students to Gaussian Processes (GPs). GPs are non-parametric Bayesian regression models that are largely used by statisticians and geospatial data scientists for modeling spatial data. Several open source libraries spanning from Matlab [1], Python [2], R [3] etc., are already available for simple plug-and-use. The objective of this handout and in turn the website was to allow the users to develop stand-alone GPs in Python by relying on minimal external dependencies. To this end, we only use the default python modules and assist the users in developing their own GPs from scratch giving them an in-depth knowledge of what goes on under the hood. The module covers GP inference using maximum likelihood estimation (MLE) and gives examples of 1D (dummy) spatial data.