leaspy.models.lme
Classes
LMEModel is a benchmark model that fits and personalize a linear mixed-effects model. |
Module Contents
- class LMEModel(name, **kwargs)
Bases:
leaspy.models.generic.GenericModelLMEModel is a benchmark model that fits and personalize a linear mixed-effects model.
The model specification is the following:
\[y_{ij} = fixed_{intercept} + random_{intercept_i} + (fixed_{slopeAge} + random_{slopeAge_i}) * age_{ij} + \epsilon_{ij}\]- with:
\(y_{ij}\): value of the feature of the i-th subject at his j-th visit,
\(age_{ij}\): age of the i-th subject at his j-th visit.
\(\epsilon_{ij}\): 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:
- 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.
- dimension
int Will always be 1 (univariate).
- 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
- Parameters:
name (str)
See also
LMEFitAlgorithmLMEPersonalizeAlgorithm
- dimension = 1
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.
- compute_individual_trajectory(timepoints, individual_parameters)
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).
- Parameters:
individual_parameters (dict)