# Gaussian process regression and statistical testing

### Description

This package implements the non-stationary gaussian processes for
one- and two-sample cases, and statistical likelihood ratio tests
for distinguishing when two time-series are significantly different.
The package offers two main functions: `gpr1sample`

and
`gpr2sample`

.

### Details

The function `gpr1sample`

learns a gaussian process model
that uses either stationary or non-stationary gaussian kernel, which
assumes a perturbation at (time) point 0. The non-stationarity is controlled
by a time-dependent lengthscale in the gaussian kernel. The time-dependency
*l - (l - l_{min})e^{-ct}* follows exponential
decay, such that it starts at value `l.min`

and grows logarithmically
to `l`

by curvature parameter `c`

.

In `gpr2sample`

we compare control and case time-series by
building GP models for both of them individually, while also building a
third null model for joint data (assume that data come from the same process).
The null model and the case/control models are then compared with likelihood
ratios for significant different along time. The package includes standard
marginal log likelihood (MLL) ratio, and three novel ones: expected marginal log
likelihood (EMLL) measures the ratio between the models while discarding data;
posterior concentration (PC) ratio measures the difference of variance between
null and individual models; and noisy posterior concentration (NPC) ratio also
compares observational noises.