Gaussian process regression demo


The application demonstrates Gaussian process regression with one covariate and a set of different covariance kernels. The resolution in x-axis is 200 points over the whole shown interval. The noise parameter is the variance of the observation model. The visualization shows the uncertainty in the latent function via the samples and/or credible intervals (it does not include the predictive variance).

To learn about Gaussian processes in machine learning, see the Gaussian Processes for Machine Learning book by Carl Edward Rasmussen and Christopher K. I. Williams. For doing real data analysis using GP regression, see, for example, GPstuff for Matlab and Octave and GPy for Python.

The simulation of continuous trajectories is implemented using Hamiltonian Monte Carlo (HMC) with partial momentum refreshment and analytically solved dynamics for the Gaussian posterior distribution. An excellent reference for HMC is Radford M. Neal's MCMC using Hamiltonian dynamics.

The app is implemented in Javascript and uses React, D3.js, and Numeric.js libraries. The code is available at GitHub.