Skip to main content

Vpop calibration

Description

A set of Python tools to allow for virtual population calibration, using a non-linear mixed effects (NLME) model approach, combined with surrogate models in order to speed up the simulation of QSP models.

The approach was mainly inspired from 1.

Here is an overview of the proposed workflow: flowchart

Currently available features

  • Surrogate modeling using gaussian processes, implemented using GPyTorch
  • Synthetic data generation using ODE models. The current implementation uses scipy.integrate.solve_ivp, parallelized with multiprocessing
  • Non-linear mixed effect models, see the dedicated doc:
    • Log-distributed parameters
    • Additive or multiplicative error model
    • Covariates handling
    • Known individual patient descriptors (i.e. covariates with no effect on other descriptors outside of the structural model)
  • SAEM: see the dedicated doc
    • Optimization of random and fixed effects using repeated longitudinal data
  • Individual parameter estimation
    • Conditional distribution sampling: the posterior conditional distribution may directly be sampled using Metropolis-Hastings algorithm
    • Empirical Bayesian Estimators (EBEs) or Maximum A Posteriori (MAP) estimates: these values represent the mode of the conditional distribution for each parameter and each patient. The current implementation is sub-optimal for torch surrogate models as it does not leverage the gradient predictions.
  • Diagnostics:
    • Post-inference diagnostics are available, and different type sof weighted residuals may be plotted (IWRES, PWRES, NPDE)

Getting started

  • Tutorial: this notebook demonstrates step-by-step how to create and train a surrogate model, using a reference ODE model and a GP surrogate model. It then showcases how to optimize the surrogate model on synthetic data using SAEM

In-depth examples

Support

For any issue or comments, please reach out to paul.lemarre@novainsilico.ai, or feel free to open an issue in the repo directly.

Authors

  • Paul Lemarre
  • Eléonore Dravet
  • Hugo Alves

Acknowledgements

  • Adeline Leclercq-Samson
  • Eliott Tixier
  • Louis Philippe

QSPC26 poster

This work was presented at QSPC2026 in Leiden, and all the corresponding material is introduced in this document. The benchmark notebooks for standard data sets are available directly for orange trees and theophylline.

The poster itself is available in this document. The full list of references is available in this document.

Roadmap

Here are a few planned features, in an unordered and non-exhaustive list:

  • NLME:
    • Support additional error models (additive-multiplicative, power, etc...)
    • Support additional covariate models (categorical covariates)
    • Compute likelihood via importance sampling following population parameters optimization
  • Structural models:
    • Integrate with SBML models (e.g. Roadrunner)
  • Surrogate models:
    • Support additional surrogate models in PyTorch
  • Optimizer:
    • Add preconditioned Stochastic-Gradient-Descent (SGD) method for surrogate model optimization

References

  1. Grenier et al. 2018: Grenier, E., Helbert, C., Louvet, V. et al. Population parametrization of costly black box models using iterations between SAEM algorithm and kriging. Comp. Appl. Math. 37, 161–173 (2018). https://doi.org/10.1007/s40314-016-0337-5

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vpop_calibration-4.4.6.tar.gz (80.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vpop_calibration-4.4.6-py3-none-any.whl (120.4 kB view details)

Uploaded Python 3

File details

Details for the file vpop_calibration-4.4.6.tar.gz.

File metadata

  • Download URL: vpop_calibration-4.4.6.tar.gz
  • Upload date:
  • Size: 80.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.4.1 CPython/3.13.13 Linux/6.18.33

File hashes

Hashes for vpop_calibration-4.4.6.tar.gz
Algorithm Hash digest
SHA256 d5283cb3977a8ec652ead2aaf2ef5079d40028a3fa289cdd68ff6ecd0873397d
MD5 6d0f77964e8afb292bf152938ca35aa7
BLAKE2b-256 5f3fdbd27f63de51675d167cebdd9f8882da000241159c789fd7a1b5ca0b30fb

See more details on using hashes here.

File details

Details for the file vpop_calibration-4.4.6-py3-none-any.whl.

File metadata

  • Download URL: vpop_calibration-4.4.6-py3-none-any.whl
  • Upload date:
  • Size: 120.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.4.1 CPython/3.13.13 Linux/6.18.33

File hashes

Hashes for vpop_calibration-4.4.6-py3-none-any.whl
Algorithm Hash digest
SHA256 c5dba031966b68bf004f4e6bc9d3f0d02ead14442fb63d6f9aeafcea48053f4f
MD5 1d2dfa35435e9223cf8a24a9240460df
BLAKE2b-256 0f87b36e7990c7dc7dfe449ae41390b3a0fc17a34d0850be6229b14acc306644

See more details on using hashes here.

Release history Release notifications | RSS feed

4.7.0

2 files

4.6.9

2 files

4.6.8

2 files

4.6.7

2 files

4.6.6

2 files

4.6.5

2 files

4.6.4

2 files

4.6.3

2 files

4.6.2

2 files

4.6.1

2 files

4.6.0

2 files

4.5.0

2 files

4.4.8

2 files

4.4.7

2 files

This release

4.4.6 This release

2 files

4.4.5

2 files

4.4.4

2 files

4.4.3

2 files

4.4.2

2 files

4.4.1

2 files

4.4.0

2 files

4.3.0

2 files

4.2.0

2 files

4.1.0

2 files

4.0.0

2 files

3.0.4

2 files

3.0.2

2 files

3.0.1

2 files

3.0.0

2 files

2.6.0

2 files

2.5.2

2 files

2.5.1

2 files

2.5.0

2 files

2.4.1

2 files

2.4.0

2 files

2.3.1

2 files

2.3.0

2 files

2.2.9

2 files

2.2.8

2 files

2.2.7

2 files

2.2.6

2 files

2.2.5

2 files

2.2.4

2 files

2.2.3

2 files

2.2.2

2 files

2.2.1

2 files

2.2.0

2 files

2.1.2

2 files

2.1.1

2 files

2.0.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page