Learn R Programming

rlibkriging (version 0.8-0.1)

leaveOneOutFun.Kriging: Compute Leave-One-Out (LOO) error for an object with S3 class "Kriging" representing a kriging model.

Description

The returned value is the sum of squares \(\sum_{i=1}^n [y_i - \hat{y}_{i,(-i)}]^2\) where \(\hat{y}_{i,(-i)}\) is the prediction of \(y_i\) based on the the observations \(y_j\) with \(j \neq i\).

Usage

# S3 method for Kriging
leaveOneOutFun(object, theta, grad = FALSE, bench = FALSE, ...)

Value

The leave-One-Out value computed for the given vector

\(\boldsymbol{\theta}\) of correlation ranges.

Arguments

object

A Kriging object.

theta

A numeric vector of range parameters at which the LOO will be evaluated.

grad

Logical. Should the gradient (w.r.t. theta) be returned?

bench

Logical. Should the function display benchmarking output

...

Not used.

Author

Yann Richet yann.richet@irsn.fr

Examples

Run this code
f <- function(x) 1 - 1 / 2 * (sin(12 * x) / (1 + x) + 2 * cos(7 * x) * x^5 + 0.7)
set.seed(123)
X <- as.matrix(runif(10))
y <- f(X)

k <- Kriging(y, X, kernel = "matern3_2", objective = "LOO", optim="BFGS")
print(k)

loo <-  function(theta) leaveOneOutFun(k, theta)$leaveOneOut
t <-  seq(from = 0.001, to = 2, length.out = 101)
plot(t, loo(t), type = "l")
abline(v = k$theta(), col = "blue")

Run the code above in your browser using DataLab