Vous êtes sur la page 1sur 73

Raisonnement probabiliste

Plan
Rseaux baysiens Infrence dans les rseaux baysiens
Infrence exacte Infrence approximative

Rseaux baysiens
Au chapitre dintro sur les pbs, on a vu que
Les distributions de probabilits jointes compltes pouvaient rpondre toutes les questions, mais quelles pouvaient tre fort coteuses en computation. Lindpendance et lindpendance conditionnelle permettaient de rduire le nombre de probabilits spcifier pour dfinir une distribution de probabilits jointes complte.

Dans ce chapitre, on va voir les rseaux baysiens qui permettent de


reprsenter les dpendances entre les variables donner une spcification concise des distributions de probabilits jointes compltes.
3

Syntaxe des rseaux baysiens


Un rseau baysien est un graphe orient acyclique o chaque nud est annot dune table de probabilits conditionnelles. Plus spcifiquement, il contient:

Un ensemble de variables alatoires. Un ensemble de liens orients connectant deux nuds. Sil y a un lien entre le nud X et Y, on dit que X est le parent de Y. Chaque nud a une distribution de probabilit conditionnelle P(Xi | Parents(Xi)) qui quantifie leffet des parents sur le nud.
4

Exemple du dentiste

Weather est indpendante des autres variables Toothache et Catch sont conditionnellement indpendantes sachant Cavity.
Il ny a aucun lien direct entre Toothache et Catch.
5

Judea PearlPionnier des RB


Judea Pearl named 2011 winner of Turing Award UCLA professor cited for pioneering work in extending our understanding of artificial intelligence

Exemple de lalarme
Vous avez une nouvelle alarme la maison qui
sonne lorsquil y a un cambriolage; sonne parfois lorsquil y a un tremblement de terre.

Vous avez deux voisins qui vous appellent au bureau sils entendent lalarme.
John appelle tout le temps quand il entend lalarme, mais parfois il confond le tlphone avec lalarme. Mary aime couter de la musique forte et parfois elle nentend pas lalarme.

Sachant qui a appel, quelle est la probabilit quil y ait un cambriolage ?


7

Exemple de lalarme

Exemple de lalarme
La topologie du rseau reflte un ensemble de relations dindpendances conditionnelles
Bulgary et Earthquake affectent directement la probabilit de dclenchement dune alarme Le fait que John ou Mary appelle ne dpend que de lalarme. John et Mary ne peroivent pas directement le cambriolage ou les tremblements de terre mineurs.
9

Exemple de lalarme

10

Spcification concise
Une table de probabilit conditionnelle (TPC) pour une variable boolenne Xi, avec k parents boolens, a 2k rangs. Chaque range a un nombre p (e.g. une pb) pour Xi = True Si le nombre maximal de parents est k, alors le rseau demande O(nk) nombres.
Le nombre pour Xi = False est 1 p

Linaire en n, au lieu de O(2n) pour la table conjointe complte

Pour lexemple (alarme), a donne 10 nombres (soit 5 variables fois 2) au lieu de 25 = 32 pour la table complte.
11

Smantique des rseaux baysiens


Smantique globale: dfinit la distribution jointe complte de probabilits comme le produit des distributions conditionnelles locales:

Exemple:

12

Construire des rseaux baysiens


Il faut une mthode garantissant quune srie dindpendances conditionnelles vrifies localement induise la smantique globale requise
Choisir un ordre sur les variables X1, ,Xn Pour i = 1 n Faire - Ajouter Xi au rseau - Slectionner ses parents dans X1, , Xi-1 tels que P(Xi | Parents(Xi)) = P(Xi | X1, ,Xi-1) Fin Pour Il est prfrable davoir un modle causal, cest--dire quil est mieux dajouter la cause racine en premier et ensuite les variables qui sont influences par la cause.
13

Exemple
Supposons que lon choisit lordre B, E, A, M, J
Bulgary Earthquake

Alarm

MaryCalls

JohnCalls

14

Exemple
Supposons que lon choisit le mauvais ordre M, J, A, B, E P(J|M) = P(J)? Non P(A|J,M) = P(A|J)? Non P(A|J,M) = P(A|M)? Non P(B|A,J,M) = P(B|A) ? Oui P(B|A,J,M) = P(B) ? Non P(E|B,A,J,M) = P(E|A) ? Non P(E|B,A,J,M) = P(E|A,B) ? Oui
MaryCalls JohnCalls

