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)


### 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 trainX. trainT A vector for time indices of the data points. By default, the function assigns natural numbers starting from 1 as the time indices.

### 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 cross-covariance for predictions, same as trainX unless the model is updated. See updateData.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 predict g(t). See updateData.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 - log-likelihood value of the hyperparameter optimization for f(x).

• gradval - gradient vector at the optimal log-likelihood value.

### References

Prakash, A., Tuo, R., & Ding, Y. (2020). "The temporal overfitting problem with applications in wind power curve modeling." arXiv preprint arXiv:2012.01349. <https://arxiv.org/abs/2012.01349>.

predict.tempGP for computing predictions and updateData.tempGP for updating data in a tempGP object.

### Examples


data = DSWE::data1
trainindex = 1:100 #using the first 100 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)



[Package DSWE version 1.5.1 Index]