tf_initialise_model function

Initialise model weights to a global parameter fit

Initialise model weights to a global parameter fit

Initialises a compiled reservr_keras_model weights such that the predictions are equal to, or close to, the distribution parameters given by params.

tf_initialise_model( model, params, mode = c("scale", "perturb", "zero", "none") )

Arguments

  • model: A reservr_compiled_model obtained by tf_compile_model().

  • params: A list of distribution parameters compatible with model.

  • mode: An initialisation mode

    • scale: Initialise the biases according to params and the kernels uniform on [-0.1, 0.1] * bias scale.
    • perturb: Initialise the biases according to params and leave the kernels as is.
    • zero: Initialise the biases according to params and set the kernel to zero.
    • none: Don't modify the weights.

Returns

Invisibly model with changed weights

Examples

dist <- dist_exponential() group <- sample(c(0, 1), size = 100, replace = TRUE) x <- dist$sample(100, with_params = list(rate = group + 1)) global_fit <- fit(dist, x) if (interactive()) { library(keras3) l_in <- layer_input(shape = 1L) mod <- tf_compile_model( inputs = list(l_in), intermediate_output = l_in, dist = dist, optimizer = optimizer_adam(), censoring = FALSE, truncation = FALSE ) tf_initialise_model(mod, global_fit$params) fit_history <- fit( mod, x = group, y = x, epochs = 200L ) predicted_means <- predict(mod, data = as_tensor(c(0, 1), config_floatx())) }