Les modèles graphiques probabilistes Réseaux causaux possibilistes pour le traitement des interventions Salem ENFERHT CRIL, Lens benferhat@cril.univ-artois.fr Outils importants pour la représentation et l analyse des informations incertaines dans les systèmes de base de connaissances 2 Réseaux ayésiens Composante «symbolique» Structure graphique Graphe acyclique orienté (DG) Influence et Indépendance Composante quantitative distributions de probabilités Incertitude Indépendance Réseaux bayésiens (R) Noeuds représentent Les variables 1 2 3 4 Graphe acyclique orienté Liens représentent les relations causales + Distributions de probabilité conditionnelles locales 3 4 1
Dépendance Observations vs. Interventions Si on observe que le est mouillé P(= «mouillé»)=1 est-ce que P() ou? Oui 6 Causalité Intervention: interne ou externe? Une intervention est d origine externe On mouille le P(= «mouillé»)=1 est-ce que P() ou? Non 7 8 2
Réseau bayésien causal Réseau bayésien causal Réseau bayésien causal (RC) est : un réseau bayésien, mais : Un arc X Y existe ssi X est une cause directe de Y rc Lien de causalité P(X Y) signifie que non seulement il existe une relation entre X et Y mais que Y est une cause X 10 Réseau bayésien causal Intervention Un réseau bayésien causal prend un sens uniquement si on effectue des interventions. «Le est mouillé» => observation => conditionnement probabiliste: P(ω) P(ω =a) «On mouille le» => intervention ou action Comment modéliser les interventions dans un R? Pearl (1992): Une action qui force à prendre la valeur a est notée do(=a) ou do(a). P(ω) P(ω do(=a)) 11 12 3
près intervention sur rroseur (), Intervention Les croyances sur les causes directes de ne doivent pas être changées P(=«on»)? rroseur Saison do(=«mouillé») Représentation de l intervention (1): «Mutilation du graphe» Supprimer les liens vers le nœud concerné Toutes les causes autres que celle de l intervention sont exclues Conditionnement sur le graphe modifié (mutilé). do(c=c) C E D 13 Les croyances sur et ne changent pas 14 Représentation de l intervention (1): «Mutilation du graphe» Calcul de l effet d une action Saison Saison rroseur rroseur Cas : pas de variables non-observées (non-mesurées) ction simple do(=a i ') Effet de l intervention sur la jointe est: P(a j u j ) si a i = a i ', P(a 1,,a i,, a n do(a i '))= 0 sinon Observation : =«On» Conditionnement classique ction : do(=«on») - supprimer les arcs entrant vers - Conditionnement dans le nouveau graphe 15 16 4
Calcul de l effet d une action Saison Saison rroseur rroseur P(SPH)= P(S) P( S) P(P S) P(H P) P(SPH)= P(S) P(P S) P(H P) utres représentations équivalents des interventions lgo de propagation sur les interventions = lgo de propagation sur les observations 17 Représentation de l intervention (2): «ugmentation du graphe» Exemple = graphe augmenté Do(=a ) Pour toute variable où il peut y avoir interventions, ajouter un nœud parent DO DO est une variable qui prend valeur dans {do(=a ),rien} pour tout a instance de. «rien» signifie «pas d actions». U {U DO } oui 0,8 non 0,2 DO DO C C DO P(a u )= P(a u ) si DO =rien 1 si DO =do(a') et a'=a 0 si DO =do(a') et a' a Gazon Herbe mouillé oui 0,9 mouillé non 0,3 sec oui 0,1 sec non 0,7 19 20 5
? rien do(mouillée) do(sèche) DO H Exemple = graphe augmenté oui 0,8 non 0,2 Exemple = graphe augmenté Si il y a intervention do(=mouillé) rien 0 do(mouillée) 1 do(sèche) 0 DO H oui 0,8 non 0,2 Gazon DO_H Herbe,DO_H mouillé oui rien 0,9 mouillé oui do(mouillé) 1 mouillé oui do(sec) 0 mouillé non rien 0,3 mouillé non do(mouillé) 1 mouillé non do(sec) 0 sec oui rien 0,1 sec oui do(mouillé) 1 sec oui do(sec) 0 sec non rien 0,7 sec non do(mouillé) 1 sec non do(sec) 0 21 on obtient: Gazon DO_H P(Herbe,,DO_H) mouillé oui rien 0 mouillé oui do(mouillé) 0,8 mouillé oui do(sec) 0 mouillé non rien 0 mouillé non do(mouillé) 0,2 mouillé non do(sec) 0 sec oui rien 0 sec oui do(mouillé) 0 sec oui do(sec) 0 sec non rien 0 sec non do(mouillé) 0 sec non do(sec) 0 Gazon DO_H Herbe,DO_H mouillé oui rien 0,9 mouillé oui do(mouillé) 1 mouillé oui do(sec) 0 mouillé non rien 0,3 mouillé non do(mouillé) 1 mouillé non do(sec) 0 sec oui rien 0,1 sec oui do(mouillé) 0 sec oui do(sec) 1 sec non rien 0,7 sec non do(mouillé) 0 sec non do(sec) 1 22 Graphe augmenté Graphe augmenté: propagation Objectif : Graphe augmenté rbre de jonction Inférence sur interventions Problème : quelle distribution a priori attribuer aux nœuds DO i (à l état initial)? Ce que l on veut exprimer est: Par défaut il n y a pas d intervention Qui peut-être remise en cause s il y a intervention 23 24 6
Graphe augmenté: propagation Graphe augmenté: propagation Par défaut il n y a pas d intervention si on attribue 1 à P(DO i =«rien») On ne peut plus après avoir DO i =«a i» (on est en présence d événement impossible) Donc il faut faire une initialisation avec des probabilité positive sur chacune des instance de DO i Par exemple, la solution de distribution uniforme sur la variable DO i P(DO i =«rien»)=1/k+1 Pour tout ai, P(DO i =a i )=1/k+1 25 26 Exemple : probabilité Exemple : probabilité Observation =b1 b2 0 rien 0,333 do(a1) 0,333 do(a2) 0,333 DO b2 0 P() a1 b1 0,6 a1 b2 0 a2 b1 0,4 a2 b2 0 a1 b1 0,6 a1 b2 0,3 a2 b1 0,4 a2 b2 0,7 DO P(,,DO) a1 b1 rien 0,2 a1 b1 do(a1) 0,333 a1 b2 rien 0 a1 b2 do(a1) 0 a2 b1 rien 0,133 a2 b1 do(a2) 0,333 a2 b2 rien 0 DO,DO a1 b1 rien 0,6 a1 b1 do(a1) 1 a1 b2 rien 0,3 a1 b2 do(a1) 1 a2 b1 rien 0,4 a2 b1 do(a2) 1 a2 b2 rien 0,7 a2 b2 do(a2) 1 P(=a1)=0.6 P(=a2)=0.4 a2 b2 do(a2) 0 P(=a1)= 0.5333 P(=a2)= 0.4666 => P() =/= P G () 27 28 7
Exemple : probabilité Exemple : probabilité rien 0,333 do(a1) 0,333 do(a2) 0,333 DO b2 0 rien 1 do(a1) 0 do(a2) 0 DO b2 0 Pas d intervention DO,DO Pas d intervention DO,DO a1 b1 rien 0,6 a1 b1 rien 0,6 DO P(,,DO) a1 b1 rien 0,2 a1 b1 do(a1) 0,333 a1 b2 rien 0 a1 b2 do(a1) 0 a2 b1 rien 0,133 a1 b1 do(a1) 1 a1 b2 rien 0,3 a1 b2 do(a1) 1 a2 b1 rien 0,4 a2 b1 do(a2) 1 a2 b2 rien 0,7 a2 b2 do(a2) 1 DO P(,,DO) a1 b1 rien 0,6 a1 b1 do(a1) 0 a1 b2 rien 0 a1 b2 do(a1) 0 a2 b1 rien 0,4 a1 b1 do(a1) 1 a1 b2 rien 0,3 a1 b2 do(a1) 1 a2 b1 rien 0,4 a2 b1 do(a2) 1 a2 b2 rien 0,7 a2 b2 do(a2) 1 a2 b1 do(a2) 0,333 a2 b1 do(a2) 0 a2 b2 rien 0 a2 b2 rien 0 a2 b2 do(a2) 0 a2 b2 do(a2) 0 P(=a1)= 0.5333 P(=a2)= 0.4666 => P() =/= P G () P(=a1)= 0.6 P(=a2)= 0.4 => P() = P G () 29 30 Graphe augmenté: propagation On peut faire une étape de transformation vers arbre de jonction, mais avant de propager, il faut connaître toutes les interventions. Réseaux causaux possibilistes Solutions possibles dans d autres cadres de l incertain 31 32 8
Motivations L opérateur de base «do» a été introduit dans le cadre des OCF (Fonctions Conditionnelles Ordinales) La notion de causalité a été motivée en utilisant uniquement la structure de graphe Ex: Une intervention sur une variable ne doit pas changer nos croyances sur ses causes directes. Il est clair que l intervention et l observation ne doivent pas être confondues. => donc il est important d avoir un cadre qui permet, en théorie de possibilité, de modéliser les interventions. Réseau causal possibiliste Réseau causal possibiliste (RCP) est: un réseau possibiliste, mais : Un arc X Y existe ssi X est une cause directe de Y rc Lien de causalité π(x Y) signifie que non seulement il existe une relation entre X et Y mais que Y est une cause de X Un réseau bayésien causal prend un sens uniquement si on effectue des interventions. 33 34 Représentation de l intervention (1): «Mutilation du graphe» Supprimer les liens vers le nœud concerné Toutes les causes autres que celle de l intervention sont exclues Conditionnement sur le graphe modifié (mutilé) selon le type de réseaux (basés sur le min ou sur le produit) Représentation de l intervention (2): «ugmentation du graphe» Do(=a ) Pour toute variable où il peut y avoir interventions, ajouter un nœud parent DO DO est une variable qui prend valeur dans {do(=a ),rien} pour tout a instance de. «rien» signifie «pas d actions». DO U {U DO } DO do(c=c) C E D Les croyances sur et ne changent pas: π()=π ()=π( do(c=c)) π()=π ()=π( do(c=c)) π ( a u) ' π( a u) = 1 0 sido = rien DO C ' ' sido = do( a )et a = a ' ' sido = do( a )et a a C 35 36 9
Graphe augmenté: avantages Graphe augmenté : propagation rien? do(a1)? do(a2)? DO Problème: quelle distribution a priori attribuer aux nœuds DO (à l état initial)? Ce que l on veut exprimer est: - pas d intervention par défaut - possibilité de la remise en cause s il y a intervention b2 0,4 DO,DO a1 b1 rien 1 a1 b1 do(a1) 1 a1 b2 rien 0,6 a1 b2 do(a1) 1 a2 b1 rien 0,5 a2 b1 do(a2) 1 a2 b2 rien 1 a2 b2 do(a2) 1 En probabilité: Pas d intervention par défaut => i, P(DO i =«rien»)=1 On ne peut plus après avoir DO i =«a i» (évènement impossible) Par exemple, la solution de distribution uniforme sur la variable DO i P(DO i =«rien»)=1/ D i +1 a i, P(DO i =a i )=1/ D i +1 37 38 Graphe augmenté possibiliste: propagation Solution: cadre possibiliste i, distributions de possibilité locales au niveau de DO i : π(do i =rien) 1 a i instance de i, π(do i =do(ai )) ε où α est le plus bas degré de possibilité attribué (toutes variables considérées) ε min ai (π(a i u i )) i, DO i =rien est considérée par défaut comme étant la situation la plus normale a i, DO i =do(ai ) est considérée comme étant l évènement le moins normal et le moins préféré dans le graphe évitant ainsi d influencer nos connaissances initiales sur le reste des variables Graphe augmenté possibiliste: propagation Distributions par défaut équivalentes sur les variables de base ω Π G (ω)= π(ω) En absence d intervention, la distribution de possibilité associée au graphe augmenté est égale à la distribution de possibilité associée au grahe initial 39 40 10
rbres de jonction augmentés Les nœuds ajoutés DO i au graphe initial G sont aussi ajoutés à l arbre de jonction J Construction de J à partir du graphe augmenté G : problématique! Nbre de nœuds = Nbre nœuds dans G+Nbre nœuds ajoutés Solution: jouter les nœuds DO i lors de l étape d initialisation de J rbres de jonction augmentés Initialisation: Pour chaque clique C i dans J: ω, π Ci (ω) 1 Pour chaque i dans G, choisir une clique C i contenant i U i Si i est un nœud qui peut être concerné par une intervention: jouter le nœud DO i à C i π Ci π Ci. π(a i u i,do i ). π(do i ) Sinon π Ci π Ci. π(a i u i ) 41 42 rbres de jonction augmentés La jointe résultante dans J est équivalente à celle du graphe augmenté G: ω,do i, π J (ω,do i )=π G (ω,do i ) Représentation de l intervention (2): «ugmentation du graphe» où do i est une instance quelconque des nœuds DO i 43 11
Représentation de l intervention (2): «ugmentation du graphe» Pour toute variable où il peut y avoir interventions, ajouter un nœud parent DO DO est une variable qui prend valeur dans {do(=a ),rien} pour tout a instance de. «rien» signifie «pas d interventions». U {U DO } DO DO π ( a u) ' π( a u) = 1 0 sido = rien DO C ' ' sido = do( a )et a = a ' ' sido = do( a )et a a C Inférence dans des graphes augmentés possibilistes : Problème de constructions d arbres de jonction pour chaque intervention 45 46 Inférence dans les réseaux possibilistes Observation C=c Effet de cette observation sur V\{C}? π( C=c), π( C=c), => Inférence Propagation sans intervention dans les RP R simplement connectés : polynomial R à connexions multiples : NP-complet Transformation graphique : graphe initial en un arbre de jonction (moralisation - triangulation) E D C C C CD C 1 S 12 C 2 S D 23 Variables en commun (séparateur) C 3 clique DE 47 48 12
Graphe augmenté: retour en probabilités Graphe augmenté : propagation rien? do(a1)? do(a2)? DO Problème: (ignorance sur la présence ou non d interventions) quelle distribution a priori attribuer aux nœuds DO (à l état initial)? Ce que l on veut exprimer est: - pas d intervention par défaut - possibilité de la remise en cause s il y a intervention b2 0,4 DO,DO a1 b1 rien 1 a1 b1 do(a1) 1 a1 b2 rien 0,6 a1 b2 do(a1) 1 a2 b1 rien 0,5 a2 b1 do(a2) 1 a2 b2 rien 1 a2 b2 do(a2) 1 49 En probabilité: Pas d intervention par défaut => i, P(DO i =«rien»)=1 On ne peut plus après avoir DO i =«a i» (évènement impossible) La solution de distribution uniforme sur la variable DO i n est pas satisfaisante non plus. P(DO i =«rien»)=1/ D i +1 a i, P(DO i =a i )=1/ D i +1 50 Graphe augmenté (probabilités) Graphe augmenté (probabilités) Observation =b1 b2 0 rien 0,333 do(a1) 0,333 do(a2) 0,333 DO b2 0 Distribution jointe P P() a1 b1 0,6 a1 b2 0 a2 b1 0,4 a2 b2 0 P(=a1)=0.6 P(=a2)=0.4 a1 b1 0,6 a1 b2 0,3 a2 b1 0,4 a2 b2 0,7 Pas d intervention Distribution jointe P G DO P(,,DO) a1 b1 rien 0,2 a1 b1 do(a1) 0,333 a1 b2 rien 0 a1 b2 do(a1) 0 a2 b1 rien 0,133 a2 b1 do(a2) 0,333 a2 b2 rien 0 a2 b2 do(a2) 0 P(=a1)= 0.5333 P(=a2)= 0.4666 DO,DO a1 b1 rien 0,6 a1 b1 do(a1) 1 a1 b2 rien 0,3 a1 b2 do(a1) 1 a2 b1 rien 0,4 a2 b1 do(a2) 1 a2 b2 rien 0,7 a2 b2 do(a2) 1 => P() P G () 51 52 13
Graphe augmenté possibiliste: propagation 2 ème solution: π(do i =rien) 1 a i instance de i, π(do i =do(ai )) α où α est le plus bas degré de possibilité attribué (toutes variables considérées) i, DO i =rien est considérée par défaut comme étant la situation la plus normale a i, DO i =do(ai ) est considérée comme étant l évènement le moins normal et le moins préféré dans le graphe évitant ainsi d influencer nos connaissances initiales sur le reste des variables FIN 53 54 14