leaspy.models.lme module
- class LMEModel(name: str, **kwargs)
Bases:
GenericModelLMEModel is a benchmark model that fits and personalize a linear mixed-effects model.
The model specification is the following:
- with:
: value of the feature of the i-th subject at his j-th visit,
: age of the i-th subject at his j-th visit.
: residual Gaussian noise (independent between visits)
Warning
This model must be fitted on one feature only (univariate model).
TODO? should inherit from AbstractModel. TODO? add some covariates in this very simple model.
- Parameters:
See also
- Attributes:
- name
str The model’s name.
- is_initialized
bool Trueif the model is initialized,Falseotherwise.- with_random_slope_age
bool(defaultTrue) Has the LME a random slope for subject’s age? Otherwise it only has a random intercept per subject.
- features
listofstr List of the model features.
Warning
LME has only one feature.
dimensionintThe dimension of the model.
- parameters
dict - Contains the model parameters. In particular:
ages_meanfloatMean of ages (for normalization).
ages_stdfloatStd-dev of ages (for normalization).
fe_paramsnp.ndarrayoffloatFixed effects.
cov_renp.ndarrayVariance-covariance matrix of random-effects.
cov_re_unscaled_invnp.ndarrayInverse of unscaled (= divided by variance of noise) variance-covariance matrix of random-effects. This matrix is used for personalization to new subjects.
noise_stdfloatStd-dev of Gaussian noise.
bse_fe,bse_renp.ndarrayoffloatStandard errors on fixed-effects and random-effects respectively (not used in
Leaspy).
- name
Methods
compute_individual_trajectory(timepoints, ...)Compute scores values at the given time-point(s) given a subject's individual parameters.
get_hyperparameters(*[, with_features, ...])Get all model hyperparameters.
Check all model hyperparameters are ok.
initialize(dataset[, method])Initialize the model given a
Datasetand an initialization method.load_hyperparameters(hyperparameters, *[, ...])Load model hyperparameters from a
dict.load_parameters(parameters, *[, list_converter])Instantiate or update the model's parameters.
save(path, **kwargs)Save
Leaspyobject as JSON model parameter file.validate_compatibility_of_dataset(dataset)Raise if the given
Datasetis not compatible with the current model.- compute_individual_trajectory(timepoints, individual_parameters: dict)
Compute scores values at the given time-point(s) given a subject’s individual parameters.
- Parameters:
- timepointsarray-like of ages (not normalized)
Timepoints to compute individual trajectory at.
- individual_parameters
dict - Individual parameters:
random_intercept
random_slope_age (if
with_random_slope_age == True)
- Returns:
torch.TensoroffloatThe individual trajectories. The shape of the tensor is
(n_individuals == 1, n_tpts == len(timepoints), n_features == 1).
- property dimension: int | None
The dimension of the model. If the private attribute is defined, then it takes precedence over the feature length. The associated setters are responsible for their coherence.
- get_hyperparameters(*, with_features=True, with_properties=True, default=None) Dict[str, Any]
Get all model hyperparameters.
- Parameters:
- with_features, with_properties
bool(defaultTrue) Whether to include features and respectively all _properties (i.e. _dynamic_ hyperparameters) in the returned dictionary.
- defaultAny
Default value is something is an hyperparameter is missing (should not!).
- with_features, with_properties
- Returns:
- :obj:`dict` { hyperparam_name
str-> hyperparam_valueAny }
- :obj:`dict` { hyperparam_name
- initialize(dataset: Dataset, method: str = 'default') None
Initialize the model given a
Datasetand an initialization method.After calling this method
is_initializedshould beTrueand model should be ready for use.
- load_hyperparameters(hyperparameters: Dict[str, Any], *, with_defaults: bool = False) None
Load model hyperparameters from a
dict.- Parameters:
- Raises:
LeaspyModelInputErrorIf inconsistent hyperparameters.
- load_parameters(parameters, *, list_converter=<built-in function array>) None
Instantiate or update the model’s parameters.
- Parameters:
- parameters
dict Contains the model’s parameters.
- list_convertercallable
The function to convert list objects.
- parameters
- save(path: str, **kwargs) None
Save
Leaspyobject as JSON model parameter file.Default save method: it can be overwritten in child class but should be generic…
- Parameters:
- path
str Path to store the model’s parameters.
- **kwargs
Keyword arguments for
json.dumpmethod.
- path