gp_opts: Approximate Gaussian Process Settings

View source: R/opts.R

gp_optsR Documentation

Approximate Gaussian Process Settings

Description

[Stable] Defines a list specifying the structure of the approximate Gaussian process. Custom settings can be supplied which override the defaults.

Usage

gp_opts(
  basis_prop = 0.2,
  boundary_scale = 1.5,
  ls_mean = 21,
  ls_sd = 7,
  ls_min = 0,
  ls_max = 60,
  alpha_sd = 0.05,
  kernel = c("matern", "se", "ou"),
  matern_order = 3/2,
  matern_type
)

Arguments

basis_prop

Numeric, proportion of time points to use as basis functions. Defaults to 0.2. Decreasing this value results in a decrease in accuracy but a faster compute time (with increasing it having the first effect). In general smaller posterior length scales require a higher proportion of basis functions. See (Riutort-Mayol et al. 2020 https://arxiv.org/abs/2004.11408) for advice on updating this default.

boundary_scale

Numeric, defaults to 1.5. Boundary scale of the approximate Gaussian process. See (Riutort-Mayol et al. 2020 https://arxiv.org/abs/2004.11408) for advice on updating this default.

ls_mean

Numeric, defaults to 21 days. The mean of the lognormal length scale.

ls_sd

Numeric, defaults to 7 days. The standard deviation of the log normal length scale. If ls_sd = 0, inverse-gamma prior on Gaussian process length scale will be used with recommended parameters inv_gamma(1.499007, 0.057277 * ls_max).

ls_min

Numeric, defaults to 0. The minimum value of the length scale.

ls_max

Numeric, defaults to 60. The maximum value of the length scale. Updated in create_gp_data() to be the length of the input data if this is smaller.

alpha_sd

Numeric, defaults to 0.05. The standard deviation of the magnitude parameter of the Gaussian process kernel. Should be approximately the expected standard deviation of the logged Rt.

kernel

Character string, the type of kernel required. Currently supporting the squared exponential kernel ("se", or "matern" with 'matern_order = Inf'), 3 over 2 oder 5 over 2 Matern kernel ("matern", with matern_order = 3/2 (default) or matern_order = 5/2, respectively), or Orstein-Uhlenbeck ("ou", or "matern" with 'matern_order = 1/2'). Defaulting to the Matérn 3 over 2 kernel for a balance of smoothness and discontinuities.

matern_order

Numeric, defaults to 3/2. Order of Matérn Kernel to use. Currently the orders 1/2, 3/2, 5/2 and Inf are supported.

matern_type

Deprated; Numeric, defaults to 3/2. Order of Matérn Kernel to use. Currently the orders 1/2, 3/2, 5/2 and Inf are supported.

Value

A ⁠<gp_opts>⁠ object of settings defining the Gaussian process

Examples

# default settings
gp_opts()

# add a custom length scale
gp_opts(ls_mean = 4)

epiforecasts/EpiNow2 documentation built on Aug. 15, 2024, 8:12 a.m.