spleaf.term.MultiSeriesKernel#

class spleaf.term.MultiSeriesKernel(kernel, series_index, alpha, beta=None)#

Linear combination of a Kernel and its derivative applied to heterogenous time series.

This kernel allows to model efficiently several (heterogeneous) time series (\(y_i\)) which depend on different linear combinations of the same GP (\(G\)) and its derivative (\(G'\)):

\[y_{i,j} = \alpha_i G(t_{i,j}) + \beta_i G'(t_{i,j}).\]

The times of measurements need not be the same for each time series (i.e. we may have \(t_{i,.} \neq t_{j,.}\)).

This allows to define models similar to Rajpaul et al. (2015) but with fast and scalable algorithms.

Parameters:
kernelKernel

Kernel of the GP (\(G\)).

series_indexlist of ndarrays

Indices corresponding to each original time series in the merged time series.

alphalist

Coefficients in front of the GP for each original time series.

betalist or None

Coefficients in front of the GP derivative for each original time series. If None, the derivative is ignored.

Methods

eval(dt[, series_id])

Evaluate the kernel at lag dt.

set_conditional_coef([alpha, beta, series_id])

Set the coefficients used for the conditional computations.

set_conditionnal_coef(*args, **kwargs)

Same as the set_conditional_coef() method (here for backward-compatibility).