Skip to contents

Beta Kernel R6 class

Beta Kernel R6 class

Format

R6Class object.

Value

Object of R6Class with methods for fitting GP model.

Details

This is the base structure for a kernel that uses beta = log10(theta) for the lengthscale parameter. It standardizes the params because they all use the same underlying structure. Kernels that inherit this only need to implement kone and dC_dparams.

Super class

GauPro::GauPro_kernel -> GauPro_kernel_beta

Public fields

beta

Parameter for correlation. Log of theta.

beta_est

Should beta be estimated?

beta_lower

Lower bound of beta

beta_upper

Upper bound of beta

beta_length

length of beta

s2

variance

logs2

Log of s2

logs2_lower

Lower bound of logs2

logs2_upper

Upper bound of logs2

s2_est

Should s2 be estimated?

useC

Should C code used? Much faster.

isotropic

If isotropic then a single beta/theta is used for all dimensions. If not (anisotropic) then a separate beta/beta is used for each dimension.

Methods

Inherited methods


Method new()

Initialize kernel object

Usage

GauPro_kernel_beta$new(
  beta,
  s2 = 1,
  D,
  beta_lower = -8,
  beta_upper = 6,
  beta_est = TRUE,
  s2_lower = 1e-08,
  s2_upper = 1e+08,
  s2_est = TRUE,
  useC = TRUE,
  isotropic = FALSE
)

Arguments

beta

Initial beta value

s2

Initial variance

D

Number of input dimensions of data

beta_lower

Lower bound for beta

beta_upper

Upper bound for beta

beta_est

Should beta be estimated?

s2_lower

Lower bound for s2

s2_upper

Upper bound for s2

s2_est

Should s2 be estimated?

useC

Should C code used? Much faster.

isotropic

If isotropic then a single beta/theta is used for all dimensions. If not (anisotropic) then a separate beta/beta is used for each dimension.


Method k()

Calculate covariance between two points

Usage

GauPro_kernel_beta$k(
  x,
  y = NULL,
  beta = self$beta,
  s2 = self$s2,
  params = NULL
)

Arguments

x

vector.

y

vector, optional. If excluded, find correlation of x with itself.

beta

Correlation parameters. Log of theta.

s2

Variance parameter.

params

parameters to use instead of beta and s2.


Method kone()

Calculate covariance between two points

Usage

GauPro_kernel_beta$kone(x, y, beta, theta, s2)

Arguments

x

vector.

y

vector.

beta

Correlation parameters. Log of theta.

theta

Correlation parameters.

s2

Variance parameter.


Method param_optim_start()

Starting point for parameters for optimization

Usage

GauPro_kernel_beta$param_optim_start(
  jitter = F,
  y,
  beta_est = self$beta_est,
  s2_est = self$s2_est
)

Arguments

jitter

Should there be a jitter?

y

Output

beta_est

Is beta being estimated?

s2_est

Is s2 being estimated?


Method param_optim_start0()

Starting point for parameters for optimization

Usage

GauPro_kernel_beta$param_optim_start0(
  jitter = F,
  y,
  beta_est = self$beta_est,
  s2_est = self$s2_est
)

Arguments

jitter

Should there be a jitter?

y

Output

beta_est

Is beta being estimated?

s2_est

Is s2 being estimated?


Method param_optim_lower()

Upper bounds of parameters for optimization

Usage

GauPro_kernel_beta$param_optim_lower(
  beta_est = self$beta_est,
  s2_est = self$s2_est
)

Arguments

beta_est

Is beta being estimated?

s2_est

Is s2 being estimated?

p_est

Is p being estimated?


Method param_optim_upper()

Upper bounds of parameters for optimization

Usage

GauPro_kernel_beta$param_optim_upper(
  beta_est = self$beta_est,
  s2_est = self$s2_est
)

Arguments

beta_est

Is beta being estimated?

s2_est

Is s2 being estimated?

p_est

Is p being estimated?


Method set_params_from_optim()

Set parameters from optimization output

Usage

GauPro_kernel_beta$set_params_from_optim(
  optim_out,
  beta_est = self$beta_est,
  s2_est = self$s2_est
)

Arguments

optim_out

Output from optimization

beta_est

Is beta being estimated?

s2_est

Is s2 being estimated?


Method C_dC_dparams()

Calculate covariance matrix and its derivative with respect to parameters

Usage

GauPro_kernel_beta$C_dC_dparams(params = NULL, X, nug)

Arguments

params

Kernel parameters

X

matrix of points in rows

nug

Value of nugget


Method s2_from_params()

Get s2 from params vector

Usage

GauPro_kernel_beta$s2_from_params(params, s2_est = self$s2_est)

Arguments

params

parameter vector

s2_est

Is s2 being estimated?


Method clone()

The objects of this class are cloneable with this method.

Usage

GauPro_kernel_beta$clone(deep = FALSE)

Arguments

deep

Whether to make a deep clone.

Examples

#k1 <- Matern52$new(beta=0)