leaspy.algo.others.lme_fit
.LMEFitAlgorithm
- class LMEFitAlgorithm(settings)
Bases:
AbstractAlgo
Calibration algorithm associated to
LMEModel
- Parameters:
- settings
AlgorithmSettings
- with_random_slope_agebool
If False: only varying intercepts If True: random intercept & random slope w.r.t ages
Deprecated since version 1.2.
You should rather define this directly as an hyperparameter of LME model.
- force_independent_random_effectsbool
Force independence of random intercept & random slope
other keyword arguments passed to
statsmodels.regression.mixed_linear_model.MixedLM.fit()
- settings
Methods
load_parameters
(parameters)Update the algorithm's parameters by the ones in the given dictionary.
run
(model, *args[, return_loss])Main method, run the algorithm.
run_impl
(model, dataset)Main method, refer to abstract definition in
run()
.set_output_manager
(output_settings)Not implemented.
- load_parameters(parameters: dict)
Update the algorithm’s parameters by the ones in the given dictionary. The keys in the io which does not belong to the algorithm’s parameters keys are ignored.
- Parameters:
- parametersdict
Contains the pairs (key, value) of the wanted parameters
Examples
>>> settings = leaspy.io.settings.algorithm_settings.AlgorithmSettings("mcmc_saem") >>> my_algo = leaspy.algo.fit.tensor_mcmcsaem.TensorMCMCSAEM(settings) >>> my_algo.algo_parameters {'n_iter': 10000, 'n_burn_in_iter': 9000, 'eps': 0.001, 'L': 10, 'sampler_ind': 'Gibbs', 'sampler_pop': 'Gibbs', 'annealing': {'do_annealing': False, 'initial_temperature': 10, 'n_plateau': 10, 'n_iter': 200}} >>> parameters = {'n_iter': 5000, 'n_burn_in_iter': 4000} >>> my_algo.load_parameters(parameters) >>> my_algo.algo_parameters {'n_iter': 5000, 'n_burn_in_iter': 4000, 'eps': 0.001, 'L': 10, 'sampler_ind': 'Gibbs', 'sampler_pop': 'Gibbs', 'annealing': {'do_annealing': False, 'initial_temperature': 10, 'n_plateau': 10, 'n_iter': 200}}
- run(model: AbstractModel, *args, return_loss: bool = False, **extra_kwargs) Any
Main method, run the algorithm.
TODO fix proper abstract class method: input depends on algorithm… (esp. simulate != from others…)
- Parameters:
- model
AbstractModel
The used model.
- dataset
Dataset
Contains all the subjects’ observations with corresponding timepoints, in torch format to speed up computations.
- return_lossbool (default False), keyword only
Should the algorithm return main output and optional loss output as a 2-tuple?
- model
- Returns:
- Depends on algorithm class: TODO change?
- run_impl(model: LMEModel, dataset: Dataset)
Main method, refer to abstract definition in
run()
.TODO fix proper inheritance
- set_output_manager(output_settings)
Not implemented.