Nouvelle version majeure de PyMC

PyMC a profité d’une mise à jour majeure: version 6.0., Mais, pas seulement ! Tout l’écosystème autour de cette librairie (pytensor, arviz, et plus encore) a profité d’une mise à jour. Voyons les nouveautés dans les différents domaines :

Backend

PyTensor profite également d’une mise à jour et est arrivé en version 3.0. C’est le coeur du moteur de calcul de PyMC et améliore les performances d’environ x2.

Numba est maintenant le backend par défaut. Les autres (C ou JAX) sont toujours disponibles.

Petite note si vous aviez comme moi des problèmes avec la librairie BLAS (qui était au delà de la portée de pip et devait être installé et lié séparemment), vous serez content d’apprendre que ces problèmes ont été résolu.

Inférence

Modélisation

Indexage plus facile avec les dims nommées. En effet, l’argument « dims= » accepte et broadcast automatiquement les dimension nécessaire lorsque celles-ci sont passées au modèl avec le dictionnaire coords.

Les variables discrètes et latentes devaient être sommées à la main, dorénavant le processus est automatisé avec « pymc_extras.marginalize ».

Encore dans pymc_extras, les statesspaces modèles peuvent être composer plus facilement avec le package « structural »

Workflow bayésien

Arviz permettait déjà d’obtenir de beaux graphiques pour évaluer la convergence des modèles écrits avec PyMC, sa bibliothèque est maintenant enrichie de nombreux nouveaux graphiques. Notamment, un graphique sur les rangs des chaines. Les intervals de crédibilités passent de 94% à 89% et les equal-tails (eti) est le nouveau paramètre par défaut et remplace les highest-density (hdi)

Deux nouveaux (?) arrivant:

  • PreliZ qui nous aide à déclarer les priors sur la base du minimum, du maximum et du centre de masse souhaités.
  • Kulprit permettra de sélectionner les variables les plus explicatives à inclure dans les modèles

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *