predict {dgpsi} | R Documentation |
Predictions from GP, DGP, or linked (D)GP emulators
Description
This function implements single-core or multi-core predictions (with or without multi-threading) from GP, DGP, or linked (D)GP emulators.
Usage
## S3 method for class 'dgp'
predict(
object,
x,
method = "mean_var",
full_layer = FALSE,
sample_size = 50,
cores = 1,
chunks = NULL,
threading = FALSE,
...
)
## S3 method for class 'lgp'
predict(
object,
x,
method = "mean_var",
full_layer = FALSE,
sample_size = 50,
cores = 1,
chunks = NULL,
threading = FALSE,
...
)
## S3 method for class 'gp'
predict(
object,
x,
method = "mean_var",
sample_size = 50,
cores = 1,
chunks = NULL,
...
)
Arguments
object |
an instance of the |
x |
the testing input data:
|
method |
the prediction approach: mean-variance ( |
full_layer |
a bool indicating whether to output the predictions of all layers. Defaults to |
sample_size |
the number of samples to draw for each given imputation if |
cores |
the number of cores/workers to be used. If set to |
chunks |
the number of chunks that the testing input matrix |
threading |
a bool indicating whether to use the multi-threading to accelerate the predictions of DGP or linked (D)GP emulators. Turn this option on
when you use the Matérn-2.5 kernel and have a moderately large number of training data points as in such a case you could gain faster predictions. Defaults to |
... |
N/A. |
Details
See further examples and tutorials at https://mingdeyu.github.io/dgpsi-R/.
Value
If
object
is an instance of thegp
class:if
method = "mean_var"
: an updatedobject
is returned with an additional slot calledresults
that contains two matrices namedmean
for the predictive means andvar
for the predictive variances. Each matrix has only one column with its rows corresponding to testing positions (i.e., rows ofx
).if
method = "sampling"
: an updatedobject
is returned with an additional slot calledresults
that contains a matrix whose rows correspond to testing positions and columns correspond tosample_size
number of samples drawn from the predictive distribution of GP.
If
object
is an instance of thedgp
class:if
method = "mean_var"
andfull_layer = FALSE
: an updatedobject
is returned with an additional slot calledresults
that contains two matrices namedmean
for the predictive means andvar
for the predictive variances respectively. Each matrix has its rows corresponding to testing positions and columns corresponding to DGP global output dimensions (i.e., the number of GP/likelihood nodes in the final layer).if
method = "mean_var"
andfull_layer = TRUE
: an updatedobject
is returned with an additional slot calledresults
that contains two sub-lists namedmean
for the predictive means andvar
for the predictive variances respectively. Each sub-list contains L (i.e., the number of layers) matrices namedlayer1, layer2,..., layerL
. Each matrix has its rows corresponding to testing positions and columns corresponding to output dimensions (i.e., the number of GP/likelihood nodes from the associated layer).if
method = "sampling"
andfull_layer = FALSE
: an updatedobject
is returned with an additional slot calledresults
that contains D (i.e., the number of GP/likelihood nodes in the final layer) matrices namedoutput1, output2,..., outputD
. Each matrix has its rows corresponding to testing positions and columns corresponding to samples of size:B * sample_size
, whereB
is the number of imputations specified indgp()
.if
method = "sampling"
andfull_layer = TRUE
: an updatedobject
is returned with an additional slot calledresults
that contains L (i.e., the number of layers) sub-lists namedlayer1, layer2,..., layerL
. Each sub-list represents samples drawn from the GP/likelihood nodes in the corresponding layer, and contains D (i.e., the number of GP/likelihood nodes in the corresponding layer) matrices namedoutput1, output2,..., outputD
. Each matrix gives samples of the output from one of D GP/likelihood nodes, and has its rows corresponding to testing positions and columns corresponding to samples of size:B * sample_size
, whereB
is the number of imputations specified indgp()
.
If
object
is an instance of thelgp
class:if
method = "mean_var"
andfull_layer = FALSE
: an updatedobject
is returned with an additional slot calledresults
that contains two sub-lists namedmean
for the predictive means andvar
for the predictive variances respectively. Each sub-list contains M number (same number of emulators in the final layer of the system) of matrices namedemulator1, emulator2,..., emulatorM
. Each matrix has its rows corresponding to global testing positions and columns corresponding to output dimensions of the associated emulator in the final layer.if
method = "mean_var"
andfull_layer = TRUE
: an updatedobject
is returned with an additional slot calledresults
that contains two sub-lists namedmean
for the predictive means andvar
for the predictive variances respectively. Each sub-list contains L (i.e., the number of layers in the emulated system) components namedlayer1, layer2,..., layerL
. Each component represents a layer and contains M number (same number of emulators in the corresponding layer of the system) of matrices namedemulator1, emulator2,..., emulatorM
. Each matrix has its rows corresponding to global testing positions and columns corresponding to output dimensions of the associated GP/DGP emulator in the corresponding layer.if
method = "sampling"
andfull_layer = FALSE
: an updatedobject
is returned with an additional slot calledresults
that contains M number (same number of emulators in the final layer of the system) of sub-lists namedemulator1, emulator2,..., emulatorM
. Each sub-list corresponds to an emulator in the final layer, and contains D matrices, namedoutput1, output2,..., outputD
, that correspond to the output dimensions of the GP/DGP emulator. Each matrix has its rows corresponding to testing positions and columns corresponding to samples of size:B * sample_size
, whereB
is the number of imputations specified inlgp()
.if
method = "sampling"
andfull_layer = TRUE
: an updatedobject
is returned with an additional slot calledresults
that contains L (i.e., the number of layers of the emulated system) sub-lists namedlayer1, layer2,..., layerL
. Each sub-list represents a layer and contains M number (same number of emulators in the corresponding layer of the system) of components namedemulator1, emulator2,..., emulatorM
. Each component corresponds to an emulator in the associated layer, and contains D matrices, namedoutput1, output2,..., outputD
, that correspond to the output dimensions of the GP/DGP emulator. Each matrix has its rows corresponding to testing positions and columns corresponding to samples of size:B * sample_size
, whereB
is the number of imputations specified inlgp()
.
Note
Any R vector detected in x
will be treated as a column vector and automatically converted into a single-column R matrix.
Thus, if x
is a single testing data point with multiple dimensions, it must be given as a matrix.
Examples
## Not run:
# See gp(), dgp(), or lgp() for an example.
## End(Not run)