Skip to content

v1.2.0

Choose a tag to compare

@NicolasGensollen NicolasGensollen released this 25 Feb 08:12

[1.2.0] - 2021-12-17

  • [CODE] Broad use of type annotations in Leaspy package
  • [COMPAT] As a consequence support of Python 3.6 is dropped
  • [COMPAT] PyTorch >=1.7 is now supported, as well as Python 3.9
  • [FEAT] Custom Leaspy exceptions raised in code: cf. leaspy.exceptions in documentation
  • [FEAT] Implementation of model inverse in API to get age according to model for a given feature value: Leaspy.estimate_ages_from_biomarker_values
  • [FIX] Simulation algorithm is fixed (shape issue with noise and bad behavior for random visits <= 0)
  • [REFACT] Configuration of noise structure was reshaped:
    • models do not have a loss hyperparameter any more, it was replaced by noise_model (backward-compatibility is ensured)
    • algorithms do not have a loss parameter any more, it is fully controlled by noise structure of model
  • [FEAT] Simulation algorithm now supports new keywords (cf. SimulationAlgorithm) to better control:
    • delay between simulated visits (can be random, constant or defined with a custom function)
    • number of simulated visits (possible to set min & max number of visits when random)
    • noise structure, in line with new noise_model implementation
  • [DEFAULTS] Some default configuration values changed for some algorithms & models:
    • LME model now has with_random_slope_age = True by default
    • mcmc_saem and scipy_minimize now have progress_bar = True by default
    • scipy_minimize now has use_jacobian = True by default (fallback to False when not implemented, with a warning)
    • Multivariate models now have gaussian_diagonal noise structure by default
    • simulation algorithm now has constant delay of 6 months between simulated visits by default
  • [DEPRECATION] Some classes were deprecated:
    • VisualizationToolbox class was removed from code
    • Plotting class was deprecated and removed from Leaspy API
    • Some already deprecated algorithms are not supported any more (moved in algo/_legacy folder)
  • [BROWSER] Browser web-app was improved
  • [LICENSE] Changing GPL license to BSD 3-Clause license - active only for current and future releases
  • [REFACT] Readers now implement more checks on input data; CSVDataReader now calls pandas.read_csv internally
  • [TESTS] Refactoring of tests with a new LeaspyTestCase, have a look at tests/README.md if you want to add or modify them