Réseaux bayésiens

Transcription

Réseaux bayésiens
Réseaux bayésiens
Apprentissage et reconnaissance – GIF-4101 / GIF-7005
Professeur : Christian Gagné
Semaine 2 : 14 septembre 2016
GIF-4101 / GIF-7005 (U. Laval)
Réseaux bayésiens
C. Gagné
1 / 16
Réseaux bayésiens
Réseaux bayésiens
I
I
I
Représentation visuelle des
interactions entre les variables
Intègre information sur les
probabilités conditionnelles P(Y |X )
Également appelé réseaux
probabilistes ou réseaux de
croyances
Rain
P(R)=0.4
Wet grass
P(W | R)=0.9
P(W | ~R)=0.2
Exemple du gazon humide
I
La probabilité que le gazon soit
humide s’il a plu P(W |R) ou non
P(W |¬R)
Tiré de E. Alpaydin, Introduction to Machine
Learning, 2e édition, MIT Press, 2010.
Graphe acyclique orientéFigure 3.2: Bayesian network modeling
the cause of wet grass. From: E. Alpa
GIF-4101 / GIF-7005 (U. Laval)
c
Introduction to Machine Learning. °T
Réseaux bayésiens
C. Gagné
2 / 16
Inférence de diagnostic
Avec P(R), P(W |R) et P(W |¬R),
toutes les probabilités conjointes sont
disponibles
I
I
I
P(¬R) = 1 − P(R) = 0,6
P(¬W |R) = 1 − P(W |R) = 0,1
P(¬W |¬R) = 1 − P(W |¬R) = 0,8
Rain
P(R)=0.4
Wet grass
P(W | R)=0.9
P(W | ~R)=0.2
Bayes permet de faire des diagnostics
P(R|W )
=
=
=
P(W |R) P(R)
P(W )
P(W |R) P(R)
P(W |R) P(R) + P(W |¬R) P(¬R)
0,9 × 0,4
= 0,75
0,9 × 0,4 + 0,2 × 0,6
Tiré de E. Alpaydin, Introduction to Machine
Learning, 2e édition, MIT Press, 2010.
Figure 3.2: Bayesian network modeling
the cause of wet grass. From: E. Alpa
GIF-4101 / GIF-7005 (U. Laval)
c
Introduction to Machine Learning. °T
Réseaux bayésiens
C. Gagné
3 / 16
Cas canonique 1 : connexion tête-à-queue
X
Y
Z
Connexion de X à Z :
P(X ,Y ,Z ) = P(X ) P(Y |X ) P(Z |Y )
Indépendance entre X et Z :
P(Z |X ,Y ) =
GIF-4101 / GIF-7005 (U. Laval)
P(X ,Y ,Z )
P(X ) P(Y |X ) P(Z |Y )
=
= P(Z |Y )
P(X ,Y )
P(X ) P(Y |X )
Réseaux bayésiens
C. Gagné
4 / 16
Exemple : connexion tête-à-queue
Tiré de E. Alpaydin, Introduction to Machine Learning, 2e édition, MIT Press, 2010.
P(R) = P(R|C ) P(C ) + P(R|¬C ) P(¬C ) = 0,38
P(W ) = P(W |R) P(R) + P(W |¬R) P(¬R) = 0,47
P(W |C ) = P(W |R) P(R|C ) + P(W |¬R) P(¬R|C ) = 0,76
P(C |W ) =
P(W |C ) P(C )
P(W )
GIF-4101 / GIF-7005 (U. Laval)
= 0,65
Réseaux bayésiens
C. Gagné
5 / 16
Cas canonique 2 : connexion queue-à-queue
Connexion de X à Y et Z :
P(X ,Y ,Z ) = P(X ) P(Y |X ) P(Z |X )
Indépendance entre Y et Z via X :
P(X ,Y ,Z )
P(X )
P(X ) P(Y |X ) P(Z |X )
=
P(X )
= P(Y |X ) P(Z |X )
X
P(Y ,Z |X ) =
GIF-4101 / GIF-7005 (U. Laval)
Réseaux bayésiens
Y
Z
C. Gagné
6 / 16
Exemple : connexion queue-à-queue
Tiré de E. Alpaydin, Introduction to Machine Learning, 2e édition, MIT Press, 2010.
P(C |R) =
P(R|C ) P(C )
P(R)
=
P(R|C ) P(C )
P(R|C ) P(C )+P(R|¬C ) P(¬C )
= 0,89
P(R|S) = P(R|C ) P(C |S) + P(R|¬C ) P(¬C |S)
) P(C )
) P(¬C )
= P(R|C ) P(S|C
+ P(R|¬C ) P(S|¬C
= 0,22
P(S)
P(S)
GIF-4101 / GIF-7005 (U. Laval)
Réseaux bayésiens
C. Gagné
7 / 16
Cas canonique 3 : connexion tête-à-tête
Connexion de X et Y à Z :
P(X ,Y ,Z ) = P(X ) P(Y ) P(Z |X ,Y )
Indépendance entre X et Y :
P(X ,Y ) = P(X ) P(Y )
I
La dépendance apparaı̂t lorsque l’on
connaı̂t Z
GIF-4101 / GIF-7005 (U. Laval)
Réseaux bayésiens
X
Y
Z
C. Gagné
8 / 16
Inférence prédictive
P(W |S) : gazon humide si arrosoir
est actif, sans savoir s’il a plu
P(W |S)
=
=
=
P(S)=0.2
P(R)=0.4
Sprinkler
P(W |R,S) P(R|S)
Rain
+ P(W |¬R,S) P(¬R|S)
P(W |R,S) P(R)
+ P(W |¬R,S) P(¬R)
0,95 × 0,4 + 0,9 × 0,6 = 0,92
Wet grass
P(W | R,S)=0.95
P(W | R,~S)=0.90
P(W | ~R,S)=0.90
P(W | ~R,~S)=0.10
P(R|S) = P(R) : la pluie et l’arrosoir Tiré de E. Alpaydin, Introduction to Machine
Learning,
2e sprinkler
édition, MIT Press,
sont indépendants
Figure 3.3: Rain
and
are 2010.
the two
cau
wet grass. From: E. Alpaydın. 2004. Introdu
c
Machine Learning. °The
MIT Press.
GIF-4101 / GIF-7005 (U. Laval)
Réseaux bayésiens
C. Gagné
9 / 16
Probabilité de gazon humide
P(S)=0.2
P(R)=0.4
Sprinkler
Rain
Wet grass
P(W | R,S)=0.95
P(W | R,~S)=0.90
P(W | ~R,S)=0.90
P(W | ~R,~S)=0.10
Figure 3.3:
Rain and
sprinkler
are the2etwo
causes
Tiré de E. Alpaydin,
Introduction
to Machine
Learning,
édition,
MIT of
Press, 2010.
wet grass. From: E. Alpaydın. 2004. Introduction to
P(W ) =
c+ P(W
Machine
MIT|¬R,S)
Press. P(¬R,S)
P(W
|R,S)Learning.
P(R,S)°The
+ P(W |R,¬S) P(R,¬S) + P(W |¬R,¬S) P(¬R,¬S)
=
P(W |R,S) P(R) P(S) + P(W |¬R,S) P(¬R) P(S)
=
0,95 × 0,4 × 0,2 + 0,9 × 0,6 × 0,2
+ P(W |R,¬S) P(R) P(¬S) + P(W |¬R,¬S) P(¬R) P(¬S)
+ 0,9 × 0,4 × 0,8 + 0,1 × 0,6 × 0,8
=
0,52
GIF-4101 / GIF-7005 (U. Laval)
18
Réseaux bayésiens
C. Gagné
10 / 16
Théorème de Bayes avec plusieurs conditions
P(Z |X ,Y ) =
P(X ∩Y ∩Z )
P(X ∩Y )
=
P(X ,Y ,Z )
P(X ,Y )
Développement des trois combinaisons :
X
Y
P(X ,Y ,Z ) = P(Z |X ,Y ) P(X ,Y )
= P(Y |X ,Z ) P(X ,Z )
= P(X |Y ,Z ) P(Y ,Z )
Z
Bayes, remontant X :
P(Z |X ,Y ) =
P(X |Y ,Z ) P(Y ,Z )
P(X ,Y )
X
Bayes, remontant Y :
P(Z |X ,Y ) =
GIF-4101 / GIF-7005 (U. Laval)
P(Y |X ,Z ) P(X ,Z )
P(X ,Y )
Réseaux bayésiens
Y
Z
C. Gagné
11 / 16
Explication des causes
P(S|W ) : prob. arrosoir fonctionne si
gazon humide
P(S|W )
=
=
P(W |S) P(S)
P(W )
0,92 × 0,2
= 0,35
0,52
P(S)=0.2
P(R)=0.4
Sprinkler
Rain
P(S|R,W ) : prob. arrosoir fonctionne si
gazon humide et pluie
P(S|R,W )
=
=
=
P(W |R,S) P(S|R)
P(W |R)
P(W |R,S) P(S)
Tiré de E. Alpaydin, Introduction to Machine
P(W |R)
Learning,
2e édition,
MIT Press,
2010. two cau
Figure 3.3: Rain
and
sprinkler
are the
0,21
wet grass. From: E. Alpaydın. 2004. Introduc
Explication des causes :
P(S|R,W ) ≤ P(S|W )
GIF-4101 / GIF-7005 (U. Laval)
Wet grass
P(W | R,S)=0.95
P(W | R,~S)=0.90
P(W | ~R,S)=0.90
P(W | ~R,~S)=0.10
c
Machine Learning. °The
MIT Press.
Réseaux bayésiens
C. Gagné
12 / 16
Dépendances à plusieurs niveaux
Pluie et arrosoir dépendent d’une
nouvelle variable : couverture
nuageuse
P(W |C )
=
P(W |R,S,C ) P(R,S|C )
+ P(W |¬R,S,C ) P(¬R,S|C )
P(C)=0.5
Cloudy
P(S | C)=0.1
P(S | ~C)=0.5
+ P(W |R,¬S,C ) P(R,¬S|C )
=
+ P(W |¬R,¬S,C ) P(¬R,¬S|C )
P(R | C)=0.8
P(R | ~C)=0.1
Sprinkler
Rain
P(W |R,S) P(R|C ) P(S|C )
+ P(W |¬R,S) P(¬R|C ) P(S|C )
+ P(W |R,¬S) P(R|C ) P(¬S|C )
+ P(W |¬R,¬S) P(¬R|C ) P(¬S|C )
Indépendance des variables
I
I
Wet grass
P(W | R,S)=0.95
P(W | R,~S)=0.90
P(W | ~R,S)=0.90
P(W | ~R,~S)=0.10
Tiré de E. Alpaydin, Introduction to Machine
P(W |R,S,C ) = P(W |R,S)
P(R,S|C ) = P(R|C ) P(S|C )
édition, MIT
2010.
Figure 3.4: Learning,
If it is 2e
cloudy,
it isPress,
likely
that it wi
and we will not use the sprinkler. From: E. A
c
2004. Introduction to Machine Learning. °T
Press.
GIF-4101 / GIF-7005 (U. Laval)
Réseaux bayésiens
C. Gagné
13 / 16
Un chat sur le toit
Complexification supplémentaire : un
chat sur le toit
I
P(C)=0.5
Le chat n’aime pas la pluie
Cloudy
L’indépendance des variables permet
de limiter les calculs
P(S | C)=0.1
P(S | ~C)=0.5
P(R | C)=0.8
P(R | ~C)=0.1
Sprinkler
P(C ,S,R,W ,F ) =
P(C ) P(S|C ) P(R|C ) P(W |S,R) P(F |R)
Dans le cas général :
Rain
P(W | R,S)=0.95
P(W | R,~S)=0.90
P(W | ~R,S)=0.90
P(W | ~R,~S)=0.10
P(F | R)=0.1
P(F | ~R)=0.7
Wet grass
P(X1 , . . . ,Xd ) =
d
Y
i=1
P(Xi |parents(Xi ))
rooF
Tiré de E. Alpaydin, Introduction to Machine
Figure 3.5:
Rain 1re
notédition,
only makes
the grass
Learning,
MIT Press,
2004. wet but
also disturbs the cat who normally makes noise on
the roof. From: E. Alpaydın. 2004. Introduction to
c
Machine Learning. °The
MIT Press.
GIF-4101 / GIF-7005 (U. Laval)
Réseaux bayésiens
C. Gagné
14 / 16
Un chat sur le toit (exemples au tableau)
P(C)=0.5
Cloudy
P(F |S) : probabilité
d’un chat sur le toit si
l’arrosoir fonctionne ?
P(F |W ) : probabilité
d’un chat sur le toit si
le gazon est humide ?
P(S | C)=0.1
P(S | ~C)=0.5
P(R | C)=0.8
P(R | ~C)=0.1
Sprinkler
Rain
P(W | R,S)=0.95
P(W | R,~S)=0.90
P(W | ~R,S)=0.90
P(W | ~R,~S)=0.10
P(F | R)=0.1
P(F | ~R)=0.7
Wet grass
rooF
Tiré de E. Alpaydin, Introduction to Machine
Learning,
édition,makes
MIT Press,the
2004. grass wet but
Figure 3.5: Rain
not1reonly
also disturbs the cat who normally makes noise on
GIF-4101 / GIF-7005 (U. Laval)
the roof.
From:
Réseaux
bayésiensE. Alpaydın. 2004. Introduction
C. Gagné
15 / 16to
Forces et difficultés
Points forts des réseaux bayésiens
I
I
I
Exigent uniquement les probabilités conditionnelles des dépendances
directes entre les variables
Permettent une inférence tenant en compte les dépendances indirectes
Traitements algorithmiques efficaces
F
F
Belief propagation : algorithme pour faire l’inférence avec des réseaux
en arbre
Junction tree : transformer des graphes acycliques orientés en arbre
Difficultées avec les réseaux bayésiens
I
I
On doit connaı̂tre assez bien le phénomène pour donner les
dépendances directes entre les variables (expertise du domaine)
S’appliquent à des variables discrètes
F
F
Avec des variables continues on doit avoir les p(x|Ci )
Solution : méthodes paramétriques, vues la semaine prochaine
GIF-4101 / GIF-7005 (U. Laval)
Réseaux bayésiens
C. Gagné
16 / 16