validate {dgpsi}  R Documentation 
This function validate a constructed GP, DGP, or linked (D)GP emulator via the LeaveOneOut (LOO) cross validation or OutOfSample (OOS) validation.
validate(object, x_test, y_test, method, verb, force, cores, ...)
## S3 method for class 'gp'
validate(
object,
x_test = NULL,
y_test = NULL,
method = "mean_var",
verb = TRUE,
force = FALSE,
cores = 1,
...
)
## S3 method for class 'dgp'
validate(
object,
x_test = NULL,
y_test = NULL,
method = "mean_var",
verb = TRUE,
force = FALSE,
cores = 1,
threading = FALSE,
...
)
## S3 method for class 'lgp'
validate(
object,
x_test = NULL,
y_test = NULL,
method = "mean_var",
verb = TRUE,
force = FALSE,
cores = 1,
threading = FALSE,
...
)
object 
can be one of the following:

x_test 
the OOS testing input data:

y_test 
the OOS testing output data that correspond to

method 
the prediction approach in validations: meanvariance ( 
verb 
a bool indicating if the trace information on validations will be printed during the function execution.
Defaults to 
force 
a bool indicating whether to force the LOO or OOS reevaluation when 
cores 
the number of cores/workers to be used for the LOO or OOS validation. If set to 
... 
N/A. 
threading 
a bool indicating whether to use the multithreading to accelerate the LOO or OOS. Turning this option on could improve the speed of validations when the emulator is built with a moderately large number of training data points. 
See further examples and tutorials at https://mingdeyu.github.io/dgpsiR/.
If object
is an instance of the gp
class, an updated object
is returned with an additional slot called loo
(for LOO cross validation) or
oos
(for OOS validation) that contains:
two slots called x_train
(or x_test
) and y_train
(or y_test
) that contain the validation data points for LOO (or OOS).
a column matrix called mean
, if method = "mean_var"
, or median
, if method = "sampling"
, that contains the predictive means or medians of the
GP emulator at validation positions.
three column matrices called std
, lower
, and upper
that contain the predictive standard deviations and credible intervals of the
GP emulator at validation positions. If method = "mean_var"
, the upper and lower bounds of a credible interval are two standard deviations above
and below the predictive mean. If method = "sampling"
, the upper and lower bounds of a credible interval are 2.5th and 97.5th percentiles.
a numeric value called nrmse
that contains the (minmax) normalized root mean/median squared error of the GP emulator. The minmax normalization
is based on the maximum and minimum values of the validation outputs contained in y_train
(or y_test
).
The rows of matrices (mean
, median
, std
, lower
, and upper
) correspond to the validation positions.
If object
is an instance of the dgp
class, an updated object
is returned with an additional slot called loo
(for LOO cross validation) or
oos
(for OOS validation) that contains:
two slots called x_train
(or x_test
) and y_train
(or y_test
) that contain the validation data points for LOO (or OOS).
a matrix called mean
, if method = "mean_var"
, or median
, if method = "sampling"
, that contains the predictive means or medians of the
DGP emulator at validation positions.
three matrices called std
, lower
, and upper
that contain the predictive standard deviations and credible intervals of the
DGP emulator at validation positions. If method = "mean_var"
, the upper and lower bounds of a credible interval are two standard deviations above
and below the predictive mean. If method = "sampling"
, the upper and lower bounds of a credible interval are 2.5th and 97.5th percentiles.
a vector called nrmse
that contains the (minmax) normalized root mean/median squared errors of the DGP emulator across different output
dimensions. The minmax normalization is based on the maximum and minimum values of the validation outputs contained in y_train
(or y_test
).
The rows and columns of matrices (mean
, median
, std
, lower
, and upper
) correspond to the validation positions and DGP emulator output
dimensions, respectively.
If object
is an instance of the lgp
class, an updated object
is returned with an additional slot called oos
(for OOS validation) that contains:
two slots called x_test
and y_test
that contain the validation data points for OOS.
a list called mean
, if method = "mean_var"
, or median
, if method = "sampling"
, that contains the predictive means or medians of
the linked (D)GP emulator at validation positions.
three lists called std
, lower
, and upper
that contain the predictive standard deviations and credible intervals of
the linked (D)GP emulator at validation positions. If method = "mean_var"
, the upper and lower bounds of a credible interval are two standard
deviations above and below the predictive mean. If method = "sampling"
, the upper and lower bounds of a credible interval are 2.5th and 97.5th percentiles.
a list called nrmse
that contains the (minmax) normalized root mean/median squared errors of the linked (D)GP emulator. The minmax normalization
is based on the maximum and minimum values of the validation outputs contained in y_test
.
Each element in mean
, median
, std
, lower
, upper
, and nrmse
corresponds to a (D)GP emulator in the final layer of the linked (D)GP
emulator.
When both x_test
and y_test
are NULL
, the LOO cross validation will be implemented. Otherwise, OOS validation will
be implemented. The LOO validation is only applicable to a GP or DGP emulator (i.e., x
is an instance of the gp
or dgp
class). If a linked (D)GP emulator (i.e., x
is an instance of the lgp
class) is provided, x_test
and y_test
must
also be provided for OOS validation.
Any R vector detected in x_test
and y_test
will be treated as a column vector and automatically converted into a singlecolumn
R matrix.
## Not run:
# See gp(), dgp(), or lgp() for an example.
## End(Not run)