- title:
- Probabilistic Programming Languages
Langages de programmation probabilistes - manager:
- Guillaume Baudart
- ects:
- 3
- period:
- 1
- hours:
- 24
- weeks:
- 8
- hours-per-week:
- 3
- language:
- English on request
- lang:
- track:
- B
- themes:
- Semantic/Languages
- number:
- 2.40
- year:
- 2024, 2025
- [ppl]
- Probabilistic Programming Languages
Langages de programmation probabilistes
- Language:
- Period:
- 1.
- Duration:
- 24h (3h/week).
- ECTS:
- 3.
- Themes: Semantic/Languages
- Manager:
- Guillaume Baudart.
Description
La programmation probabiliste est un paradigme de programmation qui a connu un essor important ces dernières années. Suivant la méthode bayésienne, les programmes probabilistes décrivent des variables aléatoires qui peuvent être conditionnées par des observations statistiques. Récemment, de nombreux langages de programmation ont été développés e.g., WebPPL, Venture, Anglican, Stan, Gen, Pyro, Turing.jl… Ces langages sont maintenant utilisés dans de nombreux domaines qui vont de la vision (génération d'images) et la robotique (planification), à la santé (épidémiologie) et les sciences sociales (sondages).
Ce cours présente les concepts fondamentaux de la programmation probabiliste ainsi que des travaux de recherche récents :
- conceptions des langages (construction probabiliste, analyse statique, compilation)
- méthodes d'inférence (méthodes de Monte-Carlo, inférence symbolique, inférence variationnelle)
- sémantique (théorie de la mesure, espaces quasi-Boreliens, cônes probabilistes)
- analyse statique des algorithmes d'inférence (inférence variationnelle)
Plan du cours
date | Intervenants | Sujets |
19/09 | G. Baudart | Introduction à la programmation probabiliste |
26/09 | G. Baudart | Conception d'un langage probabiliste, sémantique par noyau |
03/10 | G. Baudart | Méthodes d'inférence avancées, sémantique par densité |
10/10 | G. Baudart | Compilation, filtrage et inférence semi-symbolique |
17/10 | H. Paquet | Modèles discrets, modèles graphiques, sémantiques et ordre supérieur |
24/10 | PAUSE | |
30/10 | PAUSE | |
07/11 | C. Tasson | Modèles continus, sémantique et problème avec l'ordre supérieur |
14/11 | C. Tasson | Programmation probabiliste et logique linéaire |
21/11 | X. Rival | Inférence Variationnelle, problème et analyse statique |
28/11 | Examen | |
05/12 | Soutenances Projet |
Tous les cours seront accompagnés de travaux pratiques.
Les supports de cours et les TDs seront disponibles sur GitHub : https://github.com/mpri-probprog/probprog-25-26
Évaluation
- Projet sur article
- Examen sur table
- Note: max(Exam, (Project + Exam)/2)
Ressources
- J-W. van de Meent, B. Paige, H. Yang, F. Wood, An Introduction to Probabilistic Programming
- N. D. Goodman and A. Stuhlmüller (electronic). The Design and Implementation of Probabilistic Programming Languages.
- C. Davidson-Pilon (electronic). Bayesian Methods for Hackers.