Cette page a été traduite automatiquement de l'anglais. Consultez l'original en anglais.

Modélisateurs computationnels, ingénieurs logiciels et contributeurs de l'Institut choisissant ou construisant des chaînes d'outils pour simuler, ajuster ou déployer des modèles d'inférence active.

L'inférence active et les outils computationnels

Le substrat logiciel qui transforme la minimisation d'énergie libre des équations en modèles exécutables — Python, Julia, MATLAB et les outils symboliques.

L'inférence active ne vaut que par le code qui la met en œuvre. Dans l'écosystème, un petit nombre de plateformes d'outils supportent la majeure partie du poids pratique : des paquets Python pour la simulation à état discret, un cadre Julia pour le passage de messages réactifs à grande échelle, une plateforme statistique MATLAB décennale qui a contribué à l'origine de la théorie, et des systèmes de raisonnement symbolique qui associent la minimisation d'énergie libre avec la planification logique pour la robotique. Cette page examine ces plateformes d'outils, les activités de développement et d'apprentissage affiliées à l'Institut, ainsi que la fragmentation qui les sépare encore d'une pile logicielle cohérente.

Pourquoi le domaine correspond

La minimisation de l'énergie libre variationnelle et attendue est définie mathématiquement, mais chaque application de l'inférence active – d'un bras robotique à un modèle psychiatrique en passant par une simulation de politique – repose finalement sur une implémentation de modèle génératif, un moteur d'inférence et un backend numérique. Différents outils ont pris des engagements différents ici : des processus de décision markoviens partiellement observables discrets contre des dynamiques à état continu, des calculs par lots contre un flux réactif, des modèles génératifs spécifiés manuellement contre des modèles appris, et des représentations numériques versus symboliques des croyances et des objectifs. Étant donné que les autres pages de domaine de l'Institut décrivent l'inférence active appliquée à un domaine, cette page décrit plutôt la couche computationnelle partagée en dessous de toutes celles-ci – les outils qu'un modélisateur choisit réellement pour passer de la théorie à une simulation fonctionnelle.

Quatre chaînes d'outils, quatre paradigmes

PyMDP est un package Python pour simuler des agents d'inférence active dans des environnements de processus de décision de Markov discrets à état, offrant aux modélisateurs un modèle génératif de type POMDP, une inférence variationnelle sur les états cachés et une sélection de politique basée sur l'énergie libre attendue dans une implémentation de référence largement réutilisée. RxInfer.jl, développé chez BIASlab à Eindhoven, prend une approche différente : il effectue un passage de messages réactif sur des graphes de Forney plutôt que de travailler directement avec des graphes bayésiens ou des POMDP explicites, l'inférence étant événementielle plutôt que réalisée selon un horloge fixe, avec des avantages signalés pour les données en streaming et pour l'évolutivité vers des modèles avec un grand nombre de paramètres. SPM (Cartographie paramétrique statistique), une plateforme MATLAB créée par Karl Friston à l'unité MRC Cyclotron dans les années 1980 pour l'analyse statistique des données fMRI, PET et EEG, ant remet activement — son modèle général linéaire et sa machine à la théorie du champ gaussien ont évolué parallèlement et ont contribué à faire naître le formalisme de l'énergie libre, et elle est toujours utilisée aujourd'hui à la fois comme pierre angulaire historique et en tant qu'outil d'analyse fonctionnel. Symbolic Cognitive Robotics, construite autour du projet karma_system de Jean-Francois Cloutier, prend un quatrième chemin en combinant le raisonnement symbolique avec l'inférence active afin que les modèles génératifs, les croyances et les objectifs soient représentés sous forme de structures symboliques plutôt que numériques purs, tout en sélectionnant des actions par minimisation de l'énergie libre attendue.

Développement et apprentissage affiliés à l'institut

Le groupe d’apprentissage RxInfer.jl est un projet actif de l’Institut qui collabore directement avec les développeurs de RxInfer.jl sur le développement open source, y compris les techniques de visualisation des graphes de facteurs à l'intérieur de l'éditeur de code ; le groupe a organisé régulièrement des sessions synchrones et a recruté des contributeurs ayant divers horizons en Julia et en modélisation bayésienne pour travailler sur des projets appliqués. La robotique cognitive symbolique est le travail de Jean-Francois Cloutier, un chercheur associé à l’Institut, qui a démontré l'approche karma_system dans les contextes de planification robotique et de résolution de problèmes symboliques ; la robotique était également un domaine d’intérêt spécifique du Symposium appliqué sur l’Active Inference de deuxième édition de l’Institut. PyMDP, bien que maintenu en dehors de l’Institut, a été présenté lors des sessions d’apprentissage ModelStream de l’Institut, reflétant son rôle de référence partagée au sein de la communauté plus large plutôt qu'un outil unique du laboratoire.

Problèmes non résolus

Les outils ci-dessus ne partagent pas de format de modèle génératif commun, d'algorithme d'inférence ou de backend numérique, de sorte qu'un modèle construit dans l'un ne peut pas être portable vers un autre sans réécriture importante, et aucun ensemble de benchmarks standardisé n'existe encore pour les comparer en termes de précision, de vitesse ou de comportement à l'échelle. La division discrète/continue/symbolique signifie également que les praticiens doivent s'engager tôt dans une paradigme : états discrets de type POMDP, passage de messages continus ou représentations symboliques, avec un outil limité pour les combiner au sein d'un seul modèle. La maturité de la documentation et de l'emballage varie considérablement : certains outils disposent de tutoriels et de groupes d'apprentissage structurés, tandis que d'autres restent plus proches du code de recherche qu'un logiciel distribué. Comme pour d'autres domaines d'application de l'inférence active, les affirmations d'adoption et d'avantage en termes de performances reposent davantage sur des preuves de concept démontrées et sur le développement communautaire actif que sur des comparaisons systématiques et indépendantes contre des alternatives établies.

Surfaces clés

L'inférence active et les outils computationnels en un coup d’œil

Quatre paradigmes, un principe

Simulation de POMDP discret en Python, passage de messages dans le graphe de facteurs réactif en Julia, neuroimagerie statistique en MATLAB, et raisonnement symbolique pour la robotique implémentent tous la minimisation d'énergie libre, mais aucun ne partage un format de modèle ou un moteur d'inférence commun.

Le SPM remonte à la théorie qu'il soutient désormais.

Le SPM a commencé à la fin des années 1980 en tant que technique statistique pour l'analyse d'imagerie cérébrale, des années avant que l'inférence active ne soit formalisée — son modèle général linéaire et ses travaux sur la théorie du champ gaussien ont évolué parallèlement et ont contribué à façonner le principe d'énergie libre.

Développement géré par l'institut, et non pas seulement des outils associés à l'institut.

Le groupe d’apprentissage RxInfer.jl travaille directement avec les développeurs du framework sur les contributions open source, et Symbolic Cognitive Robotics est construit et démontré par un chercheur stagiaire de l’Institut, ce qui fait de cet domaine que l’Institut est un contributeur à la chaîne d'outils, et non seulement un applicateur.

Ressources associées

Liens publics pour cette page

Repository / Projects

GitHub organization

Audience: Developer

Public GitHub organization for Institute repositories and open-source work.

projectsgithub-org

Pages officielles

Surfaces institutionnelles officielles

Répositoires

Répositoires open-source associés