Initialises a compiled reservr_keras_model
weights such that the predictions are equal to, or close to, the
distribution parameters given by params
.
Usage
tf_initialise_model(
model,
params,
mode = c("scale", "perturb", "zero", "none")
)
Arguments
- model
A
reservr_compiled_model
obtained bytf_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.
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()))
}