Alarm

Bulgary Earthquake
15

On obtient un rseaux plus complexe avec des probabilits plus difficiles dterminer.

Smantique des rseaux baysiens


Smantique locale: chaque nud est conditionnellement indpendant de ses nondescendants tant donn ses parents.
X est conditionnellement indpendant de ses non-descendants Zij tant donn ses parents Ui

16

Smantique des rseaux baysiens (2)


Chaque nud est indpendant des autres sachant son Markov Blanket (Couverture de Markoven gris): parent + enfants + parents des enfants.

Si MB(X) = A, alors P(A|A,B) = P(A|A) Autrement dit: la seule connaissance pour prdire le nud A cest MB(A)
17

Smantique des rseaux baysiens (3)


Cambriolage est indpendant de JeanAppelle et de MarieAppelle, tant Alarme et TemblementDeTerre
Cambriolage TremblemenDeTerre

Alarme

MaryAppelle

JohnAppelle

18

Reprsentation efficace des distributions


Les tables de distributions conditionnelles grandissent de manire exponentielle selon le nombre de parents.
Ceci est le pire cas lorsque les relations entre les nuds parents et enfants sont arbitraires.

Habituellement, la relation peut tre dcrite par une distribution canonique qui correspond un certain patron.
La table complte peut tre dfinie en nommant le patron et peut-tre certains paramtres.
19

Distribution canonique
Nuds dterministes
Les valeurs dun nud dterministe sont dfinies exactement par les valeurs de ses parents.
X = f(Parent(X)) pour une certaine fonction f.

Exemple: Fonction boolenne, le fils = disjonction des parents Relation numrique entre des variables continues

20

Distribution canonique
Noisy-OR (ou bruit)
Utilis pour dcrire les relations incertaines La relation causale entre parent et fils peut tre inhibe.
Ex: un patient peut avoir la grippe sans avoir de la fivre.

Deux suppositions:
Toutes les causes possibles sont listes. (Il peut y avoir un nud Autres). Linhibition dun parent est indpendante de linhibition des autres parents.
21

Exemple Noisy-OR
La grippe, le rhume et la malaria causent de la fivre. Avec une relation Noisy-OR , on peut dfinir toute la table en spcifiant seulement les trois probabilits dinhibition suivantes :

22

Exemple Noisy-OR
Toutes les causes sont supposes listes Les causes :C nont pas dinfluence sur le nud en question Linhibition de chaque parent (soit qi )est indpendante de celles des autres parents; soit
j P (xijparents(Xi)) = 1 i=1 qi

23

Exemple Noisy-OR

Ex:

P (:feverjmalaria & :cold)= P (:feverjmalaria)P (:feverj:cold)=0:20:1


24

Exemple Noisy-OR
Ex:

P (:feverjmalaria & :cold) = P (:feverjmalaria)P (:feverj:cold)= 0:20:1

Le nombre de probabilits dfinir est linaire (O(k) au lieu de O(2k) si k parents) selon le nombre de parents au lieu dtre exponentiel.

25

Variables continues
Plusieurs problmes du monde rel contiennent des quantits continues: hauteur, poids, temprature, argent, etc. Avec des variables continues, on ne peut pas dfinir des probabilits conditionnelles pour chacune des valeurs possibles. Deux solutions
Utiliser la discrtisation (perte de prcision et trs grande table) Dfinir des densits de probabilits avec un nombre fini de paramtres.
26

Exemple
Un consommateur achte des fruits dpendamment du cot (Cost), qui lui dpend de la taille de la cueillette (Harvest) et sil y a eu une subvention du gouvernement (Subsidy). Deux cas:
Variable continue avec des parents continus et discrets
Ex: Cost

Variable discrte avec des parents continus


Ex: Buys
27

Variable fils continue


Pour la variable Cost, il faut spcifier P(Cost|Harvest,Subsidy). Pour le parent discret (Subsidy), on a qu numrer les valeurs possibles:
P(Cost|Harvest,subsidy) et P(Cost|Harvest,subsidy)

Pour la variable continue (Harvest), on spcifie une fonction de distribution pour la variable Cost en fonction de la variable Harvest.
28

Variable fils continue


La plus utilise est la fonction linaire gaussienne.

La moyenne de Cost varie linairement avec Harvest, la variance est fixe.

29

Variable fils discrte


Pour la probabilit de Buys sachant Cost, on peut utiliser une fonction probit .

