tempGP {DSWE}  R Documentation 
temporal Gaussian process
Description
A Gaussian process based power curve model which explicitly models the temporal aspect of the power curve. The model consists of two parts: f(x)
and g(t)
.
Usage
tempGP(
trainX,
trainY,
trainT = NULL,
fast_computation = TRUE,
limit_memory = 5000L,
max_thinning_number = 20L,
vecchia = TRUE,
optim_control = list(batch_size = 100L, learn_rate = 0.05, max_iter = 5000L, tol =
1e06, beta1 = 0.9, beta2 = 0.999, epsilon = 1e08, logfile = NULL)
)
Arguments
trainX 
A matrix with each column corresponding to one input variable. 
trainY 
A vector with each element corresponding to the output at the corresponding row of 
trainT 
A vector for time indices of the data points. By default, the function assigns natural numbers starting from 1 as the time indices. 
fast_computation 
A Boolean that specifies whether to do exact inference or fast approximation. Default is 
limit_memory 
An integer or 
max_thinning_number 
An integer specifying the max lag to compute the thinning number. If the PACF does not become insignificant till 
vecchia 
A Boolean that specifies whether to do exact inference or vecchia approximation. Default is 
optim_control 
A list parameters passed to the Adam optimizer when

Value
An object of class tempGP
with the following attributes:
trainX  same as the input matrix
trainX
.trainY  same as the input vector
trainY
.thinningNumber  the thinning number computed by the algorithm.
modelF  A list containing the details of the model for predicting function
f(x)
:X  The input variable matrix for computing the crosscovariance for predictions, same as
trainX
unless the model is updated. SeeupdateData.tempGP
method for details on updating the model.y  The response vector, again same as
trainY
unless the model is updated.weightedY  The weighted response, that is, the response left multiplied by the inverse of the covariance matrix.
modelG  A list containing the details of the model for predicting function
g(t)
:residuals  The residuals after subtracting function
f(x)
from the response. Used to predictg(t)
. SeeupdateData.tempGP
method for updating the residuals.time_index  The time indices of the residuals, same as
trainT
.
estimatedParams  Estimated hyperparameters for function
f(x)
.llval  loglikelihood value of the hyperparameter optimization for
f(x)
.gradval  gradient vector at the optimal loglikelihood value.
References
Prakash, A., Tuo, R., & Ding, Y. (2022). "The temporal overfitting problem with applications in wind power curve modeling." Technometrics. doi:10.1080/00401706.2022.2069158.
Katzfuss, M., & Guinness, J. (2021). "A General Framework for Vecchia Approximations of Gaussian Processes." Statistical Science. doi:10.1214/19STS755.
Guinness, J. (2018). "Permutation and Grouping Methods for Sharpening Gaussian Process Approximations." Technometrics. doi:10.1080/00401706.2018.1437476.
See Also
predict.tempGP
for computing predictions and updateData.tempGP
for updating data in a tempGP object.
Examples
data = DSWE::data1
trainindex = 1:50 #using the first 50 data points to train the model
traindata = data[trainindex,]
xCol = 2 #input variable columns
yCol = 7 #response column
trainX = as.matrix(traindata[,xCol])
trainY = as.numeric(traindata[,yCol])
tempGPObject = tempGP(trainX, trainY)