Karhunen Loève decomposed Gaussian processes with forward variable selection
Project description
FoKL
Karhunen Loève decomposed Gaussian processes with forward variable selection. Use this package for scalable GP regression and fast inference on static and dynamic datasets.
How to Use
To install: 'pip install FoKL', or clone this repo
Once installed, import the package into your environment with:
import FoKL
and then the proper routines with:
from FoKL import FoKLRoutines
from FoKL import getKernels
for ease of use it is recommended to call the class with an abreviation 'fkl' s:
fkl = FoKLRoutines.FoKL()
Now you are ready to beginning creating your model. FoKL depends on a kernel to do its linear regression, these kernels can be called with the 'getKernel()' function. The getKernel() function calls a collection of splines that is good for general use, but future updates can add more kernels.
phis = getKernels()
Once the kernel is defined, you can initialize your model the required hyper paramters.
model = fkl(phis, relats_in, a, b, atau, btau, tolerance, draws, gimmie, way3, threshav, threshstda, threshstdb, aic)
- The definition of each of these hypers can be found within the function documentation.
With the model defined the training can begin by calling the fit function:
model.fit( Normalized Training Inputs, Training Data)
- documentation of fit() inputs and outputs can be found in the function documentation.
The console will display the index and bic of the model being built in real time. Once completed the model can be validated with the coverage3 function:
model.converage3(Normalized Test Inputs, Test Data, draws, plots)
- documentation of coverage inputs and outputs can be found in function documentation.
Cover
Citations
Please cite: K. Hayes, M.W. Fouts, A. Baheri and D.S. Mebane, "Forward variable selection enables fast and accurate dynamic system identification with Karhunen-Loève decomposed Gaussian processes", arXiv:2205.13676
Credits: David Mebane (ideas and original code), Kyle Hayes (integrator), Derek Slack (Python porting)
Funding provided by National Science Foundation, Award No. 2119688
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.