A Visual Exploration of Gaussian Processes
The point that combining kernels lets you compose arbitrarily complex functions could come in the beginning. That's sort of why GPs are so exciting in the first place.<p>In particular, there's a kernel we could call a "change point," which is a way to have a totally different model fitted before a point in time versus after. It's used frequently in Automatic Statistician fitted models (<a href="https://automaticstatistician.com/examples/" rel="nofollow">https://automaticstatistician.com/examples/</a>) which in my opinion are the state of the art of what you can use GPs for. They also developed a "LISP" like representation of the GP kernels, which lets them sample functions, fit them, and publish the simplest ones.<p>You can see an example of, "Create GP functions and try fitting them" here: <a href="https://github.com/probcomp/notebook/blob/master/tutorials/extrapolation-with-gp.ipynb" rel="nofollow">https://github.com/probcomp/notebook/blob/master/tutorials/e...</a> . Near the end of the notebook, you can see the "source code" of the fitted GP function. Note this implementation supports change points, but does not happen to need them on the sample data.<p>But generally, I wonder in which applications GP shines.<p>On the one hand, with its emphasis on time series data, GP has a lot to offer to finance, especially options pricing. On the other hand, GP boils down to "the near future looks a lot like the near past," which most people already know.<p>Clearly, what we want to know is: when will change points occur? Whoever cracks that nut has found GP its breakthrough application.<p>It should be clear from the example that some form of fitting over the <i>generation</i> of "Gaussian Process Programs" is a good first step.