The covariance between the values of two tasks factorises into an inter-task matrix times an input kernel, so the joint covariance is a Kronecker product. A diagonal task covariance means the tasks share nothing and the model collapses to independent single-task GPs – the tests check that collapse exactly, because it is the only way to be sure the Kronecker indexing is the right way round.
Usage
Gpmlt(
X,
y_tasks,
X_test = NULL,
task_cov = NULL,
lengthscale = 1,
variance = 1,
noise = 0.01
)References
Bonilla, Chai and Williams (2008), Multi-task Gaussian process prediction, NIPS 20, eqs. (1)-(2).
Examples
Gpmlt(X = 5L, y_tasks = c(1, 2, 3, 4, 5, 6, 7, 8))
#> $estimate
#> [1] 0.990099
#>
#> $mean
#> [,1]
#> [1,] 0.990099
#> [2,] 1.980198
#> [3,] 2.970297
#> [4,] 3.960396
#> [5,] 4.950495
#> [6,] 5.940594
#> [7,] 6.930693
#> [8,] 7.920792
#>
#> $loglik
#> [1] -108.3814
#>
#> $tasks
#> [1] 8
#>
#> $n
#> [1] 1
#>
#> $method
#> [1] "K = K^f (x) K^x, Bonilla, Chai & Williams (2008) eqs. (1)-(2)"
#>
#> attr(,"class")
#> [1] "morie_rich_result" "list"