Ou la distribution logit qui utilise la fonction de sigmod.


30

Sommaire
Les rseaux baysiens sont une manire naturelle de reprsenter les dpendances causales. Cest une reprsentation compact des distributions jointes. Gnralement facile construire Les distributions canoniques sont une manire compacte de reprsenter les tables de probabilits conditionnelles. Pour les variables continues, on peut utiliser des fonctions de distribution.
31

Infrence exacte dans les rseaux baysiens


On vise maintenant calculer la distribution de probabilit a posteriori dun ensemble de variables de requtes, tant donne un vnement observ, cest--dire certaines assignations de valeurs des variables dvidence.
X : variable de question/requte E: lensemble des variables dvidence e: un vnement particulier Y: lensemble des variables caches

Lensemble complet des variables est:


32

Infrence exacte dans les rseaux baysiens


Une question/requte typique: P(X|e) Dans lexemple du cambriolage, on pourrait observer lvnement: JohnCalls = true et MaryCalls = true. Par la suite, on pourrait se demander sil y a eu un cambriolage.

33

Rappel du chapitre 13: Infrence utilisant


des distributions conjointes compltes

34

Infrence par numration


Comme les rseaux baysiens donnent la reprsentation complte de la table de distribution jointe, alors on peut utiliser la formule suivante, vue au chapitre 13.

Si on reprend lexemple prcdent o les variables caches sont Earthquake et Alarm.


35

Infrence par numration


On peut rcrire la formule en utilisant les entres des tables de probabilits conditionnelles du rseau baysien. Pour Burglary = true, on obtient:
B A M J E

En simplifiant, on obtient:

36

Infrence par numration


Arbre de calcul:

Rptitions
37

Infrence par numration


En effectuant les calculs, on obtient: Si on fait la mme chose pour Burglary = false et quon fait la somme, on obtient: Mme si les deux appellent, il ny a que 28% des chances quil y est eu un cambriolage. La complexit en temps de linfrence par numration est de O(2n).
38

Infrence par limination de variables


Amliore lalgorithme par numration en vitant les calculs rpts. La somme est effectue de la droite vers la gauche. Exemple cambriolage:

Facteurs
39

Exemple
Pour le facteur M, on enregistre les probabilits, tant donn chaque valeur de a, dans un vecteur deux lments.

On fait la mme chose pour J. Pour le facteur A, on obtient une matrice de 2 x 2 x 2, fA(A,B,E)
40

Exemple
Il faut maintenant faire la somme du produit des trois facteurs. La barre sur le A, indique que lon a fait la somme pour A.

La multiplication utilise est: pointwize product (produit point par point).

41

Exemple
Le facteur et la sommation sur E sont calculs de la mme manire.

Finalement, on obtient:

42

Produit point par point


Le pointwize product de deux facteurs f1et f2 donne un nouveau facteur f dont les variables sont lunion des variables de f1 et f2. Exemple:

43

Variables inutiles
Considrons: P(J|b)
La somme sur M donne 1, donc M est inutile.

Thorme: Y est inutile sauf si Ici:


donc, M est inutile.
44

Infrence approximative dans les rseaux baysiens


Les mthodes dinfrences exactes que lon vient de voir ne sont pas utilisables pour de grands rseaux. Cest pourquoi on considre des approches approximatives. On va voir des algorithmes bass sur lchantillonnage alatoire (Monte Carlo) dont la prcision va dpendre du nombre dchantillons.
45

Mthodes dchantillonnage directes


La forme la plus simple dchantillonnage alatoire est de gnrer des vnements sans variable dvidence. La distribution de probabilit partir de laquelle un chantillon pour une variable est choisi est base sur les valeurs attribues aux parents.

46

Exemple

47

Exemple

48

Exemple

49

Exemple

50

Exemple

51

Exemple

52

Exemple

53

Estimer la probabilit dun vnement


On peut estimer la probabilit dun vnement avec la fraction des vnements gnrs alatoirement qui remplit la condition. Par exemple, si on gnre 1000 chantillons et que dans 511 dentre eux, Rain = true, donc on peut faire lestimation suivante:

54

Estimer la probabilit dun vnement

55

chantillonnage par rejet


Utilis en vue de dterminer les probabilits conditionnelles. Mthode:
Gnre des chantillons comme la mthode prcdente. Enlve tous les chantillons o les variables dvidence nont pas les bonnes valeurs. Estime la probabilit en comptant parmi les chantillons restants.
56

