| lasvdGP {DynamicGP} | R Documentation |
Local Approximate SVD-Based GP Models
Description
Fits a local approximate SVD-based GP model on a test set
X0, training/design set design and response matrix
resp. The local neighborhood sets consist of nn out of
which n0 points are selected by the Euclidean distance with
respect to the test points. The remaining nn-n0
neighborhood points are selected sequentially by a greedy algorithm
proposed by Zhang et al. (2018). This function supports the
parallelization via both the R packages "parallel" and the OpenMP
library.
Usage
lasvdGP(design, resp, X0=design, n0=10, nn=20,
nfea = min(1000,nrow(design)),
nsvd = nn, nadd = 1, frac = .95, gstart = 0.0001,
resvdThres = min(5, nn-n0), every = min(5,nn-n0),
nstarts = 5,centralize=FALSE, maxit=100,
errlog = "", nthread = 1, clutype="PSOCK")
Arguments
design |
An |
resp |
An |
X0 |
An |
n0 |
The number of points in the initial neighborhood set. The initial neighborhood set is selected by the Euclidean distance. The default value is 10. |
nn |
The total number of neighborhood points. The |
nfea |
The number of feasible points within which to select the
neighborhood points. This function will only consider the
|
nsvd |
The number of design points closest to the test points on whose
response matrix to perform the initial singular value
decomposition. The default value is |
nadd |
The number of neighborhood points selected at one iteration. The default value is 1. |
frac |
The threshold in the cumulative percentage criterion to select the number of SVD bases. The default value is 0.95. |
gstart |
The starting number and upper bound for estimating the nugget
parameter. If |
resvdThres |
The threshold to re-perform SVD. After every |
every |
The threshold to refit GP models without re-perform SVD. After every
|
nstarts |
The number of starting points used in the numerical maximization of
the posterior density function. The larger |
centralize |
If |
maxit |
Maximum number of iterations in the numerical optimization algorithm for maximizing the posterior density function. The default value is 100. |
errlog |
The path of a log file that records the errors occur in the process of fitting local SVD-based GP models. If an empty string is provided, no log file will be produced. |
nthread |
The number of threads (processes) used in parallel execution of this
function. |
clutype |
The type of parallization utilized by this function. If |
Value
pmean |
An |
ps2 |
An |
flags |
A vector of integers of length |
Author(s)
Ru Zhang heavenmarshal@gmail.com,
C. Devon Lin devon.lin@queensu.ca,
Pritam Ranjan pritamr@iimidr.ac.in
References
Zhang, R., Lin, C. D. and Ranjan, P. (2018) Local Gaussian
Process Model for Large-scale Dynamic Computer Experiments,
Journal of Computational and Graphical Statistics,
DOI:
10.1080/10618600.2018.1473778.
See Also
Examples
library("lhs")
forretal <- function(x,t,shift=1)
{
par1 <- x[1]*6+4
par2 <- x[2]*16+4
par3 <- x[3]*6+1
t <- t+shift
y <- (par1*t-2)^2*sin(par2*t-par3)
}
timepoints <- seq(0,1,len=200)
design <- lhs::randomLHS(100,3)
test <- lhs::randomLHS(20,3)
## evaluate the response matrix on the design matrix
resp <- apply(design,1,forretal,timepoints)
n0 <- 14
nn <- 15
gs <- sqrt(.Machine$double.eps)
## lasvdGP with mutiple (5) start points for GP model estimation,
## It use the R package "parallel" for parallelization
retlamsp <- lasvdGP(design,resp,test,n0,nn,frac=.95,gstart=gs,
centralize=TRUE,nstarts=5,nthread=2,clutype="PSOCK")
## lasvdGP with single start point for GP model estimation,
## It does not use parallel computation
retlass <- lasvdGP(design,resp,test,n0,nn,frac=.95,gstart=gs,
centralize=TRUE,nstarts=1,nthread=1)