Introduction à la modélisation bayésienne Julien Diard Laboratoire de Psychologie et NeuroCognition – CNRS UE18S3 Psychophysique et analyse des signaux 22/11/2011 http://diard.wordpress.com Julien.Diard@upmf-grenoble.fr
Pour aller plus loin… Reviews, introductions, … Numéro spécial Trends in Cognitive Sciences 2006, 10(7) l’édito : N. Chater, J. B. Tenenbaum, and A. Yuille. Probabilistic models of cognition: Conceptual foundations. Trends in Cognitive Sciences, 10(7):287–291, 2006. F. Colas, J. Diard, and P. Bessière. Common bayesian models for common cognitive issues. Acta Biotheoretica, 58(2-3):191–216, 2010. ambiguities, fusion, multimodality, conflicts, modularity, hierarchies and loops N. Chater, M. Oaksford, U. Hahn, and E. Heit. Bayesian models of cognition. WIREs Cognitive Science, 1(6), 2010. plus « cognitif » : categorization, learning and causality, language processing, inductive and deductive reasoning, argumentation R.A. Jacobs and J.K. Kruschke. Bayesian learning theory applied to human cognition. WIREs Cognitive Science, 2010. M. Jones and B. Love. Bayesian fundamentalism or enlightenment? on the explanatory status and theoretical contributions of bayesian models of cognition. Behavioral and Brain Sciences, 34:169–231, 2011. Article cible BBS, suivi de commentaires
Pour aller plus loin… Modèles sensori-moteurs en robotique O. Lebeltel, P. Bessière, J. Diard, and E. Mazer. Bayesian robot programming. Autonomous Robots, 16(1):49–79, 2004. Modèles sensoriels et moteurs en sciences du vivant D. Kersten, P. Mamassian, and A. Yuille. Object perception as bayesian inference. annu Rev Psychol, 55:271–304, 2004. D. M. Wolpert. Probabilistic models in human sensorimotor control. Human Movement Science, 26:511–524, 2007. & cf. cours 2 Statistiques bayésiennes J. K. Kruschke. Bayesian data analysis. WIREs Cognitive Science, 1:658–676, 2010. J. K. Kruschke. What to believe: Bayesian methods for data analysis. Trends in Cognitive Science, 14:293–300, 2010.
Êtes-vous « Bayésien » ? I’m a bayesian if I use the word “probability”. I’m a bayesian if I use the word “conditional probability”. I’m a bayesian if I use Bayes’ rule. I’m a bayesian if I use Bayes’ rule in order to make inference. I’m a bayesian if I think that probabilities represent states of knowledge. I’m a bayesian if I think that probabilities represent states of knowledge and I also consider my parameters as random variables. I’m a bayesian if I think that probabilities represent states of knowledge and I use priors (no MaxLikelihood). I’m a bayesian if I think that probabilities represent states of knowledge and I use priors and I use priors on priors (hierarchical models). I’m a bayesian if I think that probabilities represent states of knowledge and I use subjective priors. I’m a bayesian if I think that probabilities represent states of knowledge and I use priors and I never use MAP. Pierre Dangauthier
Quelques définitions du mot « bayésien » En Intelligence Artificielle En robotique En sciences (physiques), en statistiques En sciences cognitives
Plan Introduction à la modélisation bayésienne En Intelligence Artificielle Historique En robotique Exemple de Programme Bayésien En sciences (physiques), en statistiques Méthodologie de sélection de modèles Exemples de « bayésien caché » En sciences cognitives Modélisation de la perception et de l’action
Plan Introduction à la modélisation bayésienne En Intelligence Artificielle Historique En robotique Exemple de Programme Bayésien En sciences (physiques) Méthodologie de sélection de modèles Exemples de « bayésien caché » En sciences cognitives Modélisation de la perception et de l’action
Intelligence Artificielle Construire des systèmes qui pensent / agissent comme des humains / rationnellement IA vs. Psychologie IA ≅ psychologie où on construit le sujet Psychologie ≅ IA où on tente de deviner comment fonctionne un robot ou un programme construit par quelqu’un d’autre
Intelligence Artificielle Construire des systèmes qui pensent / agissent comme des humains / rationnellement IA vs. Psychologie Distinctions similaires en psychologie Cognition symbolique / cognition située Implementation / algorithmique / computationel (hiérarchie de David Marr)
Intelligence Artificielle 50s-70s IA Symbolique Systèmes experts Blocks World
Prolog : programmation logique louis therese gedeon aglae |__________| |_________________| | | | isabelle pierre xavier claire |___________________| |________________| | | | | | gaelle axel catherine johan gwenael mere(aglae, xavier) ->; pere(gedeon, xavier) ->; mere(aglae, pierre) ->; pere(gedeon, pierre) ->; mere(therese, isabelle) ->; pere(louis, isabelle) ->; ... Exemple : système expert en généalogie Programme = Base de faits Base de règles Requêtes Inférence logique : principe de Robinson etre_mere(X) -> mere(X,Y); parent(X,Y) -> mere(X,Y); parent(X,Y) -> pere(X,Y); etre_fils(X) -> parent(Y,X); frere_ou_soeur(X,Y) -> pere(P,X) pere(P,Y); soeur_de(X,Y) -> frere_ou_soeur(X,Y) femme(X); grand_pere_de(X,Y) -> pere(X,Z) parent(Z,Y); cousin(X,Y) -> grand_pere_de(Z,X) grand_pere_de(Z,Y); tante(X,Y) -> parent(Z,Y) soeur_de(X,Z); ancetre(X,Y) -> parent(X,Y); /* cas de base, ancetre direct */ ancetre(X,Y) -> parent(Z,Y) ancetre(X,Z); /* ancetre indirect: X est un ancetre du pere de Y */ descendant(X,Y) -> ancetre(Y,X); ancetre(louis, johan);
Problème 1966 Le monde réel n’est pas le « blocks world » Marvin Minsky (MIT) donne un projet d’été de maîtrise à Gerald Sussman. Sujet : « la vision par ordinateur » Le monde réel n’est pas le « blocks world » Modèle nécessairement incomplet Ex : partie d’échecs (Deep Blue) vs. partie de football
Intelligence Artificielle et monde réel 80s-00s : L’IA symbolique devient la GOFAI Good old fashioned AI Méthodes numériques Réseaux de neurones artificiels Algorithmes génétiques Logique floue Modélisation Bayésienne (probabiliste) Transforme l’incomplétude du modèle en incertitude, manipulable mathématiquement Extension de la logique
Modèles de raisonnement humain Raisonnement déductif (logique) modus ponens A implique B, A est vrai : B est vrai modus tollens A implique B, B est faux : A est faux Raisonnement plausible S’il pleut, alors Jean a son parapluie Jean a son parapluie Il pleut, vraisemblablement
Représentation et règles de calcul Desiderata Représentation de degrés de plausibilité par des nombres réels Correspondance qualitative avec le sens commun Consistance Si une conclusion peut être atteinte par plusieurs chemins d’inférence, le résultat doit être indépendant du chemin Toutes les évidences sont utilisées pour une inférence Des états de connaissances équivalents amènent à des plausibilités équivalentes Probabilités Règle du produit et règle de la somme th. de Cox
Règles de calcul Soient A, B, C, des propositions logiques Règle du produit Règle de la somme (de normalisation)
Règles de calcul Règle du produit Théorème de Bayes Règle de la somme Règle de marginalisation Reverend Thomas Bayes (~1702-1761)
Probability Theory As Extended Logic Probabilités « fréquentistes » Une probabilité est une propriété physique d’un objet Axiomatique de Kolmogorov, théorie des ensembles Statistiques classiques Population parente, etc. Probabilités « subjectives » Référence à un état de connaissance d’un sujet P(« il pleut » | Jean), P(« il pleut » | Pierre) Pas de référence à la limite d’occurrence d’un événement (fréquence) Probabilités conditionnelles P(A | π) et jamais P(A) Statistiques bayésiennes E.T. Jaynes (1922-1998)
Inférence probabiliste Théorème Si on connaît la distribution conjointe P(X1 X2 … Xn | π) Alors on peut calculer n’importe quelle « question » P(X1 | [Xn = xn] π) P(X2 X4 | [X3 = x3] π)
Preuve ANOTHER ADVANTAGE IS THAT IT HAS NOTHING TO DO WITH GRAPHS, INFERENCE MAY BE SEEN AS PURE ALGEBRA ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Exemple Raisonnement plausible S’il pleut, alors Jean a son parapluie Jean a son parapluie Il pleut, vraisemblablement Peut-on capturer ce raisonnement en probabilités ?
Exemple A = {il pleut, il ne pleut pas} B = {Jean a son parapluie, Jean n’a pas son parapluie} P(B A) = P(A) P(B | A) P(A) P(A=il pleut) = 0,4 P(A=il ne pleut pas) = 1 - 0,4 = 0,6 P(A | B) Quizz : quel objet mathématique ?
Exemple P(B A) = P(A) P(B | A) P(B | A) P(B | A) A=il pleut A=il ne pleut pas B=Jean n’a pas son parapluie 0,05 0,9 B=Jean a son parapluie 0,95 0,1 1
Exemple Probabilité qu’il pleuve ? P(A = il pleut) = 0,4 Probabilité qu’il pleuve, sachant que Jean a son parapluie ? P(A | B = Jean a son parapluie) = P(B | A) P(A) / P(B) = P(B | A) P(A) / (ΣA P(B A)) P(A = il pleut | B = Jean a son parapluie) = 0,95*0,4 / (0,95*0,4 + 0,1*0,6) = 0,86
Êtes-vous « Bayésien » ? I’m a bayesian if I use the word “probability”. I’m a bayesian if I use the word “conditional probability”. I’m a bayesian if I use Bayes’ rule. I’m a bayesian if I use Bayes’ rule in order to make inference. I’m a bayesian if I think that probabilities represent states of knowledge. I’m a bayesian if I think that probabilities represent states of knowledge and I also consider my parameters as random variables. I’m a bayesian if I think that probabilities represent states of knowledge and I use priors (no MaxLikelihood). I’m a bayesian if I think that probabilities represent states of knowledge and I use priors and I use priors on priors (hierarchical models). I’m a bayesian if I think that probabilities represent states of knowledge and I use subjective priors. I’m a bayesian if I think that probabilities represent states of knowledge and I use priors and I never use MAP. Blog de Pierre Dangauthier
Plan Introduction à la modélisation bayésienne En Intelligence Artificielle Historique En robotique Exemple de Programme Bayésien En sciences (physiques) Méthodologie de sélection de modèles Exemples de « bayésien caché » En sciences cognitives Modélisation de la perception et de l’action
Logical Paradigm in robotics Incompleteness THESE HIDDEN VARIABLES ARE THE MAIN DIFFICULTY OF ROBOTICS --------------------------------------------------------------------------------------------------- (Bessière, 03)
Bayesian Paradigm in robotics =P(M | SDC) P(MS | DC) THE BAYESIAN PARDIGMIN IN ROBOTICS IS AN ALTERNATIVE TO THE LOGICAL APPROACH --------------------------------------------------------------------------------------------------------------------------------- PRELIMINARY KNOWLEDGE = PROBABILISTIC CANVAS SHAPE OF THE CANVAS OBTAIN BY LEARNING 2 SOURCES SECOND SOURCE INFLUENCED BY HIDDEN VARIABLES PROBABILISTIC INTERNAL REPRESENTATION TAKE INTO ACCOUNT THESE HIDDEN VARIABLES
Probability as Logic Incompleteness Uncertainty Decision Preliminary Knowledge + Experimental Data = Probabilistic Representation Maximum Entropy Principle Decision Bayesian Inference P(AB|C)=P(A|C)P(B|AC)=P(B|C)P(A|BC) P(A|C)+P(¬A|C) = 1 THIS APPROACH HAS BEEN CLEARLY DESCRIBED BY JAYNES ----------------------------------------------------------------------------------------- LEARNING TRANSFORMS THE INCOMPLETNESS IN UNCERTAINTY 2 EXTREME CASES PROBABILISTIC REASONING
Programmation Bayésienne des Robots (PBR) Variables Décomposition Formes paramétriques Spécification Description P(X1 … Xn | C) Programme Identification Questions : P(Xi … Xj | Xk … Xl C) (Lebeltel, 99)
Sensor Fusion Objective Difficulty Solution Find the position of a light source Difficulty No sensor to directly measure the position of a light source. Solution Model of each sensor Fusion of the 8 models
Model of a Light Sensor Description Program Question Utilization Specification Lmi Variables ThetaL, DistL, Lmi Description Question Decomposition Parametrical Forms Program Preliminary Knowledge psensor Identification A priori specification Utilization
Model of a Light Sensor (2) Bayesian Inference: Inverse Problem Description: Question 1: Question 2:
Model of a Light Sensor (3) P(ThetaL | Lmi ) P(DistL | Lmi ) Notion of ambiguity
Sensor Fusion Model Description Program Question Utilization Specification Variables ThetaL, DistL, Lm0, …, Lm7 Description Question Decomposition (Conditional Independance Hypothesis) Parametrical Forms Program Identification No free parameters Utilization
Classes de modèles probabilistes Réseaux bayésiens Réseaux bayésiens dynamiques Filtres bayésiens Modèles de Markov Cachés Filtres de Kalman Processus de décision markovien (partiellement observable) … (Diard, 2003)
Plan Introduction à la modélisation bayésienne En Intelligence Artificielle Historique En robotique Exemple de Programme Bayésien En sciences (physiques) Méthodologie de sélection de modèles Exemples de « bayésien caché » En sciences cognitives Modélisation de la perception et de l’action
Notation probabiliste Soient Θ = {θ1, θ2, …} paramètres des modèles Δ = {δ1, δ2, …, δn} données expérimentales δi = {x, y} une donnée x var indépendante contrôlée y var dépendante Un modèle P(δi) = P(y | x) P(x) P(δi | θ1) = P(y | x θ1) P(x | θ1)
Notation probabiliste Soient Θ = {θ1, θ2, …} paramètres des modèles Δ = {δ1, δ2, …, δn} données expérimentales δi = {x, y} une donnée Méta-modèle
Sélection de modèle Quel est le modèle le plus probable, au vu des données ? Question ubiquitaire en sciences ! Trouver θ qui maximise
Si P() = uniforme Si P() uniforme Modèle = prior vraisemblance Posterior Prior Vraisemblance Si P() = uniforme Modèle de maximum de vraisemblance Maximum Likelihood (MLE) Si P() uniforme Modèle = prior vraisemblance Modèle de maximum a posteriori (MAP) Méthode bayésienne
data set set of models set of parameters Sélection de modèle Machine learning Identification de paramètres Active learning Design optimization Distinguabilité des modèles
Êtes-vous « Bayésien » ? I’m a bayesian if I use the word “probability”. I’m a bayesian if I use the word “conditional probability”. I’m a bayesian if I use Bayes’ rule. I’m a bayesian if I use Bayes’ rule in order to make inference. I’m a bayesian if I think that probabilities represent states of knowledge. I’m a bayesian if I think that probabilities represent states of knowledge and I also consider my parameters as random variables. I’m a bayesian if I think that probabilities represent states of knowledge and I use priors (no MaxLikelihood). I’m a bayesian if I think that probabilities represent states of knowledge and I use priors and I use priors on priors (hierarchical models). I’m a bayesian if I think that probabilities represent states of knowledge and I use subjective priors. I’m a bayesian if I think that probabilities represent states of knowledge and I use priors and I never use MAP. Blog de Pierre Dangauthier
Plan Introduction à la modélisation bayésienne En Intelligence Artificielle Historique En robotique Exemple de Programme Bayésien En sciences (physiques) Méthodologie de sélection de modèles Exemples de « bayésien caché » En sciences cognitives Modélisation de la perception et de l’action
Tel monsieur Jourdain… Un phénomène génère des y pour un x fixé par l’expérimentateur Un modèle prédit y = F(x), F linéaire : F = ax + b autorise du « bruit » dans les mesures On observe D = {dx1, …, dxn} Question Quels sont les paramètres a, b les plus probables ?
Tel monsieur Jourdain…
Tel monsieur Jourdain…
Least square fitting sur Mathworld http://mathworld.wolfram.com
Pour aller plus loin… Inférence dans les cas non-linéaires Moindres carrés Bayésien Espace de modèles = {3x+2, 4x3-2x2+4} Priors hiérarchiques P( | ) Rasoir d’Occam automatique…
Modélisation bayésienne et mesures d’erreurs
Plan Introduction à la modélisation bayésienne En Intelligence Artificielle Historique En robotique Exemple de Programme Bayésien En sciences (physiques) Méthodologie de sélection de modèles Exemples de « bayésien caché » Bonus : importance des variables cachées
Importance des variables cachées
Modélisation d’une série temporelle
P(y)
Variable cachée V1 = {Bleu, Rouge} V1=R V1=B 56
P(y | [V1=R]) P(y | [V1=B]) 57
V2 = {Bleu, Rouge} [V1=R] [V1=B] P(y | [V1=R] [V2=R]) P(y | [V1=R] [V2=B]) [V1=R] P(y | [V1=B] [V2=R]) P(y | [V1=B] [V2=B]) [V1=B] 58
Digression : entropie Déf : Exemple : [Shannon, 1948] 59
Exemple 2 : P(X), X = {-1, 0, 1} 60
Variables cachées, connaissance et entropie Théorème : Les variables cachées apportent de l’information P(y) P(y | [V1=B] [V2=B]) 61
Prédiction de la prochaine valeur ? P(y) P(y | [V1=B] [V2=B]) 62
Pour 2005-2010, [V1=B] et [V2=B] 63
Merci de votre attention ! Questions ?
Timing Pause 15 min Préambule 15 min En Intelligence Artificielle 45 min Historique En robotique 30 min Exemple de Programme Bayésien Pause 15 min En sciences (physiques) Méthodologie de sélection de modèles 30 min Exemples de « bayésien caché » 45 min Bonus : importance des variables cachées, mesures d’erreurs 15 min (ou intro cours 2)