MagmaClustR1.2.1 package

Clustering and Prediction using Multi-Task Gaussian Processes with Common Mean

dmnorm

Compute the Multivariate Gaussian likelihood

draw

Draw a number

gr_GP_mod_common_hp_k

Gradient of the penalised elbo for multiple mean GPs with common HPs

ini_mixture

Mixture initialisation with kmeans

kern_to_cov

Create covariance matrix from a kernel

kern_to_inv

Create inverse of a covariance matrix from a kernel

lin_kernel

Linear Kernel

list_kern_to_cov

Compute a covariance matrix for multiple individuals

select_nb_cluster

Select the optimal number of clusters

chol_inv_jitter

Inverse a matrix using an adaptive jitter term

data_allocate_cluster

Allocate training data into the most probable cluster

gr_clust_multi_GP

Gradient of the elbo for a mixture of GPs

check_symmetric

Round a matrix to make if symmetric

e_step

E-Step of the EM algorithm

elbo_clust_multi_GP_common_hp_i

Penalised elbo for multiple individual GPs with common HPs

elbo_clust_multi_GP

Evidence Lower Bound for a mixture of GPs

elbo_GP_mod_common_hp_k

Penalised elbo for multiple mean GPs with common HPs

elbo_monitoring_VEM

Evidence Lower Bound maximised in MagmaClust

expand_grid_inputs

Expand a grid of inputs

gr_clust_multi_GP_common_hp_i

Gradient of the penalised elbo for multiple individual GPs with common...

gr_GP_mod_common_hp

Gradient of the modified logLikelihood with common HPs for GPs in Magm...

gr_GP_mod

Gradient of the modified logLikelihood for GPs in Magma

gr_GP

Gradient of the logLikelihood of a Gaussian Process

gr_sum_logL_GP_clust

Gradient of the mixture of Gaussian likelihoods

hp

Generate random hyper-parameters

hyperposterior_clust

Compute the hyper-posterior distribution for each cluster in MagmaClus...

hyperposterior

Compute the hyper-posterior distribution in Magma

ini_kmeans

Run a k-means algorithm to initialise clusters' allocation

list_kern_to_inv

Compute an inverse covariance matrix for multiple individuals

logL_GP_mod_common_hp

Modified log-Likelihood function with common HPs for GPs

logL_GP_mod

Modified log-Likelihood function for GPs

logL_GP

Log-Likelihood function of a Gaussian Process

logL_monitoring

Log-Likelihood for monitoring the EM algorithm in Magma

se_kernel

Squared Exponential Kernel

m_step

M-Step of the EM algorithm

MagmaClustR

MagmaClustR : Clustering and Prediction using Multi-Task Gaussian Proc...

perio_kernel

Periodic Kernel

pipe

Pipe operator

plot_db

Plot smoothed curves of raw data

plot_gif

Create a GIF of Magma or GP predictions

plot_gp

Plot Magma or GP predictions

plot_magmaclust

Plot MagmaClust predictions

plot_samples

Display realisations from a (mixture of) GP prediction

pred_gif

Magma prediction for ploting GIFs

pred_gp

Gaussian Process prediction

pred_magma

Magma prediction

pred_magmaclust

MagmaClust prediction

proba_max_cluster

Indicates the most probable cluster

regularize_data

Regularise a grid of inputs in a dataset

rq_kernel

Rational Quadratic Kernel

sample_gp

Draw samples from a posterior GP/Magma distribution

sample_magmaclust

Draw samples from a MagmaClust posterior distribution

simu_db

Simulate a dataset tailored for MagmaClustR

simu_indiv_se

Simulate a batch of data

sum_logL_GP_clust

Compute a mixture of Gaussian log-likelihoods

train_gp_clust

Prediction in MagmaClust: learning new HPs and mixture probabilities

train_gp

Learning hyper-parameters of a Gaussian Process

train_magma

Training Magma with an EM algorithm

train_magmaclust

Training MagmaClust with a Variational EM algorithm

update_mixture

Update the mixture probabilities for each individual and each cluster

ve_step

E-Step of the VEM algorithm

vm_step

V-Step of the VEM algorithm

An implementation for the multi-task Gaussian processes with common mean framework. Two main algorithms, called 'Magma' and 'MagmaClust', are available to perform predictions for supervised learning problems, in particular for time series or any functional/continuous data applications. The corresponding articles has been respectively proposed by Arthur Leroy, Pierre Latouche, Benjamin Guedj and Servane Gey (2022) <doi:10.1007/s10994-022-06172-1>, and Arthur Leroy, Pierre Latouche, Benjamin Guedj and Servane Gey (2023) <https://jmlr.org/papers/v24/20-1321.html>. Theses approaches leverage the learning of cluster-specific mean processes, which are common across similar tasks, to provide enhanced prediction performances (even far from data) at a linear computational cost (in the number of tasks). 'MagmaClust' is a generalisation of 'Magma' where the tasks are simultaneously clustered into groups, each being associated to a specific mean process. User-oriented functions in the package are decomposed into training, prediction and plotting functions. Some basic features (classic kernels, training, prediction) of standard Gaussian processes are also implemented.

  • Maintainer: Arthur Leroy
  • License: MIT + file LICENSE
  • Last published: 2024-06-28