chantillonnage par rejet


Supposons que lon veut estimer P(Rain|Sprinkler = true) en utilisant 100 chantillons.
Dans 73 chantillons, Sprinkler = false, ils sont donc rejets. Pour les 27 chantillons o Sprinkler = true:
8 ont Rain = true 19 ont Rain = false

Donc,
57

chantillonnage par rejet


Le plus gros problme de cette mthode, cest quelle rejette beaucoup dchantillons. Elle gnre donc beaucoup dchantillons inutiles.

58

Likelihood weighting (Pondration par vraisemblence)


vite linefficacit de lchantillonnage par rejet en gnrant uniquement des chantillons consistant avec les variables dvidence. Ide pour un algo WEIGHTED-SAMPLE:

Fixer les variables dvidence chantillonner uniquement sur les autres variables Attribuer un poids aux chantillons (w) selon la probabilit que lvnement survienne en accord avec lvidence.
59

Pondration par vraisemblence(2)


Requte P(Rain|Sprinkler=true,WetGrass=true). Le processus est comme suit: on fixe w 1
chantillonner partir de P(Cloudy) =(0.5,0.5), supposons que a retourne true; Sprinkler est variable dvidence avec true. Dans ce cas, w w.P(Sprinker=true|Cloudy=true) = 0.1 chantillonner partir de P(Rain|Cloudy=true)=<0.8,0.2>, on suppose que a retourne true. WetGrass est une variable dvidence avec true. Dans ce cas, w w.P(WetGrass=true|Sprinkler=true,Rain=true) =0.1 x 0.9

60

Pondration par vraisemblance(3)


WEIGHTED-SAMPLE retourne ici lvnement [true,true,true,true] avec un poids de 0.099 qui est compt sous Rain=true. Le poids est ici faible parce que lvnement dcrit un jour nuageux, qui rend improbable le fait que larrosage soit en marche. Voir le formalisme plus complet au niveau du livre

61

Pondration par vraisemblance(4)

w=1
62

Pondration par vraisemblance(5)

w=1
63

Pondration par vraisemblance(6)

w=1
64

Pondration par vraisemblance(7)

w = 1 * 0.1
65

Pondration par vraisemblance(8)

w = 1 * 0.1
66

Pondration par vraisemblance(9)

w = 1 * 0.1
67

Pondration par vraisemblance(10)

w = 1 * 0.1 * 0.99 = 0.099


68

Utilisation de W
W Sample 1 2 3 4 Key ~b ~b ~b b ~e ~e ~e ~e ~a ~a a ~a ~j j j ~j ~m ~m m ~m Weight 0.997 0.10 0.63 0.001

In order to compute the probability of an event that is independent, such as P(Burglary=true), we sum the weight for every sample where Burglary=true and divide by the sum of all of the weights. For example, in the above data, the only sample where Burglary=true is sample 4, with weight 0.001. Therefore, P(Burglary=true) = (0.001) / (0.997 + 0.10 + 0.63 + 0.001) = 0.001 / 1.728 = 0.00058 Similarly P(a | j) = 0.63 / (0.10 + 0.63) = 0.63 / 0.73 = 0.863.
69

Pondration par vraisemblance(11)


Lestimation de la probabilit va donc tre la somme pondre des chantillons o ce qui est recherche est vrai. Plus efficace que lchantillonnage par rejet, mais lefficacit de la mthode se dgrade si le nombre de variables dvidence augmente, parce que:
la majorit des chantillons vont avoir des petits poids et, donc seulement une minorit dchantillons vont avoir pratiquement tout le poids total.

70

Infrence par MCMC


Lalgorithme Markov chain Monte Carlo (MCMC) gnre les vnements en faisant un changement alatoire lvnement prcdent. Lalgorithme maintient donc un tat courant o toutes les variables ont une valeur. Pour gnrer le prochain tat:
Choisir une variable qui nest pas une variable dvidence. La distribution de cette variable dpend des valeurs des variables dans son Markov Blanket

71

Infrence par MCMC

Avec Sprinkler = true et WetGrass = true, il y a quatre tats possibles.


72

Infrence par MCMC


Exemple: si on gnre 100 chantillons et que lon trouve:
31 o Rain = true 69 o Rain = false

Donc, lestimation de la distribution est Normalize(31,69) = (31,69).

73

Vous aimerez peut-être aussi