Master 2 IAD – UPMC Ann´ee 2008/2009
Graphes de facteurs, Loopy Belief Propagation et
´
Energies libre
Module : Initiation `
a la recherche
´
Etudiant : Chopin Morgan — Encadrant : Pierre-Henri Wuillemin
dyruel@gmail.com pierre-henri.wui[email protected]
19 Janvier 2009
Table des mati`eres
1 Introduction 3
2 Les graphes de facteurs 4
2.1 Graphes de facteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.2 L’algorithme somme-produit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2.1 Calcul efficace des marginales . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2.2 Algorithme somme-produit . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.2.3 Algorithme somme-produit it´eratif . . . . . . . . . . . . . . . . . . . . . . 10
3 Le point de vue de la physique statistique 14
3.1 La notion d’´energie libre dans un graphe de facteurs . . . . . . . . . . . . . . . . 14
3.2 Probl`eme d’optimisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.3 L’approximation d’´energie libre (( r´egion-bas´ee )) . . . . . . . . . . . . . . . . . . . 16
3.4 Approximation de Bethe et algorithme somme-produit it´eratif . . . . . . . . . . . 19
4 Apports th´eoriques 20
4.1 Analyse des r´esultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.2 Vers la g´en´eralisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.2.1 La m´ethode du graphe de egions . . . . . . . . . . . . . . . . . . . . . . . 21
4.2.2 L’algorithme Generalized Belief Propagation . . . . . . . . . . . . . . . . 22
5 Conclusion 24
2
1 Introduction
En m´edecine, un diagnostique a pour but de trouver la maladie associ´ee aux symptˆomes d’un
patient. Par exemple, un m´edecin observe que son patient souffre de naus´ees. Il suppose alors que
ce dernier a soit une gastro-ent´erite, soit une insolation, soit une appendicite avec une certaine
(( certitude ))(que l’on mod´elisera par des lois de probabilit´e par la suite) pour chacune de ces
maladies. Supposons maintenant que le m´edecin vient dˆetre inform´e que le patient a assist´e `a
un match de tennis `a l’air libre, en plein soleil et sans protections. Cette derni`ere information
l’oblige `a r´eviser son diagnostique, et `a penser plutˆot que le patient souffre d’une insolation. On
peut dire ´egalement que le m´edecin est en train d’inf´erer la maladie en connaissance de certaines
donn´ees (naus´ees, exposition au soleil). C’est dans le but de formaliser cette approche que les
r´eseaux bay´esiens ont vu le jour.
Un r´eseau baesien permet de mod´eliser les interactions entre les diff´erents ´etats d’un syst`eme
`a l’aide de variables al´eatoires et d’un graphe orient´e, qui repr´esente la mani`ere dont s’influence
les variables [5], [6]. L’inf´erence dans un r´eseau baesien consiste alors `a calculer les probabilit´es
marginales de toutes les variables sachant que certaines ont pris une valeur fixe. Dans notre
exemple du diagnostique m´edical, pour chaque symptˆome et maladie, on a une variable al´eatoire
binaire qui nous indique si oui ou non la maladie ou le symome est pr´esent. Comme on sait que
le patient a des naus´ees et a subi une exposition au soleil, on instancie les variables associ´ees
`a la valeur vrai. L’inf´erence nous donnerait alors une certaine distribution de probabilit´e (ou
marginale) sur la variable associ´ee `a l’insolation, avec une valeur de probabilit´e ´elev´ee pour la
valeur vrai.
Le premier algorithme permettant de r´ealiser des inf´erences a ´et´e propos´e par Pearl [6]
dans les ann´ees 80 : il s’agissait de l’algorithme belief propagation ou BP, et il ´etait limit´e aux
r´eseaux bay´esiens sans boucles. Cet algorithme a depuis ´et´e ´etendu aux eseaux quelconques
pour donner naissance `a l’algorithme de conditionnement, et d’autres ont vu le jour, comme
l’algorithme de l’arbre de jonction. Toutefois, il se peut que ces algorithmes d´epassent un temps
de calcul raisonnable en raison de la nature NP-difficile du probl`eme d’inf´erence. On pr´ef`ere
alors se tourner vers un algorithme approch´e (Gibbs, MCMC, etc...). Un tel algorithme peut
ˆetre d´eduit de l’algorithme BP en relaxant la contrainte de r´eseaux sans cycles. On obtient alors
l’algorithme d’approximation it´eratif : loopy belief propagation ou LBP qui sera l’objet de notre
´etude. En effet, cet algorithme permet d’obtenir, le plus souvent, de tr`es bonnes approximations
des marginales sans r´eelles justifications th´eoriques [4]. Plus pr´ecis`ement, on ne sait pas pr´edire
s’il convergera, ni dire, dans le cas o`u il convergerait, si les marginales approxim´ees sont correctes.
Un exemple d’application de l’algorithme LBP se trouve en th´eorie des codes. Plus pr´ecis`ement,
et comme on le verra plus tard, l’algorithme de Turbo-d´ecodage consiste `a inf´erer le con-
tenu original d’un message connaissant une version parasit´ee de celui-ci. Il est alors possible
de moeliser ce probl`eme sous la forme d’un r´eseau baesien, dont on constate l’existence de
cycles. Si on applique l’algorithme LBP sur ce r´eseau, alors on montre [3] que l’on obtient un
algorithme ´equivalent `a l’algorithme de Turbo-d´ecodage. Cet algorithme est d’ailleurs consid´er´e
par les acteurs du domaine, comme une v´eritable r´evolution dans les codes correcteurs d’erreurs
`a cause de ses excellentes performances. Cet exemple met donc en ´evidence l’efficacie que peut
avoir l’algorithme LBP.
Dans ce travail, on s’interesse `a l’article fondateur de Kschishang et al. (2000) [2] sur les
3
graphes de facteurs et l’algorithme somme-produit. Nous verrons alors leur interˆet dans la mise
en place d’une th´eorie [7] permettant d’apporter un ´eclairage nouveau dans la compr´ehension
de l’algorithme LBP. Dans un premier temps, nous allons montrer que cet algorithme est un cas
particulier de l’algorithme somme-produit it´eratif dans un graphe de facteurs. Par la suite, nous
allons voir qu’il est ´equivalent au calcul de l’´energie libre dans un syst`eme thermodynamique clos
`a temp´erature et volume constant. Enfin, nous verrons que cette ´equivalence permet de d´eduire
un algorithme qui g´en´eralise l’algorithme LBP : la generalized belief propagation (GBP).
2 Les graphes de facteurs
Dans cette partie, il sera question d’introduire la th´eorie g´en´erale des graphes de facteurs [2],
qui sont une g´en´eralisation des mod`eles graphiques et donc, en particulier, des r´eseaux bay´esiens.
2.1 Graphes de facteurs
De mani`ere g´en´erale, on consid`ere une fonction gde plusieurs variables :
g:A1×A2×... ×AnR
(x1, ..., xn)7→ g(x1, ..., xn)
o`u les Aisont des ensembles d´enombrables quelconques. Le produit cart´esien S=QiAiforme
l’espace des configurations. L’ensemble d’arriv´ee Rest en g´en´eral un semi-anneau1que l’on
notera (R, +,×,0+,1×). Le fait que Rposs`ede une telle structure alg´ebrique conf`ere aux graphes
de facteurs leur capacit´e `a g´en´eraliser un grand nombre d’algorithmes (Belief propagation, Al-
gorithme de Viterbi, Turbo-d´ecodage, Transform´ee de fourrier rapide, etc...).
`
A partir de g, on d´efinit alors les nfonctions marginales gi:AiR. Une fonction marginale
giest obtenue en sommant sur toutes les variables de gsauf sur xi. Par la suite, et pour une
´ecriture plus claire, on utilisera l’op´erateur not-sum efinit dans l’article [2]. Il permet d’indiquer
sur quelles variables il ne faut pas sommer. Autrement dit :
D´efinition – La i-`eme fonction marginale giassoci´ee `a gest d´efinie par :
gi(xi) := X
∼{xi}
g(x1, ..., xn) (1)
Dans le cadre de notre probl`eme central de l’inf´erence Baesienne, nous verrons que la
fonction g(x1, ..., xn) sera en fait une distribution de probabilit´e p(x1, ..., xn), et les fonctions
marginales gi(xi) correspondront aux probabilit´es marginales p(xi). De plus, les op´erations + et
×seront, respectivement, les op´erations d’addition et de multiplication dans R.
1Un semi-anneau Rest la structure alg`ebrique (R, +,×,0+,1×) telle que :
(R, +,0+) est un mono¨ıde commutatif.
(R, ×,1×) est un mono¨ıde.
× est distributif par rapport `a + .
• ∀xR,x×0+= 0+×x= 0+.
Un mono¨ıde est une structure alg`ebrique consistant en un ensemble muni d’une op´eration associative et d’un
´el´ement neutre. Autrement dit, c’est un groupe sans inverse.
4
Pour situer le probl`eme du calcul de ces fonctions marginales, supposons que les Aiont tous
q´el´ements et qu’il y a nvariables. On voit donc que pour calculer une seule fonction gi(xi),
le nombre d’additions `a effectuer est en O(qn1). De plus, la fonction ga une taille de qn, ce
qui est trop grand pour ˆetre stoce en emoire. Tout le probl`eme consiste alors `a mener les
calculs le plus efficacement possible en exploitant la factorisation de gen produit de fonctions
plus (( simples )).
Avant d’aller plus loin, nous devons introduire une notation suppl´ementaire. Soit J
{1, ..., n}, on d´esigne par xJle |J|-uplet obtenu `a partir du n-uplet x= (x1, ..., xn), en ne
conservant que les variables dont les indices sont dans J.
`
A partir de maintenant, on suppose que la fonction gse d´ecompose en un produit de fonctions,
autrement dit :
∃Q ⊂ P({1, ..., n}) tel que xS,g(x) = Y
J∈Q
fJ(xJ) (2)
o`u fJd´esigne une fonction `a valeur dans R. La notation P({1, ..., n}) signifie l’ensemble des
sous-ensembles de {1, ..., n}. Grˆace `a cette factorisation, on peut repr´esenter la fonction g`a l’aide
d’un graphe dit de facteurs
D´efinition – Un graphe de facteurs est un graphe biparti non-orient´e qui a un nœud variable
pour chaque variable xi, un nœud facteur pour chaque fonction locale fJ, et une arˆete reliant
un nœud variable xi`a un nœud facteur fJlorsque xiest un argument de fJ.
Exemple – Voici un exemple de graphe de facteurs :
x1x2x3
fAfBfC
On a pris Q={{1,3},{2,3},{3}}, d’o`u g(x1, x2, x3) = f13(x1, x3)f23(x2, x3)f3(x3). Par souci
de lisibilit´e, on pr´ef´erera indicer les fonctions fpar les lettres capitales A, B, C, .... Dans cet
exemple, on aurait : g(x1, x2, x3) = fA(x1, x3)fB(x2, x3)fC(x3).
Nous allons voir maintenant quelques (( instanciations ))possibles des graphes de facteurs.
Exemple (R´eseaux Bay´esiens) On se place dans le semi-anneau (R,+,×,0,1). Soient le
r´eseau baesien et le graphe de facteurs suivant :
I G A
N
I G A
N
fIfGfA
fN
5
1 / 25 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !